-
Notifications
You must be signed in to change notification settings - Fork 585
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
Introduce pyroscope packaging via nfpm #2424
Conversation
dd550c5
to
fd580ee
Compare
fd580ee
to
074aac7
Compare
@wilfriedroset thank you for your contribution. I think packaging deb/rpm will help adoption of pyroscope, so it is a welcome addition. I will need to get my head around a bit more, esp. how Loki/Mimir are handling the GPG part and the will setup the secrets appropriately. |
I'm planning to provide a puppet module similar to the one we provide for mimir as well |
After reading up a bit, I think the best way forward would be using nfpm directly via goreleaser (we use goreleaser for our releases already). I think that will make things even a bit easier. I have tried those changes and they produce rpms/debs that work at least in the latest debian/fedora: wilfriedroset#1 |
Signed-off-by: Wilfried Roset <wilfriedroset@users.noreply.github.com>
6446f45
to
068adc7
Compare
Thank you @simonswine your suggestion is a real improvement. I will try to backport it to mimir and loki 🤔 |
Yeah goreleaser really makes things fairly easy, don't know to what extend they are using it at Mimir, Loki. Feel free to tag me on a PR there as well 🙂 |
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.
LGTM
thank you for the merge @simonswine |
I was thinking of releasing a new release, but only once we have #2230 and have fixed a few known bugs in main 🙂 Let me check if I can 1.0.0 rebuild easily with this |
* Introduce pyroscope packaging via nfpm Signed-off-by: Wilfried Roset <wilfriedroset@users.noreply.github.com> * Integrate nfpm into goreleaser pipeline --------- Signed-off-by: Wilfried Roset <wilfriedroset@users.noreply.github.com> Co-authored-by: Christian Simon <simon@swine.de>
I have attached the RPMs/DEBs to the v1.0.0 release https://github.com/grafana/pyroscope/releases/tag/v1.0.0 |
Does this trigger the publication of the packages on the Grafana repositories? |
@wilfriedroset there is a separate GL internal PR necessary that just merged. Now the packages should be picked up by the cronjob that will run at midnight UTC> |
This PR introduces the packaging (deb/rpm) via nfpm similarly to what is done for mimir and loki.
Here is a step by step self test of my PR made on a debian 11:
prerequisites
Install docker - as root (optional)
Install nodejs - as root
Install golang - as root
wget -O /tmp/go1.19.13.linux-amd64.tar.gz https://go.dev/dl/go1.19.13.linux-amd64.tar.gz rm -rf /usr/local/go && tar -C /usr/local -xzf /tmp/go1.19.13.linux-amd64.tar.gz
Setup envvar
Start hacking
build
release
For the sake of dev purpose we will run
gorelease
manually instead ofmake release
to add couple flagsGenerate a gpg key for signing purpose
package
test installation