summaryrefslogtreecommitdiffstats
path: root/.github/scripts
AgeCommit message (Collapse)Author
2022-07-13Add additional Docker image build with debug info included. (#13359)Austin S. Hemmelgarn
* Add additional Docker image build with debug info included. * Assorted fixes. * Update packaging/docker/gen-cflags.sh Co-authored-by: Ilya Mashchenko <ilya@netdata.cloud> Co-authored-by: Ilya Mashchenko <ilya@netdata.cloud>
2022-07-12Actually allow running a test release in a fork of the repo. (#13331)Austin S. Hemmelgarn
This adds a way to manually bypass the check that explicitly keeps the release code from running if run in a repo other than netdata/netdata. This is done by setting `NETDATA_RELEASE_TEST` to a non-empty value in the repository secrets.
2022-06-30Assorted cleanups for new package infrastructure upload support. (#13270)Austin S. Hemmelgarn
* Ignore failures to upload packages to new infra. We will switch to requiring success when we move to the new infra as the primary. * Change package upload target. Needed to properly support handling of package repository metadata. * Upload repoconfig packages to new infra.
2022-06-28Upload packages to new self-hosted repository infrastructure. (#13240)Austin S. Hemmelgarn
* Match packaging arches to distro architecture names. This will simplify handling of uploads to our new self-hosted packaging infrastructure. * Add package uploads for RPM packages on new infrastructure. * Add package upload support for DEB packages. * Saner tmpdir handling. * Upload fixes. * Differentiate different DEB distros in package names. * Workflow fixes.
2022-06-28Implement PackageCloud cleanup (#13236)maneamarius
* add script for netdata packagecloud cleanup * add script for netdata packagecloud cleanup * remove old package-cloud cleanup code * add workflow for packagecloud cleanup * Debug msg * allow individual matrix jobs to complete independently to each other * perform cleanup without dry-run * remove debug msg * remove cleanup line from the slack notification
2022-06-14Fix typo in release base prep script. (#13098)Austin S. Hemmelgarn
2022-06-14Ci coverage (#13118)maneamarius
* add check to verify autoupdate is still enabled after netdata update * add script to install CI support packages before installing netdata
2022-06-06Fix handling of DEB package naming in CI. (#13076)Austin S. Hemmelgarn
* Fix handling of DEB package naming in CI. * Bump repoconfig package versions. To ensure naming consistency. * Fix repoconfig package renaming.
2022-06-06Added Alma Linux 9 and RHEL 9 support to CI and packaging. (#13058)Austin S. Hemmelgarn
* Added Alma Linux 9 and RHEL 9 support to CI and packaging. * Fix RPM deps for Alma 9. * Fix package testing code for Alma 9.
2022-05-27Cache invariant components in static builds to reduce build times. (#12877)Austin S. Hemmelgarn
* Add basic build caching support to static builds. Cache is store din `artifacts/cache/${BUILDARCH}`. Each third-party component utilizes a separate build cache. Invalidation is only done for version changes (more rigorous invalidation is expected to be handled externally). * Integrate static build caching with CI. * Fix fping cache handling. * Test caching in CI. * Properly skip rebuilds on cache hits. * Remove static build container when done with it. * Reuse existing image automatically if it’s for the correct platform. * Test CI build caching. * Fix static build job names.
2022-05-11Switch to Alma Linux for RHEL compatible support. (#12799)Austin S. Hemmelgarn
* Switch to Alma Linux for RHEL compatible support. * Fix testing code.
2022-04-27Correctly propagate errors and warnings up to the kickstart script from ↵Austin S. Hemmelgarn
scripts it calls. (#12686) * Overhaul deferred error handling in netdata-installer.sh * Propagate errors from netdata-installer.sh properly to the kickstart script. * Propagate errors from netdata-updater.sh properly to the kickstart script. * Overhaul logging in uninstaller and integrate with error propagation in kickstart.sh. * Fix name of variable used for propagating warnings. * Fix handling of run_ok and run_failed with no arguments. * Fix environment file validation in updater. * Add debugging info to CI. * Properly accept empty NETDATA_PREFIX in updater. * Convert remaining unguarded unsuccessful exits in updater to use fatal. * Fix usage of `env` in updater.
2022-04-18Disable automake dependency tracking in our various one-time builds. (#12701)Austin S. Hemmelgarn
* Disable automake dependency tracking in our various one-time builds. * Also disable dependency tracking code in package builds.
2022-04-15Fix branch handling for patch releases.Austin S. Hemmelgarn
2022-04-15Fix typo in release handling script.Austin S. Hemmelgarn
2022-04-15Fix branch handling for minor releases in release workflow. (#12690)Austin S. Hemmelgarn
2022-04-14Fix regexes in release workflow code.Austin S. Hemmelgarn
2022-03-17Don't publish nightlies if they are unchanged since the last nightly. (#12411)Austin S. Hemmelgarn
This skips publishing nightlies if the last commit that modified `packaging/version` is also the latest commit on the master branch _and_ the version listed in `packaging/version` ends in `-nightly`. If both conditions are met, then there have been no changes since the last nightly build, thus we don0t need to publish a new nightly build. This check is limited to runs that occur as part of the `schedule` trigger, to ensure that manually triggered builds can be still be done without having to worry about changes.
2022-03-15Fix update/install commands in Docker image test code. (#12378)Austin S. Hemmelgarn
* Fix update/install commands in Docker image test code. * Make netcat install conditional.
2022-03-11Fix version handling issues in release workflow. (#12375)Austin S. Hemmelgarn
* Pass `nightly` instead of a version for nightly builds. * Use the correct name for the version input when triggering builds. * Properly pull the version info for nightly builds in the packaging workflow.
2022-03-10Fix handling of pushing commits for release process. (#12359)Austin S. Hemmelgarn
* Fix handling of pushing commits for release process. This works around the issue of pushing to protected branches from a actions workflow, and also makes the changelog generation it’s own step like it should be. * Fix typos in release workflow.
2022-03-09Fix pushing of changelog and versioning changes in release process.Austin S. Hemmelgarn
WIthout this, we get hit with branch protection rules.
2022-03-09Final migration of release code off of Travis CI. (#12239)Austin S. Hemmelgarn
* Initial version of release workflow. * Remove release code from Travis config. Final removal of the Travis CI code will be handled separately. * Do not push changes if not running in GHA. This simplifies testing the core logic locally. * Remove remote branch existence checking. It is not strictly nesescary for the expected execution context, and it makes it harder to test locally safely. * Fixed some minor oversights. * Make git config repo local to make testing easier.
2022-02-15rename DO_NOT_TRACK to DISABLE_TELEMETRY (#12126)Ilya Mashchenko
2022-02-01Replace CentOS 8 with RockyLinux 8 in CI and package builds. (#11801)Austin S. Hemmelgarn
* Switch to using Rocky Linux 8 for RHEL 8 package builds. * Switch to RockyLinux 8 for RHEL 8-equivalent CI tests. * Fix handling of Rocky Linux.
2022-01-18Initial release of new kickstart script. (#11764)Austin S. Hemmelgarn
* Replace existing kickstart scripts with kickstart-ng. This change looks more complicated than it actually is due to git not sanely recognizing the rename. * Fix CI for new kickstart script. * Initial revision of install documentation. * Further documentation updates. * Even more documentation updates. * Fix telemetry event handling if neither curl nor wget are installed. * Remove dependence on `pgrep` for claiming. * Fix fatal error message handling. * Formally outline our support policy. * Updates to platform support doc. * Platform support doc updates. * Minor documentation updates. * Remove accidentally commited file from rebase process. * Apply suggestions from code review, part 1. Co-authored-by: Tina Luedtke <kickoke@users.noreply.github.com> * Made one-line installer consistent. * Apply suggestions from code review, part 2. * Update architecture list for static builds. * Restructure platform support doc so that things are clearer. Especially for cases of linking directly to the section on a specific support category. * Apply suggestions from code review, part 3. Co-authored-by: Tina Luedtke <kickoke@users.noreply.github.com> * Apply suggestions from code review, part 4 Co-authored-by: Tina Luedtke <kickoke@users.noreply.github.com> * Further updates to platform support document. * Further documentation updates. * Rework update documentation. Co-authored-by: Tina Luedtke <kickoke@users.noreply.github.com>
2021-11-17Add Oracle Linux 8 to CI and package builds. (#11776)Austin S. Hemmelgarn
* Add OracleLinux 8 to CI and package builds. * Fix OracleLinux dependency handling. * Fix package test code for Oracle Linux.
2021-11-16Fix typos (#11782)Dimitris Apostolou
Co-authored-by: ilyam8 <ilya@netdata.cloud>
2021-11-15Overhaul build CI. (#11699)Austin S. Hemmelgarn
* Overhaul build CI. This makes a number of changes that make our build CI easier to maintain and much safer with respect to the possibility of accidentally pushing broken nightlies. * The release-build.yml workflow has been renamed to just build.yml * The updater.yml and build-and-install.yml workflows have been consolidated into the build.yml workflow. * The updater checks now use the dist tarball produced by the dist tarball build instead of building one for each matrix job. * The updater and build checks now use a set of jobs for generating their test environments. * The updater and build checks and their shared test environment builds now use a unified build matrix, handled in an external data file (.github/data/build-matrix.json). * Nightly artifact uploads and release creation are now dependent on the updater checks passing. * Properly handle generated build matrix. * Minor fixes. * Fix shellcheck complaints. * Fixed stub script handling. * Mangle the build matrix JSON properly. * Properly handle stub scripts. * Fix distro name handling. * Fix typos. * Fix test environment image handling. * Fix updater checks. * Skip CentOS 7 JSON-C bundling check. * Fix handling of artifacts for updater check. * Fix yamllint errors. * Fix dist tarball handling. * Fix updater check script permissions. * Restructure build test Dockerfile for better caching. * Remove parallelization limits for test environment builds. These complete fast enough that it is perfectly reasonable to run them all in parallel simultaneously. In the best case scenario, this will save roughly 5-10 minutes of time during CI runs. * Add more in-line documentation and tidy up a few unneeded parameters. * Add checks to verify consolidated artifacts are good. * Fix distfile name handling. * Fix artifact checking. * Better delineate phases of updater check in logs. * Simplify updater checks. * Print checksums of artifacts. To simplify debugging. * Fix handling of updater checks.
2021-10-27Fix handling of artifacts for nightlies and release builds. (#11725)Austin S. Hemmelgarn
* Fix hnadling of static build artifacts for release builds. * Fix overall artifact handling for release build. * Fix typo
2021-10-15Migrated release build process from Travis CI to GitHub Actions. (#11055)Austin S. Hemmelgarn
* Initial version of release build workflow. * Consolidate static and dist build CI. * Typo fixes. * Ensure dependencies are present for dist tarball build. * Further typo fixes. * Convert Travis CI to trigger newrelease build workflow. * Fix actionlint errors. * Fix distfile name handling. * Fix handling of dist directory.
2021-10-12Added static builds for ARMv7l and ARMv8a (#11490)Austin S. Hemmelgarn
* Generic fixes for cross-arch static image builds. * Fixed handling of ARM static builds. * Add ARMv7l and ARMv8a static builds. * Fix static build deps. * Fix static build checks. * Bump OpenSSL version and optimize OpenSSL build. * Optimize bash build. * Bump cURL version and optimize cURL build. * Fix static build deps. * Fix bash build. * Further build fixes. * Fix cURL build. * Fix emulation handling.
2021-09-15Add extra verification to Docker builds. (#11497)Austin S. Hemmelgarn
2021-09-06Embed build architecture in static build archive names. (#11463)Austin S. Hemmelgarn
* Embed build architecture in static build archive names. This is required for proper support for static installs in the new kickstart script. The associated changes will also simplify adding static builds for other architectures in the future. * Update CI to use new static build changes properly. * Fix typos. * Fix link created by static build process. * Fix build environment setup.
2021-09-04Clean netdata naming (#11484)Andrew Maguire
* replace "NetData" with "Netdata" * replace "NetData" with "Netdata"
2021-08-18Add Debian 11 (Bullseye) to CI. (#11334)Austin S. Hemmelgarn
* Add Debian 11 (Bullseye) to CI. Official feature freeze is in a couple of days, and the release is soon to follow. * Fix handling of Debian 11 package builds. * Fix build dependencies for Debian 11. `dh-systemd` has long since been deprecated, we should instead be depending on the minimum version of `debhelper` that includes the required code. We need to special-case Ubuntu 16.04 because it predates the merge of `dh-systemd` into `debhelper`. * Use correct Docker image for Debian 11. * Add repoconfig package build for Debian 11. * Simplify handling of package building and testing. This should fix the CI issues we’re seeing with package builds, or at least make them easier to diagnose.
2021-06-15Disable telemetry in CI. (#11233)Austin S. Hemmelgarn
It skews our data in (probably) strange ways.
2021-04-05Spelling build (#10428)Josh Soref
* spelling: alleviate Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: available Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: berkeley Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: cannot Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: centos Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: context Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: continuously Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: correlate Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: defaults Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: dependencies Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: dependency Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: different Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: doesn't Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: example Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: forbidden Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: necessary Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: nightly Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: normally Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: notification Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: overridden Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: packet Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: program Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: prompted for Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: proxyadmin Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: red hat Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: relative Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: script Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: scriptlet Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: somewhere Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: spinning Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: substitution Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: success Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: successfully Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: sysadmin Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: tarball Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: telemetry Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: temporary Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: timeout Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: unsupported Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: updates Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: useful Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * spelling: way Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> * Update kickstart script checksums in documentation Co-authored-by: Vladimir Kobal <vlad@prokk.net>
2021-03-25Fix handling of binary package uploads. (#10860)Austin S. Hemmelgarn
2021-03-23Properly reference the distro-ID parsing script for package uploads. (#10840)Austin S. Hemmelgarn
2021-03-15Docker-based packaging workflow in GitHub Actions. (#9964)Austin S. Hemmelgarn
* 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.
2021-03-04Changed Docker image tagging to use semver tags for releases. (#10648)Austin S. Hemmelgarn
* Changed Docker image tagging to use semver tags for releases. This allows users to use image names like `netdata/netdata:1` or `netdata/netdata@1.29` and track the most up-to-date release that matches that version prefix. Such usage is a common practice for projects using semantic versioning like we are. This has a side effect, however, of remivng the `v` from the start of our version tags. Not having it is also more consistent with how a vast majority of other projects handle version tags, but users will need to be notified about the change. * Proper backwards compatability. * Add documentation about Docker image tags. * Update packaging/docker/README.md Co-authored-by: Joel Hans <joel.g.hans@gmail.com> Co-authored-by: Joel Hans <joel.g.hans@gmail.com>
2021-03-03Add a new workflow to test that updater works as expected (#10599)kaskavel
* Add workflow for installing latest version of netdata, building from source of this branch & running the updater. Add script build-dist to create the artifacts used for the update. * Add more distributions, arguments in updater script & accomodate review comment * Run updater within docker for 6 distributions * Remove unecessary change in updater * Correct netdata_version --> updater_version in check-updater script * Review comments: remove unused vars & replace == with =
2020-08-06Fix Static Netdata to correctly build with Netdata Cloud support. (#9381)James Mills
* Revert "Revert "Override linker and include paths for static builds. (#9311)" (#9343)" This reverts commit 36d5e40dca91a93963e4d96f07af3e38803615d0. * Run git clean before building anything * Fix checking out openssl and skip if bind-mounted sources already exist at the given path * Add --require-cloud flag to the static build scripts * Add CMAKEFLAGS support to the installer to customize how to build libwebsockets for static builds * Update packaging/makeself/jobs/50-bash-4.4.18.install.sh Co-authored-by: Andrew Moss <1043609+amoss@users.noreply.github.com> * Fix remaining other two tyos Co-authored-by: Andrew Moss <1043609+amoss@users.noreply.github.com>
2020-08-03Require cloud build to succeed in make dist checks. (#9218)Austin S. Hemmelgarn
* Require cloud build to succeed in make dist checks. * perform dist check the same way we normally do builds. The default behavior in `kickstart.sh` is to run `install-required-packages.sh` with just the `netdata` package set, and we don't even document how to make it run with `netdata-all`, so a vast majority of users will only be running using the `netdata` package set. * More accurately recreate the environment a user would be building in. We should be testing our distfiles against our current version of `install-required-packages.sh`, not some pre-generated test image that we have to manage ina separaterepo. Also, disable telemetry for the test build so we don't accidentally pollute the stats.
2020-06-03Fix reliability of kickstart/kickstart-static64 with checksums sometimes ↵James Mills
failing (#9165) * Add tool to build the dist and static x864_64 artifacts * Add support for overriding the URL for installing/updating from nightlies * Refactor curl/wget usage into less places. Use curl -q and --output and -O options instead of redirecting stdout * Update md5sum(s) of kickstart/kickstart-static64
2020-05-29Add support for eBPF for Netdata static64 (kickstart-static64.sh) (#9104)James Mills
* Add tool to build the dist and static x864_64 artifacts * Add tool to bump the Netdata packaging version * Cleanup all the makeself scripts and update to Alpine 3.11 * Add zgrep and xz to Alpine 3.7 container used to build x86_64 static Netdata so check-kernel-config.sh does not fail * Explicitly bundle the -static varient of the eBPF kernel-collector library/programs
2020-05-26Add CI for our Static Netdata builds (which kickstart-static64 uses) (#9130)James Mills
* Add tool to build the static x864_64 Netdata * Add error if the netdata binary is not statically linked * Add Github Workflow for testing static builds * Don't use docker run -i -t if not on a tty
2020-03-13Migrate make dist validation to GHA Workflows (#8373)James Mills
* Migrate make dist validation to GHA Workflows * Refactor run_install_with_dist_file.sh