Skip to content
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

[Feature Request] Binary packages for releases #89

Open
sbraz opened this issue Aug 31, 2021 · 10 comments
Open

[Feature Request] Binary packages for releases #89

sbraz opened this issue Aug 31, 2021 · 10 comments
Assignees

Comments

@sbraz
Copy link
Contributor

sbraz commented Aug 31, 2021

🚀 Feature Request

Describe the solution you'd like

Hi Davide,
Have you considered using GitHub's CI or something similar to provide Debian/Fedora packages along with the source for each release?

@madrisan
Copy link
Owner

Hi Louis. I thought about it but never tried to implement such a feature. In particular I do not know how and where to stock the final artifacts.
The packages at the moment can be only generated locally, with docker or podman, using the commands make -C packages ....

@sbraz
Copy link
Contributor Author

sbraz commented Aug 31, 2021

Yes I did eventually manage to generate a Debian package :)

As for where to store: you can use releases for this, I see you already include tarballs there.

The trickiest part would be the build, then. If I'm reading this correctly, you can use Docker with GH actions, which seems pretty neat.

@sbraz
Copy link
Contributor Author

sbraz commented Aug 31, 2021

Actually the deb I created with Buster doesn't contain the binaries. I don't really know what happened. The build never worked from the git repo, I got:

make --no-print-directory distdir-am
NEWS not updated; not releasing

I eventually managed to run make -C packages debian-buster from the v29 release tarball but the resulting deb doesn't contan the binaries :/

@madrisan
Copy link
Owner

The make produces several .deb files because in v29 iwe switch to a multi-packages setup. Maybe you just checked the meta-package? It should be the only one that does not contain any binary.

@sbraz
Copy link
Contributor Author

sbraz commented Aug 31, 2021

I was looking at nagios-plugins-linux-memory_28-2_amd64.deb (no idea why it is named 28 because I built it from v29) and it did not contain the binary.
A build from a clean git clone also fails: multibuild.sh: error: no such file: /tmp/nagios-plugins-linux/packages/docker-shell-helpers/docker-shell-helpers.sh.

Am I missing something here?

@madrisan
Copy link
Owner

I did not include the packages because of the high number. Several distributions are supported and each in a few different versions. If you have any idea for improving the situation I'll be glad to discuss and implement it

@madrisan
Copy link
Owner

I was looking at nagios-plugins-linux-memory_28-2_amd64.deb (no idea why it is named 28 because I built it from v29) and it did not contain the binary.
A build from a clean git clone also fails: multibuild.sh: error: no such file: /tmp/nagios-plugins-linux/packages/docker-shell-helpers/docker-shell-helpers.sh.

Am I missing something here?

I think you forgot the git clone --recursive flag, as explained in the README.

@sbraz
Copy link
Contributor Author

sbraz commented Aug 31, 2021

I think you forgot the git clone --recursive flag, as explained in the README.

I completely missed the submodule, my bad.

Still, there is something weird going on: the build resulted in e.g. nagios-plugins-linux-nbprocs_28-2_amd64.deb and said file does not contain the binary:

drwxr-xr-x root/root         0 2021-07-11 12:44 ./
drwxr-xr-x root/root         0 2021-07-11 12:44 ./usr/
drwxr-xr-x root/root         0 2021-07-11 12:44 ./usr/share/
drwxr-xr-x root/root         0 2021-07-11 12:44 ./usr/share/doc/
drwxr-xr-x root/root         0 2021-07-11 12:44 ./usr/share/doc/nagios-plugins-linux-nbprocs/
-rw-r--r-- root/root      1838 2021-07-11 12:44 ./usr/share/doc/nagios-plugins-linux-nbprocs/changelog.Debian.gz
-rw-r--r-- root/root        92 2021-07-11 12:44 ./usr/share/doc/nagios-plugins-linux-nbprocs/changelog.gz
-rw-r--r-- root/root      1089 2021-07-11 12:44 ./usr/share/doc/nagios-plugins-linux-nbprocs/copyright

The build process also required manual input:

*** info: creating the origin package nagios-plugins-linux_29.orig.tar.xz...                                                                                                                                       
*** info: creating the deb package and build files for version 29...                                                                                                                                               
This package has a Debian revision number but there does not seem to be                                                                                                                                            
an appropriate original tar file or .orig directory in the parent directory;                                                                                                                                       
(expected one of nagios-plugins-linux_28.orig.tar.gz, nagios-plugins-linux_28.orig.tar.bz2,                                                                                                                        
nagios-plugins-linux_28.orig.tar.lzma,  nagios-plugins-linux_28.orig.tar.xz or nagios-plugins-linux-29.orig)                                                                                                       
continue anyway? (y/n) y                                                                                                                                                                                           

I did not include the packages because of the high number.

Maybe you could make one archive per distro and that archive would contain all checks? Otherwise, I guess you'd need to host the files somewhere else.

@madrisan madrisan self-assigned this Sep 1, 2021
@madrisan madrisan added the bug label Sep 1, 2021
@madrisan
Copy link
Owner

madrisan commented Sep 1, 2021

Ok. I can reproduce the issue, sorry :/

madrisan added a commit that referenced this issue Sep 1, 2021
Thanks to by [sbraz](https://github.com/sbraz) for pointing this out
in the issue:

    #89

Signed-off-by: Davide Madrisan <[email protected]>
madrisan added a commit that referenced this issue Sep 1, 2021
Thanks to by [sbraz](https://github.com/sbraz) for pointing this out
in the issue:

    #89

Signed-off-by: Davide Madrisan <[email protected]>
madrisan added a commit that referenced this issue Sep 9, 2021
Thanks to by [sbraz](https://github.com/sbraz) for pointing this out
in the issue:

    #89

Signed-off-by: Davide Madrisan <[email protected]>
madrisan added a commit that referenced this issue Sep 10, 2021
Thanks to by [sbraz](https://github.com/sbraz) for pointing this out
in the issue:

    #89

Signed-off-by: Davide Madrisan <[email protected]>
madrisan added a commit that referenced this issue Sep 10, 2021
Thanks to by [sbraz](https://github.com/sbraz) for pointing this out
in the issue:

    #89

Signed-off-by: Davide Madrisan <[email protected]>
@madrisan
Copy link
Owner

Back from holiday... Sorry for the delay.
Should be fixed in PR#90.
I will do some more tests in the evening, but if you can test yourself meanwhile I'll appreciate :)

@madrisan madrisan removed the bug label Sep 10, 2021
madrisan added a commit that referenced this issue Sep 10, 2021
Thanks to by [sbraz](https://github.com/sbraz) for pointing this out
in the issue:

    #89

Signed-off-by: Davide Madrisan <[email protected]>
madrisan added a commit that referenced this issue Jan 25, 2022
Thanks to by [sbraz](https://github.com/sbraz) for pointing this out
in the issue:

    #89

Signed-off-by: Davide Madrisan <[email protected]>
madrisan added a commit that referenced this issue Jul 26, 2022
Thanks to by [sbraz](https://github.com/sbraz) for pointing this out
in the issue:

    #89

Signed-off-by: Davide Madrisan <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants