fix(release): tell gh which repository, or the release publishes empty - #18
Merged
Conversation
Three `gh release` calls ran without `-R`, in two jobs that have no `actions/checkout`. Without a checkout there is no git remote to infer the repository from, so gh dies with "fatal: not a git repository". This is not hypothetical. It is what happened to v0.3.0: the draft-hold step failed, `build` and `publish` were skipped as a result, and the tag was published carrying no assets at all. It is still sitting at /releases/latest with nothing to download, so Colony's installer has nothing to fetch. Colony hit the identical bug and paid for it with an empty v0.10.0; its workflow now carries the warning in a comment. Grape had the same shape and had never been corrected, and the other two calls would have failed the same way had the first not failed before reaching them.
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.
Three
gh releasecalls ran without-R, in two jobs (release-pleaseandpublish) that have noactions/checkout. Without a checkout there is no git remote forghto infer the repository from, and it dies withfatal: not a git repository.This already happened. v0.3.0 is published right now with zero assets: the draft-hold step failed,
buildandpublishwere skipped as a consequence, and the tag went out empty. It sits at/releases/latest, so Colony's installer has nothing to fetch.Colony hit the identical bug and paid for it with an empty v0.10.0 — its workflow now carries the warning in a comment. Grape had the same shape and had never been corrected. The other two calls would have failed the same way had the first not failed before reaching them.
The cause is upstream of this repository: the shared template every Colony program copies has the same three calls. Fixed there in Project-Colony-Resources#4, which also ports Colony's recovery path — Grape has no
workflow_dispatch, so today a release that fails after its tag exists cannot be finished at all.Getting v0.3.0 its assets
It cannot be re-run: release-please emits
release_createdonly once per release, and Grape has no dispatch input to fall back on. The next release is what fixes it in practice — this commit is afix:, so release-please will open a v0.3.1 PR, and with-Rin place that one will actually build, upload and publish. v0.3.0 stays as an empty historical tag.