Skip to content

Add skip-auto-smoke opt-out to create-release.yml dispatch - #14911

Merged
cderv merged 1 commit into
mainfrom
ci/skip-auto-smoke-on-dispatch
Sep 18, 2026
Merged

cderv merged 1 commit into
mainfrom
ci/skip-auto-smoke-on-dispatch

Conversation

@cderv

@cderv cderv commented Sep 18, 2026

Copy link
Copy Markdown
Member

create-release.yml's manual dispatch always fans out into the full built-version smoke/Playwright/feature-format-matrix suite once the build completes, via a workflow_run listener in test-smokes-built.yml. That's fine for a full release build, but a manual dispatch to check a packaging tweak or run a partial build doesn't always need the downstream suite, and there was no way to opt out short of a schedule-only gate that would have removed the always-test behavior for every manual dispatch, not just the ones that want to skip it.

Adds a skip-auto-smoke boolean input (default false) to create-release.yml's workflow_dispatch.

The Runs API doesn't expose workflow_dispatch inputs on a completed run, so test-smokes-built.yml's resolve-nightly job can't read the flag off github.event.workflow_run directly. create-release.yml instead encodes it in its run-name (Build Installers [skip-auto-smoke]), which the completed workflow_run payload carries as display_title. resolve-nightly reads that and short-circuits has-linux/has-windows/has-mac to false, so every nightly leg no-ops through its existing gate. The workflows: ["Build Installers"] trigger filter matches the workflow's name, not its run-name, so the custom title doesn't affect whether workflow_run fires.

An earlier version of this used a marker artifact uploaded alongside the build artifacts instead. That was dropped: it left durable state for the artifact's full retention period, which would have silently suppressed a later manual re-test of that same run via test-smokes-built.yml's own run-id input. The run-name approach is scoped to the workflow_run event only, so an explicit manual re-test still runs.

Test Plan

  • Live dispatch with skip-auto-smoke=true confirms the run title becomes Build Installers [skip-auto-smoke]
  • Confirm resolve-nightly actually short-circuits all nightly legs after this merges — workflow_run always executes the listening workflow's default-branch copy, so this can't be exercised pre-merge

A manual create-release dispatch always fans out into the full built-version
smoke/Playwright/ff-matrix suite via workflow_run once it completes (D1/D7/D9
in llm-docs/built-version-testing-architecture.md). Sometimes that's not
needed (packaging tweak check, partial build) and there was no way to opt out
short of a schedule-only gate that would have killed the D7 flow entirely.

The Runs API doesn't expose workflow_dispatch inputs on a completed run, so
test-smokes-built.yml can't read the flag off github.event.workflow_run
directly. Instead, create-release.yml encodes the flag in its run-name, which
the completed workflow_run payload carries as display_title -- no extra API
call needed, and no artifact upload/download side effect either (an earlier
version of this used a marker artifact; dropped because it left durable state
that would silently suppress a later manual re-test of that same run).

Complementary to the sibling quarto-cli-po9o.9 issue, which gates the same
trigger by branch -- kept as a separate, independent mechanism.
@posit-snyk-bot

posit-snyk-bot commented Sep 18, 2026

Copy link
Copy Markdown
Collaborator

Snyk checks have passed. No issues have been found so far.

Status Scan Engine Critical High Medium Low Total (0)
Open Source Security 0 0 0 0 0 issues
Licenses 0 0 0 0 0 issues

💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse.

@cderv
cderv merged commit 35508ff into main Sep 18, 2026
24 of 66 checks passed
@cderv
cderv deleted the ci/skip-auto-smoke-on-dispatch branch September 18, 2026 13:28
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.

2 participants