-
Notifications
You must be signed in to change notification settings - Fork 7
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
gh-actions: add tests for packages built with goreleaser #34
Conversation
Thanks for the pull request. I think we are quickly approaching enough complexity to warrant creating an RPM the old fashioned way, rather than using goreleaser. I’ll review this shortly |
Thanks! |
That was faster than expected, I'm already done 😉. But I'll hold off on a PR for "run as user" (see https://github.com/olifre/xrootd-monitoring-shoveler/tree/run-as-user ) until both #34 and #23 are in, since it (partially) relies on these two changes. |
This tests building the packages, and also testing the deb and rpm packages on various versions of Debian and RockyLinux. It covers: * goreleaser building everything (releasing suppressed) * installation of deb and rpm packages on various distros * spinning up distro containers including systemd * testing the systemd unit with a simple config file * basic test of the installed createtoken binary * basic test of the shoveler-status binary
This ensures we get coverage for all distros, important e.g. if tests only fail for one distro flavour.
55b5aad
to
f12545b
Compare
@djw8605 I have force-pushed here, rebasing onto current |
This tests building the packages, and also testing the deb and rpm packages on various versions of Debian and RockyLinux.
It covers:
@djw8605 I realized current tests did not cover the systemd service nor packaging yet, so I added this as a first step before I will later on attack adding support for running as non-
root
user. So the tests are essentially the preparation to ensure I don't break anything 😉 .Checking the
goreleaser
docs, it seems user creation must be done "classically", i.e. via scripts which are embedded in the packages viagoreleaser
, following distro best practices (sadly,gorelease
can not do that by itself).Hence, having tests covering the packages and the systemd unit in place first seemed important.