name: Weekly bash beautify

on:
  schedule:
    - cron: "0 0 * * 0"
  workflow_dispatch:

concurrency:
  group: lint-bash-${{ github.head_ref || github.ref }}
  cancel-in-progress: true

jobs:
  lint-bash:
    if: github.repository_owner == 'alexbelgium'
    name: Lint Bash Scripts
    runs-on: ubuntu-latest

    steps:
      - name: Checkout Git Repository
        uses: actions/checkout@v4

      - name: Set up Python Environment
        uses: actions/setup-python@v4
        with:
          python-version: "3.11"

      - name: Install Beautysh
        run: pip install beautysh

      - name: Run Beautysh
        run: |
          find . -name '*.sh' -print0 | xargs -0 beautysh --indent-size 4
          shopt -s globstar nullglob
          if compgen -G "**/*.sh" > /dev/null; then
            beautysh -- **/*.sh --indent-size 4 --check
          fi
          shopt -u globstar nullglob  

      - name: Create New Pull Request If Needed
        uses: peter-evans/create-pull-request@v5
        with:
          title: "Github bot : script beautyshied"
          branch-suffix: timestamp
          commit-message: "Github bot : script beautyshied"
