Skip to content

IBX-11778: Updated GitHub Actions workflows to org standard - #28

Open
alongosz wants to merge 8 commits into
4.6from
ibx-11778-gha-workflows-update
Open

IBX-11778: Updated GitHub Actions workflows to org standard#28
alongosz wants to merge 8 commits into
4.6from
ibx-11778-gha-workflows-update

Conversation

@alongosz

@alongosz alongosz commented Sep 6, 2026

Copy link
Copy Markdown
Member
🎫 Issue IBX-11778

Related PRs:

Description:

Part of the fleet-wide GHA workflow standardization (wave 9; sample: ibexa/taxonomy#444). Changes:

  • Updated third-party actions to their latest versions (MAJOR bumps included) and standardized runners to ubuntu-26.04.
  • Removed the deprecated pr-assign.yaml workflow.
  • Added missing skeleton workflows: backend-ci.yaml — D6 backport of the 5.0 Backend CI, which on 5.0 consists of a cs-fix job and a rector job only. The cs-fix job was backported with the full standard applied (Backend CI name, bare workflow_dispatch, version-glob push trigger, checkout v7, ubuntu-26.04, shared composer-install with explicit php-version, pipefail guard) and PHP 7.4 added to its matrix; the rector job was not (rector is not used on 4.6).
  • Added the check-cs composer script (@fix-cs --dry-run, mirroring 5.0) in a separate [Composer] commit — 4.6 only had fix-cs, so the backported job would otherwise fail. First run of this job on 4.6: watch for pre-existing code-style findings.
  • Dropped the unused phpunit/phpunit ^6.4 || ^7.0 dev requirement in a second [Composer] commit: the 4.6 branch has no tests, and every phpunit 6/7 release is blocked by Composer's security-advisory check (GHSA-vvj3-c3rp-c85p), which made the backported cs-fix job unable to install anything. 5.0 already has no phpunit requirement.
  • First-ever code-style run on 4.6 found four files violating single_blank_line_before_namespace (ibexa/code-style ^1.0 resolves to 1.3); fixed in a separate commit.
  • The backported cs-fix job runs on PHP 8.1 instead of 5.0's 8.3: on 4.6 ibexa/code-style ^1.0 resolves to a php-cs-fixer that supports PHP 8.2 at most.

For QA:

Verify CI is green.

Documentation:

No documentation required.

🤖 Generated with Claude Code

- Removed the deprecated pr-assign.yaml workflow
- All remaining workflows delegate to ibexa/gh-workflows reusable
  workflows tracked at @main, so no action bumps, runner or trigger
  changes were needed
- backend-ci.yaml: backport of the 5.0 Backend CI (D6) with the full
  standard applied — Backend CI name, bare workflow_dispatch,
  version-glob push trigger, checkout v7, ubuntu-26.04, shared
  composer-install with explicit php-version, pipefail guard; PHP 7.4
  added to the cs-fix matrix; the 5.0 rector job was not backported
  (rector is not used on 4.6)
The backported cs-fix job runs `composer run-script check-cs`; 4.6 only
had `fix-cs`, so mirror 5.0's `check-cs` (fix-cs in dry-run mode).
The 4.6 branch has no tests, yet require-dev pinned phpunit ^6.4 || ^7.0,
every release of which is now blocked by Composer's security-advisory
check (GHSA-vvj3-c3rp-c85p). That made the backported cs-fix job unable
to install dependencies at all. 5.0 already has no phpunit requirement.
First run of check-cs on the 4.6 branch (ibexa/code-style ^1.0 now
resolves to 1.3, which enforces single_blank_line_before_namespace);
four files needed a blank line after the file docblock.
The 5.0 job uses PHP 8.3, but on 4.6 ibexa/code-style ^1.0 resolves to
a php-cs-fixer build that supports PHP 8.2 at most. 8.1 matches the
cs-fix jobs of the other 4.6 packages.
The backported cs-fix job ran on both 7.4 and 8.1. php-cs-fixer can
report different results per PHP version, so a matrix makes the check
ambiguous. Kept 7.4, the lowest version this branch supports, which is
the php-cs-fixer recommendation.
@sonarqubecloud

sonarqubecloud Bot commented Sep 8, 2026

Copy link
Copy Markdown

Quality Gate Passed Quality Gate passed

Issues
0 New issues
0 Accepted issues

Measures
0 Security Hotspots
No data about Coverage
0.0% Duplication on New Code

See analysis details on SonarQube Cloud

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant