Skip to content

publish-nightly-release: dashboard should update even when release already exists - #70044

Merged
dwoz merged 1 commit into
saltstack:masterfrom
dwoz:nightlies-dashboard-fix-idempotent-gate
Aug 14, 2026
Merged

publish-nightly-release: dashboard should update even when release already exists#70044
dwoz merged 1 commit into
saltstack:masterfrom
dwoz:nightlies-dashboard-fix-idempotent-gate

Conversation

@dwoz

@dwoz dwoz commented Aug 14, 2026

Copy link
Copy Markdown
Contributor

What does this PR do?

Follow-up to #70040. publish-nightly-release.yml's dashboard steps inherited if: steps.check.outputs.already-exists != 'true' — the same gate that skips release-create when a release for the day/branch already exists. That's wrong for the dashboard: the dashboard should reflect every nightly.yml completion, and the generator already handles same-tag entries by replacing them.

Observed on saltstack/salt-nightlies

Publish-nightly-release run 31784972054 fired after nightly.yml 31781506651 completed. But nightly-2026-08-14-3008.x had been created earlier in the day by a natural cron cycle, so the release-create step correctly skipped — and every subsequent step (including dashboard generation) skipped too. Result: run exited in 9s, gh-pages unchanged.

Fix

Only create release with all assets isn't idempotent — creating an existing release fails, so it correctly needs the gate. All other steps (download artifacts, list assets, download junit, extract salt version, checkout gh-pages, regenerate dashboard, commit + push) can safely re-run:

  • Downloads overwrite the same directory
  • List-assets regenerates /tmp/assets.txt
  • Dashboard generator's history logic: history = [e for e in history if e.get("tag") != args.tag]; history.append(entry)

Drop the gate from every non-release step. Small change (7 lines).

What issues does this PR fix or reference?

Follow-up to #70040. No linked issue.

Merge requirements satisfied?

  • Docs — N/A.
  • Changelog — none added.
  • Tests — no automated tests.

Commits signed with GPG?

No.

Only `create release with all assets` isn't idempotent — creating an
existing release fails. All other steps (download artifacts, list assets,
download junit, extract salt version, checkout gh-pages, regenerate
dashboard, commit + push) can safely re-run against an existing release,
and the dashboard generator specifically handles same-tag entries by
replacing them.

Prior gate made the dashboard silently no-op whenever a release already
existed (observed: publish-nightly-release run 31784972054 exited in 9s
because nightly-2026-08-14-3008.x had been created earlier in the day,
so no dashboard was ever generated).

Keep the gate on release-create only; drop from every other step.
@dwoz
dwoz requested a review from a team as a code owner August 14, 2026 08:48
@dwoz
dwoz merged commit cdb7240 into saltstack:master Aug 14, 2026
141 of 176 checks passed
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