Meshery Schemas Release
Use this skill when the task is to cut, publish, or verify a release for meshery/schemas.
Golden Rule
Do not publish a repository release until both automation stages have finished on master:
generate-artifacts-from-schemas.ymlcompleted successfully and finished self-committing the generated Go and TypeScript bundles back tomaster.release-drafter.ymlcompleted after thatmasterupdate and refreshed the draft release.
Publishing before both stages finish can ship a release whose generated artifacts or drafted notes lag the repository head.
Required Release Order
- Push or merge the intended changes to
master. - Wait for
generate-artifacts-from-schemas.ymlto finish.- It runs
make build. - It generates the Go and TypeScript artifacts that belong in the repo.
- It normally self-commits them to
masterwith the messageGenerate build artifacts from schemas.
- It runs
- Wait for
release-drafter.ymlto run again against that updatedmasterhead and refresh the draft release. - Review the existing draft release if needed.
- Publish the existing draft release.
- After publish, let
publish-schemas.ymlrun:- it updates
schemas/base_cloud.ymlandschemas/base_meshery.yml - it calls
publish-npm-package.yml, which performs the npm publish - it notifies downstream repositories and publishes OpenAPI docs
- it updates
Required Checks
Use gh CLI. Do not use gh release create.
gh run list --workflow generate-artifacts-from-schemas.yml --branch master --limit 1
gh api repos/meshery/schemas/commits/master --jq '.commit.message'
gh run list --workflow release-drafter.yml --branch master --limit 1
gh release list --limit 1
Only publish when all of the following are true:
- the latest
generate-artifacts-from-schemas.ymlrun iscompletedwithsuccess - the artifact-generation self-commit has landed on
master, or the workflow shows there were no generated changes to commit - the latest
release-drafter.ymlrun iscompletedwithsuccessfor the currentmasterhead - the target release already exists as a draft
Publish the draft release with:
gh release edit <TAG> --draft=false
Never Do This
- Never use
gh release create - Never run
npm publishmanually;publish-schemas.ymldoes that throughpublish-npm-package.yml - Never publish while
generate-artifacts-from-schemas.ymlis still running or failing - Never publish while
release-drafter.ymlis still running or failing - Never publish a draft that has not been refreshed after the generated-artifact self-commit
Failure Handling
- If
generate-artifacts-from-schemas.ymlfails, inspect the run logs and stop. No release should be published. - If artifact generation succeeds but the expected self-commit is missing, confirm from the workflow output whether it had nothing to commit before proceeding.
- If
release-drafter.ymlhas not refreshed the draft after the latestmasterupdate, wait or re-run that workflow; do not publish until it finishes. - If no draft release exists after
release-drafter.ymlsucceeds, investigate the workflow/configuration instead of creating a release manually.