Skip to content

[v3-2-test] Restore AMD scheduled canary, split README badges, fix Slack-state collision (#66662)#66665

Merged
potiuk merged 1 commit into
apache:v3-2-testfrom
potiuk:backport-022e35d-v3-2-test
May 10, 2026
Merged

[v3-2-test] Restore AMD scheduled canary, split README badges, fix Slack-state collision (#66662)#66665
potiuk merged 1 commit into
apache:v3-2-testfrom
potiuk:backport-022e35d-v3-2-test

Conversation

@potiuk

@potiuk potiuk commented May 10, 2026

Copy link
Copy Markdown
Member

Summary

Backport of #66662 (merged 2026-05-10, commit `022e35d`) to `v3-2-test`. Stacks cleanly on top of #66664 (the #66348 backport that already landed).

Cherry-pick was a clean `-x` apply — no conflicts, no manual fixes. See the source PR for full motivation.

Test plan

  • Clean `-x` cherry-pick on top of latest `v3-2-test`
  • Wait for CI on `v3-2-test`

🤖 Generated with Claude Code (Opus 4.7, 1M context)

…llision (apache#66662)

PR apache#66348 split the combined ci-amd-arm.yml into per-platform wrappers and
intentionally deferred re-adding a schedule trigger to ci-amd.yml ('No
schedule for now; ARM keeps the canary slot. Add a schedule: block here
if/when AMD should also act as a scheduled canary'). As a result:

- The AMD 'Tests (AMD)' badge on the README pointed at a workflow that
  hadn't run on main since 2025-10-25 (it now only runs on PRs and
  release-branch pushes), so the badge was stale.
- The notify-slack job at the bottom of ci-amd.yml is gated on
  github.event_name == 'schedule' and was therefore dead code: there
  was no schedule trigger left to fire it.
- main on AMD had no scheduled CI monitor at all (ci-notification.yml
  only watches v3-2-test x ci-amd.yml, and the comment there assumes
  ARM is reported by its own notify-slack).

This change:

1. Restores the previous AMD canary cron in ci-amd.yml at minute :58 of
   the same hours ARM uses, so the two scheduled runs don't compete for
   runners at exactly the same minute.
2. Splits the README build-status row for main into two badges (AMD and
   ARM), drops the obsolete 2.x row (still using the legacy ci.yml), and
   keeps 3.x AMD-only (ARM has no v3-2-test schedule). Click-throughs go
   to the workflow page rather than the catch-all /actions URL.
3. Disambiguates the slack-state artifact names that ci-amd.yml,
   ci-arm.yml, and ci-image-checks.yml share. Before this PR the latent
   collision did not bite (AMD's notify-slack never fired); restoring
   the AMD schedule activates it. Each platform now writes its own
   slack-state-{tests,inventory}-<branch>-{amd,arm} artifact so the
   de-dup tracker in scripts/ci/slack_notification_state.py keeps
   independent state per platform.
4. Updates scripts/ci/prek/check_ci_workflows_in_sync.py to allow the
   new AMD-only schedule block and the per-platform artifact-name
   suffix as documented divergences.

generated/PYPI_README.md is regenerated automatically by the
generate-pypi-readme prek hook to mirror README.md.

(cherry picked from commit 022e35d)
@potiuk
potiuk merged commit db595da into apache:v3-2-test May 10, 2026
8 checks passed
@potiuk
potiuk deleted the backport-022e35d-v3-2-test branch May 10, 2026 18:29
@vatsrahul1001 vatsrahul1001 added the changelog:skip Changes that should be skipped from the changelog (CI, tests, etc..) label May 18, 2026
@vatsrahul1001 vatsrahul1001 added this to the Airflow 3.2.2 milestone May 18, 2026
vatsrahul1001 pushed a commit that referenced this pull request May 20, 2026
…llision (#66662) (#66665)

PR #66348 split the combined ci-amd-arm.yml into per-platform wrappers and
intentionally deferred re-adding a schedule trigger to ci-amd.yml ('No
schedule for now; ARM keeps the canary slot. Add a schedule: block here
if/when AMD should also act as a scheduled canary'). As a result:

- The AMD 'Tests (AMD)' badge on the README pointed at a workflow that
  hadn't run on main since 2025-10-25 (it now only runs on PRs and
  release-branch pushes), so the badge was stale.
- The notify-slack job at the bottom of ci-amd.yml is gated on
  github.event_name == 'schedule' and was therefore dead code: there
  was no schedule trigger left to fire it.
- main on AMD had no scheduled CI monitor at all (ci-notification.yml
  only watches v3-2-test x ci-amd.yml, and the comment there assumes
  ARM is reported by its own notify-slack).

This change:

1. Restores the previous AMD canary cron in ci-amd.yml at minute :58 of
   the same hours ARM uses, so the two scheduled runs don't compete for
   runners at exactly the same minute.
2. Splits the README build-status row for main into two badges (AMD and
   ARM), drops the obsolete 2.x row (still using the legacy ci.yml), and
   keeps 3.x AMD-only (ARM has no v3-2-test schedule). Click-throughs go
   to the workflow page rather than the catch-all /actions URL.
3. Disambiguates the slack-state artifact names that ci-amd.yml,
   ci-arm.yml, and ci-image-checks.yml share. Before this PR the latent
   collision did not bite (AMD's notify-slack never fired); restoring
   the AMD schedule activates it. Each platform now writes its own
   slack-state-{tests,inventory}-<branch>-{amd,arm} artifact so the
   de-dup tracker in scripts/ci/slack_notification_state.py keeps
   independent state per platform.
4. Updates scripts/ci/prek/check_ci_workflows_in_sync.py to allow the
   new AMD-only schedule block and the per-platform artifact-name
   suffix as documented divergences.

generated/PYPI_README.md is regenerated automatically by the
generate-pypi-readme prek hook to mirror README.md.

(cherry picked from commit 022e35d)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:dev-tools changelog:skip Changes that should be skipped from the changelog (CI, tests, etc..)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants