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
Docker-based packaging workflow in GitHub Actions. #9964
Conversation
e2fc287
to
c700cc9
Compare
f7b81a6
to
d2afd56
Compare
61c0d2e
to
37ace99
Compare
d06e4dc
to
7b7f625
Compare
27a7290
to
b7d57f0
Compare
6f2c84e
to
fdb9bc8
Compare
fdb9bc8
to
5b26574
Compare
5b26574
to
689f3a5
Compare
d7bb320
to
b8dbd2b
Compare
OK, this is finally ready for a round of preliminary review. It still is not quite ready to be merged (we still need more testing of the upload handling, as well as needing to move the repo cleanup process from Travis to GHA), but the code that is here is unlikely to change significantly unless we run into serious complications. |
For those who want to verify the packages that would be produced by this locally, here are the steps required to use the same package building process locally:
This will create an The package building process itself takes about 5-10 minutes on a reasonably fast system. Note that we currently only build for 64-bit x86 on most of these platforms (and the handful we don’t only include 32-bit x86 beyond that). |
This pull request has been mentioned on Netdata Community. There might be relevant details there: https://community.netdata.cloud/t/centos-8-rpms-missing-from-cloudpackage/1077/2 |
This greatly simplifies the package handling code, significantly reduces the amount of things we are running in Travis, adds better CI for package builds for PRs, finally eliminates LXC from any of our CI, and enables us to make further major improvements much easier.
* Add a new GHA workflow for building and publishing binary packages. This greatly simplifies the package handling code, significantly reduces the amount of things we are running in Travis, adds better CI for package builds for PRs, finally eliminates LXC from any of our CI, and enables us to make further major improvements much easier. * Migrate repo cleanup to GHA and remove dead code. * Fix RPM package builds. * Fix DEB installation.
* Add a new GHA workflow for building and publishing binary packages. This greatly simplifies the package handling code, significantly reduces the amount of things we are running in Travis, adds better CI for package builds for PRs, finally eliminates LXC from any of our CI, and enables us to make further major improvements much easier. * Migrate repo cleanup to GHA and remove dead code. * Fix RPM package builds. * Fix DEB installation.
Summary
This implements a new Docker-based packaging CI workflow in GitHub Actions. It still uses the same trigger commits as the existing LXC-based workflow we have in Travis so that minimal changes are needed to have it work correctly.
This requires the addition of two secrets to the repository itself:
PACKAGE_CLOUD_REPO
: This specifies which PackageCloud repository to push the packages to.PACKAGE_CLOUD_API_KEY
: This specifies the PackageCloud API key to use when uploading packages.This leverages GitHub Actions' matrix build feature to keep overall code in the workflow file to a minimum.
Component Name
area/ci
area/packaging
Additional Information
Fixes: #7346
Fixes: #7822