Skip to content

[CI] Sync stabilized workflows from 2026.x - #1994

Closed
berfinyuksel wants to merge 1 commit into
2026.2from
ci/sync-workflows-2026.2
Closed

berfinyuksel wants to merge 1 commit into
2026.2from
ci/sync-workflows-2026.2

Conversation

@berfinyuksel

Copy link
Copy Markdown
Contributor

Part of pimcore/product-management#1305 — sync the stabilized default-branch workflows to the maintenance branches.

Why

Since #1943 renamed the new-* workflows to their final names on 2026.x only, PHPStan has not run on any PR targeting this branch since July 10: pull_request_target resolves workflow files from the default branch, where new-static-analysis.yaml no longer exists — and the renamed static-analysis.yaml (plain pull_request trigger, resolved from the merge ref) did not exist on this branch. PHPStan failures only surfaced after merge on the push run (which is what #1992 had to clean up).

Changes

  • Rename new-static-analysis.yamlstatic-analysis.yaml and switch to the pull_request trigger — PHPStan runs on PRs targeting this branch again
  • Rename new-docs.ymldocs.yml (same pattern, incl. dropped DOCS_GENERATOR_ACCESS_TOKEN pass no longer declared by the reusable workflow)
  • Sync copilot-setup-steps.yml (step-scoped COMPOSER_AUTH instead of global auth.json / SSH key)
  • cla.yaml needed no change here (already identical)
  • Add pr-guardrails.yml, pr-policy.yml, repo-guardrails.yml

Deliberately not synced

  • codeception.yaml / api-test.yaml — untouched; already byte-identical to 2026.x (the matrix is derived at runtime from composer.json + the central matrix config, so no branch-specific matrix is overwritten here)
  • symfony8-compat.yaml — dev-line-only forward-compat gate, added directly on 2026.x (Aug 5); running it on a maintenance line would add an irrelevant/failing required job. Shout if it should be included after all.

After this and the sibling 2025.4 PR (#1993) merge, .github/workflows is identical across 2025.4 / 2026.2 / 2026.x (except symfony8-compat.yaml), so future forward-merges stay clean.

🤖 Generated with Claude Code

Since the new-* -> final-name workflow rename (#1943) only landed on the
default branch, static analysis stopped running on PRs targeting this
branch: pull_request_target resolves workflow files from the default
branch, where new-static-analysis.yaml no longer exists, and the renamed
static-analysis.yaml (pull_request trigger) did not exist here yet.

- Rename new-static-analysis.yaml -> static-analysis.yaml and switch to
  the pull_request trigger, so PHPStan runs on PRs again
- Rename new-docs.yml -> docs.yml (same pattern)
- Sync copilot-setup-steps.yml (step-scoped COMPOSER_AUTH)
- Add pr-guardrails.yml, pr-policy.yml, repo-guardrails.yml

codeception.yaml and api-test.yaml are untouched: already identical to
2026.x, the matrix is derived at runtime from composer.json and the
central matrix config. symfony8-compat.yaml is intentionally not synced
(dev-line-only forward-compat gate).

Refs pimcore/product-management#1305

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Copilot AI balanced review requested due to automatic review settings August 14, 2026 08:53
@sonarqubecloud

Copy link
Copy Markdown

@berfinyuksel berfinyuksel added this to the 2026.2.6 milestone Aug 14, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Synchronizes stabilized CI workflows from 2026.x into the maintenance branch.

Changes:

  • Restores PR-triggered PHPStan and documentation workflows.
  • Secures and updates Copilot dependency setup.
  • Adds PR, repository, and milestone guardrails.

Reviewed changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
.github/workflows/static-analysis.yaml Enables PHPStan for pull requests.
.github/workflows/docs.yml Renames and updates documentation CI.
.github/workflows/copilot-setup-steps.yml Updates setup and scopes Composer credentials.
.github/workflows/pr-guardrails.yml Adds centralized PR guardrails.
.github/workflows/pr-policy.yml Enforces milestone assignment.
.github/workflows/repo-guardrails.yml Adds issue-level repository guardrails.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment on lines +3 to +6
# Thin, generic trigger. All guardrail logic lives in the central collection
# pimcore/workflows-collection-public. This file names no guardrails and no
# secrets (secrets: inherit), so it is identical across every repo and never
# needs editing when a guardrail or token is added/removed there.
@berfinyuksel

Copy link
Copy Markdown
Contributor Author

Superseded: these changes reached 2026.2 via the forward-merge 2025.4 → 2026.2 (3bfd7de) after #1993 was merged, and 2026.x via 3953fea — per the no-extra-PRs-for-upstream-merges flow. Workflow parity verified: .github/workflows identical across 2025.4 / 2026.2 / 2026.x except symfony8-compat.yaml (intentionally dev-line-only).

@berfinyuksel berfinyuksel removed this from the 2026.2.6 milestone Aug 14, 2026
@github-actions github-actions Bot locked and limited conversation to collaborators Aug 14, 2026
@berfinyuksel
berfinyuksel deleted the ci/sync-workflows-2026.2 branch August 14, 2026 09:08
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants