Skip to content

Document GitHub Actions Node runtime lifecycle - #6373

Draft
kjanat wants to merge 2 commits into
SchemaStore:masterfrom
kjanat:github-action-node-runtime-lifecycle
Draft

kjanat wants to merge 2 commits into
SchemaStore:masterfrom
kjanat:github-action-node-runtime-lifecycle

Conversation

@kjanat

@kjanat kjanat commented Sep 18, 2026

Copy link
Copy Markdown
Contributor

The github-action schema currently accepts node12, node16, node20, and node24 as equivalent runs.using enum values, even though their runtime lifecycle states differ on GitHub Actions runners.

Describe each runtime individually so schema-aware editors can surface the distinction:

  • node12: removed from the Actions runner
  • node16: removed from the Actions runner
  • node20: deprecated, with removal announced for September 23, 2026
  • node24: available runtime

The values remain schema-valid. Removed and deprecated runtimes are marked with deprecated and deprecationMessage rather than being rejected, since GitHub still recognizes these metadata values and runner/version behavior can differ across GitHub-hosted, self-hosted, and GHES environments.

Each lifecycle annotation links to GitHub's corresponding changelog announcement. The descriptions intentionally avoid recommending a specific successor runtime so they do not need updating whenever GitHub adds a newer Node runtime.

Also allow deprecationMessage as a SchemaStore extension for github-action.json.

Tested locally with yaml-language-server; deprecated runtimes receive a diagnostic and lifecycle information is shown on hover.

image

...adding some tests. draft.

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