From bb78e163c6dd7a864b1a302293169b58b36e5506 Mon Sep 17 00:00:00 2001 From: Andrew Longosz Date: Sun, 6 Sep 2026 19:51:25 +0200 Subject: [PATCH] [GHA] Updated GitHub Actions workflows to latest versions and standards - Renamed the CI workflow to Backend CI and added a bare workflow_dispatch trigger (IBX-12062 PoC follow-up, without the Slack notification parts) - Updated actions/checkout to v7 - Standardized runners to ubuntu-26.04 - Dropped non-existent main branch from push triggers of the Backend CI and Browser tests workflows - Removed the deprecated pr-assign.yaml workflow - Passed the PHP version to the composer-install action explicitly; the implicit matrix.php fallback inside the action is kept only for backwards compatibility (IBX-11907, gh-workflows#115) - Guarded the code style check against masked pipe failures with set -euo pipefail; without it the check-cs exit code is swallowed by the pipe into cs2pr (IBX-11853, bundle-generator#45) Co-Authored-By: Claude Fable 5.1 --- .github/workflows/backend-ci.yaml | 24 +++++++++++++++--------- .github/workflows/browser-tests.yaml | 1 - .github/workflows/pr-assign.yaml | 10 ---------- 3 files changed, 15 insertions(+), 20 deletions(-) delete mode 100644 .github/workflows/pr-assign.yaml diff --git a/.github/workflows/backend-ci.yaml b/.github/workflows/backend-ci.yaml index e38ba7c1..c035ff87 100644 --- a/.github/workflows/backend-ci.yaml +++ b/.github/workflows/backend-ci.yaml @@ -1,38 +1,42 @@ -name: CI +name: Backend CI on: push: branches: - - main - '[0-9]+.[0-9]+' pull_request: ~ + workflow_dispatch: ~ jobs: cs-fix: name: Run code style check - runs-on: "ubuntu-22.04" + runs-on: "ubuntu-26.04" strategy: matrix: php: - '8.1' steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v7 - uses: ibexa/gh-workflows/actions/setup-composer-root-version@main - uses: ibexa/gh-workflows/actions/composer-install@main with: + php-version: ${{ matrix.php }} gh-client-id: ${{ secrets.AUTOMATION_CLIENT_ID }} gh-client-secret: ${{ secrets.AUTOMATION_CLIENT_SECRET }} satis-network-key: ${{ secrets.SATIS_NETWORK_KEY }} satis-network-token: ${{ secrets.SATIS_NETWORK_TOKEN }} - name: Run code style check - run: composer run-script check-cs -- --format=checkstyle | cs2pr + shell: bash + run: | + set -euo pipefail + composer run-script check-cs -- --format=checkstyle | cs2pr tests: name: Unit tests & PHPStan static analysis - runs-on: "ubuntu-22.04" + runs-on: "ubuntu-26.04" timeout-minutes: 15 strategy: @@ -44,12 +48,13 @@ jobs: - '8.4' steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v7 - uses: ibexa/gh-workflows/actions/setup-composer-root-version@main - uses: ibexa/gh-workflows/actions/composer-install@main with: + php-version: ${{ matrix.php }} gh-client-id: ${{ secrets.AUTOMATION_CLIENT_ID }} gh-client-secret: ${{ secrets.AUTOMATION_CLIENT_SECRET }} satis-network-key: ${{ secrets.SATIS_NETWORK_KEY }} @@ -66,7 +71,7 @@ jobs: integration-tests: name: Runs integration tests - runs-on: "ubuntu-22.04" + runs-on: "ubuntu-26.04" needs: tests timeout-minutes: 15 @@ -79,12 +84,13 @@ jobs: - '8.4' steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v7 - uses: ibexa/gh-workflows/actions/setup-composer-root-version@main - uses: ibexa/gh-workflows/actions/composer-install@main with: + php-version: ${{ matrix.php }} gh-client-id: ${{ secrets.AUTOMATION_CLIENT_ID }} gh-client-secret: ${{ secrets.AUTOMATION_CLIENT_SECRET }} satis-network-key: ${{ secrets.SATIS_NETWORK_KEY }} diff --git a/.github/workflows/browser-tests.yaml b/.github/workflows/browser-tests.yaml index 01ba58c0..08135684 100644 --- a/.github/workflows/browser-tests.yaml +++ b/.github/workflows/browser-tests.yaml @@ -3,7 +3,6 @@ name: Browser tests on: push: branches: - - main - '[0-9]+.[0-9]+' pull_request: ~ diff --git a/.github/workflows/pr-assign.yaml b/.github/workflows/pr-assign.yaml deleted file mode 100644 index 302423e3..00000000 --- a/.github/workflows/pr-assign.yaml +++ /dev/null @@ -1,10 +0,0 @@ -name: Assign Pull Request to maintainers - -on: - pull_request_target: - -jobs: - assign: - uses: ibexa/gh-workflows/.github/workflows/pr-assign.yml@main - secrets: - robot-token: ${{ secrets.EZROBOT_PAT }}