I do not understand why goreleaser does not want to do anything when it finds a non-semantic tag on the current commit. #5833
Replies: 1 comment
-
|
That being said...
GoReleaser has no way to know that it previously built with that exact commit.
The spec doesn't say anything about prefixes, other than That said, it is possible to handle it with the monorepo feature: https://goreleaser.com/customization/monorepo/ To your point, though, maybe we could allow some "pre-processor" on the tag, so to remove the prefix etc. EDIT: see #5846
You're right in this, it should ignore that check if |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Everything is in the title.
I think I know this is done on purpose because I did some research before posting (hope i did not miss anything obvious):
#806 relates to this problem. Folks there said that this may be reworked on in #782 but these are long closed now and the issue still persist.
In my case I was happily building another team's software for them... I'm using goreleaser following their recommendation...
I do not really release things (not with go releaser anyway)... I'm only building cross platform binaries and creating zip/targz archives...
So I'm using the
--snapshotflag with goreleaser...Then I added a release tag:
module-bla-bla-v1.0.0...What have I done ! now it just fails, even locally !
error=failed to parse tag 'module-bla-bla-v1.0.0' as semver: Invalid Semantic VersionI did not really understand why gorelease NEEDs a git repo... for everything... that's another issue... I could live with this.
But now, I strongly believe that using
--snapshotshould skip all kind of checks related to version management since a local build does not relate to version management. At least if the checks cannot be skipped goreleaser should provide sane defaults and go on with these.I also believe that these checks are insane in this configuration because they introduce a regression in people pipelines:
Last but not least... I AM using semantic versioning... its just that my tag has a prefix that goreleaser is not able to deal with .... and go releaser fails because it find itself incapable of extracting the semantics...
My point is that:
If
--snapshotdoes not mean what it is supposed to mean...... and supposing that goreleaser really needs to extract semantic data from a tag if it finds a tag at all, then it should either:
or
I'm obviously advocating for the second option ;)
Does anyone know how to force a
goreleaser release --clean --snapshotbuild+archive locally when an unrecognized tag has been set... In particular when this tag is totally useless for the build+archiving tasks ?Beta Was this translation helpful? Give feedback.
All reactions