From 2e19b5ab586c364fb04f755647c8b1e7d80eeabe Mon Sep 17 00:00:00 2001 From: Simon L Date: Sat, 3 Jun 2023 20:24:27 +0200 Subject: [PATCH] only run workflows when they are actually needed Signed-off-by: Simon L --- .github/workflows/docker-lint.yml | 4 ++ .github/workflows/json-validator.yml | 4 ++ .github/workflows/lint-php.yml | 6 ++- .../workflows/php-deprecation-detector.yml | 4 ++ .github/workflows/psalm-analysis.yml | 28 ----------- .github/workflows/psalm.yml | 49 +++++++++++++++++++ .github/workflows/shellcheck.yml | 6 ++- .github/workflows/twig-lint.yml | 4 ++ 8 files changed, 74 insertions(+), 31 deletions(-) delete mode 100644 .github/workflows/psalm-analysis.yml create mode 100644 .github/workflows/psalm.yml diff --git a/.github/workflows/docker-lint.yml b/.github/workflows/docker-lint.yml index f85818eb..00549c4f 100644 --- a/.github/workflows/docker-lint.yml +++ b/.github/workflows/docker-lint.yml @@ -2,9 +2,13 @@ name: Docker Lint on: pull_request: + paths: + - 'Containers/**' push: branches: - main + paths: + - 'Containers/**' permissions: contents: read diff --git a/.github/workflows/json-validator.yml b/.github/workflows/json-validator.yml index eaf03553..c2c10b1c 100644 --- a/.github/workflows/json-validator.yml +++ b/.github/workflows/json-validator.yml @@ -2,9 +2,13 @@ name: Json Validator on: pull_request: + paths: + - '**.json' push: branches: - main + paths: + - '**.json' jobs: psalm: diff --git a/.github/workflows/lint-php.yml b/.github/workflows/lint-php.yml index bbace7f3..1f55fb06 100644 --- a/.github/workflows/lint-php.yml +++ b/.github/workflows/lint-php.yml @@ -7,11 +7,13 @@ name: Lint php on: pull_request: + paths: + - 'php/**' push: branches: - main - - master - - stable* + paths: + - 'php/**' permissions: contents: read diff --git a/.github/workflows/php-deprecation-detector.yml b/.github/workflows/php-deprecation-detector.yml index 7e4c625f..42cc6bc2 100644 --- a/.github/workflows/php-deprecation-detector.yml +++ b/.github/workflows/php-deprecation-detector.yml @@ -3,9 +3,13 @@ name: PHP Deprecation Detector on: pull_request: + paths: + - 'php/**' push: branches: - main + paths: + - 'php/**' jobs: psalm: diff --git a/.github/workflows/psalm-analysis.yml b/.github/workflows/psalm-analysis.yml deleted file mode 100644 index 6d367a52..00000000 --- a/.github/workflows/psalm-analysis.yml +++ /dev/null @@ -1,28 +0,0 @@ -name: Psalm Analysis - -on: - pull_request: - push: - branches: - - main - -jobs: - psalm: - name: Psalm - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - - name: Set up php8.2 - uses: shivammathur/setup-php@v2 - with: - php-version: 8.2 - extensions: apcu - coverage: none - - - name: Run script - run: | - set -x - cd php - composer global require vimeo/psalm --prefer-dist --no-progress --dev - composer install - composer run psalm diff --git a/.github/workflows/psalm.yml b/.github/workflows/psalm.yml new file mode 100644 index 00000000..1d0a17bb --- /dev/null +++ b/.github/workflows/psalm.yml @@ -0,0 +1,49 @@ +# This workflow is provided via the organization template repository +# +# https://github.com/nextcloud/.github +# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization + +name: Static analysis + +on: + pull_request: + paths: + - 'php/**' + push: + branches: + - main + paths: + - 'php/**' + +concurrency: + group: psalm-${{ github.head_ref || github.run_id }} + cancel-in-progress: true + +jobs: + static-analysis: + runs-on: ubuntu-latest + + name: Nextcloud + steps: + - name: Checkout + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 + + - name: Set up php + uses: shivammathur/setup-php@c5fc0d8281aba02c7fda07d3a70cc5371548067d # v2 + with: + php-version: 8.2 + extensions: apcu + coverage: none + ini-file: development + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + - name: Install dependencies + run: | + set -x + cd php + composer global require vimeo/psalm --prefer-dist --no-progress --dev + composer install + + - name: Run coding standards check + run: composer run psalm diff --git a/.github/workflows/shellcheck.yml b/.github/workflows/shellcheck.yml index 3af43bb1..32848506 100644 --- a/.github/workflows/shellcheck.yml +++ b/.github/workflows/shellcheck.yml @@ -2,9 +2,13 @@ name: Shellcheck on: pull_request: + paths: + - '**.sh' push: branches: - main + paths: + - '**.sh' jobs: shellcheck: @@ -13,7 +17,7 @@ jobs: steps: - uses: actions/checkout@v3 - name: Run Shellcheck - uses: ludeeus/action-shellcheck@2.0.0 + uses: ludeeus/action-shellcheck@v2 with: check_together: 'yes' env: diff --git a/.github/workflows/twig-lint.yml b/.github/workflows/twig-lint.yml index 43506fc1..27f09e47 100644 --- a/.github/workflows/twig-lint.yml +++ b/.github/workflows/twig-lint.yml @@ -2,9 +2,13 @@ name: Twig Lint on: pull_request: + paths: + - '**.twig' push: branches: - main + paths: + - '**.twig' permissions: contents: read