-
Notifications
You must be signed in to change notification settings - Fork 876
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ci: add sdist with vendor for release workflow #797
Conversation
Pull Request Test Coverage Report for Build 383Details
💛 - Coveralls |
Thank you for the PR! ❤️ |
ping? |
I'm so sorry, I totally messed up and didn't get to reviewing this PR. |
ping? |
My sincere apologies, I never got to reviewing this and should have updated this PR sooner. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good!
Few minor changes and then step 1 should be ready to go.
Thanks for your patience with this!
I created the I got a question re: Right now I create a new release by clicking "Draft a new release" on the releases page, pick a tag and title, and then fill out the details, done. |
Signed-off-by: Arthur Zamarin <[email protected]>
Great, thanks.
Yes, it would be better to use a git CLI tool to push those tags. You would be also be able to GPG sign the release, which is a great way to give confidence for consumers in the release was indeed by you. |
|
||
on: | ||
push: | ||
tags: [tst-v*, v*] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please only tst-v*
for now, I don't want this flow to interfere (or break) the real release flow. We'll cut this over when we have confirmed that this is working and ready for prime time.
OK, this is the first part for #793, the simplest one. This job will create a useful for distributions source tarball, which contains the code &
go mod vendor
run inside.Required setup in configuration:
release
(this is the name I used here, you can choose another one and I'll modify it here)Required reviewers
and add yourself in there. When you create a new tag, you'll receive an email where you need to approve the run. It helps with accidental tag push before everything is pushed :)Workflow explanation:
v
, for examplev1.51.0
.go mod vendor
.tar.gz
file containing a directory namedredis_exporter-v${version}
, under which all content is found includingvendor/
dir.I've tested this workflow on my fork, it generated this file redis_exporter-0.0.9999.tar.gz (yes, I used quite weird version)
My next step
Add another job to this workflow, which would build the binaries, and add them as assets to the same draft release.