From ef361a0f9cd63cdaa3803ffb9f12aeae587d141d Mon Sep 17 00:00:00 2001 From: Andrew Longosz Date: Fri, 4 Sep 2026 22:53:00 +0200 Subject: [PATCH 1/3] [GHA] Updated GitHub Actions workflows to latest versions and standards - Renamed backend-ci workflow to "Backend CI" and added a bare workflow_dispatch trigger - Bumped actions/checkout to v7 and actions/setup-node to v7 - Replaced direct ramsey/composer-install steps with ibexa/gh-workflows/actions/composer-install@main - Repinned smoench/deptrac-action from master branch to 1.0.2 tag - Added set -euo pipefail guard to the piped check-cs | cs2pr step - Standardized runners to ubuntu-26.04 - Dropped stale main entry from push triggers in backend-ci, browser-tests and frontend-ci workflows - Replaced legacy zendesk-based release workflow with the skeleton release workflow calling reusable release_bundle.yml - Deleted pr-assign workflow Co-Authored-By: Claude Fable 5 --- .github/workflows/backend-ci.yaml | 38 ++++++++++++++---------- .github/workflows/browser-tests.yaml | 1 - .github/workflows/frontend-ci.yaml | 7 ++--- .github/workflows/pr-assign.yaml | 10 ------- .github/workflows/release.yaml | 43 ++++------------------------ 5 files changed, 31 insertions(+), 68 deletions(-) delete mode 100644 .github/workflows/pr-assign.yaml diff --git a/.github/workflows/backend-ci.yaml b/.github/workflows/backend-ci.yaml index 23d1ac1..759205f 100644 --- a/.github/workflows/backend-ci.yaml +++ b/.github/workflows/backend-ci.yaml @@ -1,22 +1,22 @@ -name: Backend build +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-24.04" + runs-on: "ubuntu-26.04" strategy: matrix: php: - '8.1' steps: - - uses: actions/checkout@v6 + - uses: actions/checkout@v7 - name: Setup PHP Action uses: shivammathur/setup-php@v2 @@ -26,24 +26,30 @@ jobs: extensions: 'pdo_sqlite, gd' tools: cs2pr - - uses: ramsey/composer-install@v2 + - uses: ibexa/gh-workflows/actions/composer-install@main with: - dependency-versions: "highest" + 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 deptrac: name: Deptrac - runs-on: "ubuntu-24.04" + runs-on: "ubuntu-26.04" steps: - - uses: actions/checkout@v6 + - uses: actions/checkout@v7 - name: Deptrac - uses: smoench/deptrac-action@master + uses: smoench/deptrac-action@1.0.2 tests: name: Tests - runs-on: "ubuntu-24.04" + runs-on: "ubuntu-26.04" timeout-minutes: 10 strategy: @@ -55,7 +61,7 @@ jobs: - '8.4' steps: - - uses: actions/checkout@v6 + - uses: actions/checkout@v7 - name: Setup PHP Action uses: shivammathur/setup-php@v2 @@ -65,10 +71,12 @@ jobs: extensions: pdo_sqlite, gd tools: cs2pr - - uses: "ramsey/composer-install@v1" + - uses: ibexa/gh-workflows/actions/composer-install@main with: - dependency-versions: "highest" - composer-options: "--prefer-dist --no-progress --no-suggest" + 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: Setup problem matchers for PHPUnit run: echo "::add-matcher::${{ runner.tool_cache }}/phpunit.json" diff --git a/.github/workflows/browser-tests.yaml b/.github/workflows/browser-tests.yaml index 75782b2..76611d9 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/frontend-ci.yaml b/.github/workflows/frontend-ci.yaml index 02e3d7b..e2d55dc 100644 --- a/.github/workflows/frontend-ci.yaml +++ b/.github/workflows/frontend-ci.yaml @@ -5,7 +5,6 @@ on: paths: - "**.js" branches: - - main - '[0-9]+.[0-9]+' pull_request: paths: @@ -14,12 +13,12 @@ on: jobs: frontend-test: name: Frontend build test - runs-on: "ubuntu-24.04" + runs-on: "ubuntu-26.04" timeout-minutes: 5 steps: - - uses: actions/checkout@v2 - - uses: actions/setup-node@v2 + - uses: actions/checkout@v7 + - uses: actions/setup-node@v7 with: node-version: '14' - run: yarn install diff --git a/.github/workflows/pr-assign.yaml b/.github/workflows/pr-assign.yaml deleted file mode 100644 index ea9165c..0000000 --- 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 }} diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 4a9fe36..beedd0c 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -1,4 +1,4 @@ -name: Automatic Changelog Generator for tag +name: Call Automatic Changelog Generator for tag Workflow on: push: @@ -7,40 +7,7 @@ on: - '!v*-alpha*' jobs: - release: - runs-on: "ubuntu-24.04" - - steps: - - uses: actions/checkout@master - - name: Set Environment - run: | - echo "BUILD_TAG=${GITHUB_REF/refs\/tags\//}" >> $GITHUB_ENV - - name: Get previous release tag based on type - id: prevrelease - uses: ibexa/version-logic-action@master - with: - currentTag: ${{ env.BUILD_TAG }} - - - name: Generate changelog - id: changelog - uses: ibexa/changelog-generator-action@v2 - with: - github_token: ${{ secrets.GITHUB_TOKEN }} - jira_token: ${{ secrets.JIRA_TOKEN }} - currentTag: ${{ env.BUILD_TAG }} - previousTag: ${{ steps.prevrelease.outputs.previousTag }} - - - name: Print the changelog - run: echo "$CHANGELOG" - env: - CHANGELOG: ${{ steps.changelog.outputs.changelog }} - - - name: Create Release - id: create_release - uses: zendesk/action-create-release@v1 - with: - tag_name: ${{ env.BUILD_TAG }} - body: | - ${{ steps.changelog.outputs.changelog }} - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + create_release_for_tag: + uses: ibexa/gh-workflows/.github/workflows/release_bundle.yml@main + secrets: + JIRA_TOKEN: ${{ secrets.JIRA_TOKEN }} From 45dde38a72216008e7c4601f082fc372ac71be87 Mon Sep 17 00:00:00 2001 From: Andrew Longosz Date: Sat, 5 Sep 2026 19:33:31 +0200 Subject: [PATCH 2/3] [GHA] 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); callers should state the version. --- .github/workflows/backend-ci.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/backend-ci.yaml b/.github/workflows/backend-ci.yaml index 759205f..4eb24f1 100644 --- a/.github/workflows/backend-ci.yaml +++ b/.github/workflows/backend-ci.yaml @@ -28,6 +28,7 @@ jobs: - 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 }} @@ -73,6 +74,7 @@ jobs: - 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 }} From 63b683de87cdca3c53850b39b733e53b2f5084bf Mon Sep 17 00:00:00 2001 From: Andrew Longosz Date: Wed, 9 Sep 2026 12:34:35 +0200 Subject: [PATCH 3/3] [GHA] Dropped setup-php steps made redundant by composer-install ibexa/gh-workflows/actions/composer-install@main runs shivammathur/setup-php itself, passing php-version, coverage, extensions and tools: cs2pr, so a job that also declares its own setup-php step configures PHP twice over. Removed 2 such step(s). Each one set exactly what the action already applies, so nothing had to move. --- .github/workflows/backend-ci.yaml | 16 ---------------- 1 file changed, 16 deletions(-) diff --git a/.github/workflows/backend-ci.yaml b/.github/workflows/backend-ci.yaml index 4eb24f1..f550881 100644 --- a/.github/workflows/backend-ci.yaml +++ b/.github/workflows/backend-ci.yaml @@ -18,14 +18,6 @@ jobs: steps: - uses: actions/checkout@v7 - - name: Setup PHP Action - uses: shivammathur/setup-php@v2 - with: - php-version: ${{ matrix.php }} - coverage: none - extensions: 'pdo_sqlite, gd' - tools: cs2pr - - uses: ibexa/gh-workflows/actions/composer-install@main with: php-version: ${{ matrix.php }} @@ -64,14 +56,6 @@ jobs: steps: - uses: actions/checkout@v7 - - name: Setup PHP Action - uses: shivammathur/setup-php@v2 - with: - php-version: ${{ matrix.php }} - coverage: none - extensions: pdo_sqlite, gd - tools: cs2pr - - uses: ibexa/gh-workflows/actions/composer-install@main with: php-version: ${{ matrix.php }}