ci(release): manual trigger + always run GPR alongside NPM#837
Merged
Conversation
Make the release workflow more resilient by ensuring GPR publishes stay consistent with NPM, even when the NPM job fails partway, and add a manual trigger so missed publishes can be recovered without crafting throwaway changesets. Changes: - Add workflow_dispatch trigger to the workflow - Skip the validate job on workflow_dispatch (main is already validated) - Run gpr-release whenever NPM published, NPM failed, or the run was manually dispatched. Cancellation still propagates. pnpm changeset publish is idempotent against the registry, so running it during recovery or after a partial NPM failure is safe — versions already on GPR are skipped.
|
Contributor
size-limit report 📦
|
13 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Follow-up to #836. Makes the GPR release more resilient and adds a manual escape hatch.
What changes
workflow_dispatch:trigger added torelease.ymlso the release pipeline can be manually fired from the Actions tab.validatejob is skipped onworkflow_dispatch(main is already proven good — saves time during recovery).gpr-releaseno longer skips when its sibling fails. New gate:Why
npm-releaseerrors midway,gpr-releaseis skipped via theneeds:cascade — so the two registries can drift. We saw exactly this happen in the run that motivated fix(ci): scope GPR registry to @lottiefiles for publish only #836.gpr-releaseagainst the currentmainwithout authoring a fake changeset just to flippublished == 'true'.Behavior matrix
published='true'published='false'workflow_dispatchpnpm changeset publishis idempotent against the registry — packages whose version already exists on GPR are silently skipped. So running onworkflow_dispatchor after a partial npm failure is safe.Recovery plan
After this merges, trigger the workflow manually from the Actions tab to publish
0.50.6(and any earlier missed versions) to GPR — no fresh changeset needed.Package(s) affected
@lottiefiles/dotlottie-web(core)@lottiefiles/dotlottie-react@lottiefiles/dotlottie-vue@lottiefiles/dotlottie-svelte@lottiefiles/dotlottie-solid@lottiefiles/dotlottie-wc(CI-only change — no package code touched, no changeset needed.)
Type of change
Checklist
actionlintclean; condition matrix walked)