BUILD: Speed up GoReleaser in PR builds with --single-target --skip=before#4167
Open
cafferata wants to merge 2 commits intoStackExchange:mainfrom
Open
BUILD: Speed up GoReleaser in PR builds with --single-target --skip=before#4167cafferata wants to merge 2 commits intoStackExchange:mainfrom
cafferata wants to merge 2 commits intoStackExchange:mainfrom
Conversation
…for the runner's OS/arch (linux/amd64), skipping the other 7 targets.
…ndant `go fmt`, `go mod tidy`, `go generate hooks`.
Collaborator
Author
|
Results are in from run 23105587930:
|
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.
The main bottleneck in the PR CI/CD pipeline is the
goreleaser build --snapshotstep, which takes ~8m19s out of the total ~10m45s (run 23057743439).Two things make it slow:
go fmt ./...,go mod tidy,go generate ./...) run every time, but are redundant in CI -- formatting/tidy should already be done, andgo generateis covered by the stringer install step.This PR adds
--single-targetand--skip=beforeto the snapshot build, which should bring the GoReleaser step from ~8 minutes down to ~1 minute. The full release build (on tag) remains unchanged.Fixes #4165