* Remove code for bundling the dashoard on install.
* Bundle the dashboard code directly into the agent repo.
This diffstat looks huge, but it’s actually relatively simple. The only
_actual_ changes are in the Makefiles, `configure.ac`, and the addition of
`generate_dashboard_makefile.py`. Everything else consists of removing
files that are included in the dashboard tarball, and extracting the
contents of the tarball into `web/gui/dashboard`.
* CI cleanup.
* Automate bundling of the dashboard code.
This replaces the makefile generator script with one that handles
bundling of the dashboard code in it’s entirety, and updates the GHA
workflow used for generating dashboard PRs to use that instead of the
existing shell commands.
It also removes the packaging/dashboard.* files, as they are no longer
needed.
* Automatically trigger Helmchart PR on agent release.
This will automatically trigger the workflow in the netdata/helmchart
repo that generates a PR to bump the agent version bundled with the
helmchart when we bpulish a docker image for a release.
* Add missing `uses` key in action step.
* Properly quote JSON data.
PackageCloud does not allow duplicate uploads, and we currently have no
good way to avoid duplicate nightly builds, so we need to remove any
existing packages with the same name before we upload newly built
packages.
* adds a new implementation of ACLK written almost from scratch
* external dependencies only OpenSSL and JSON-C
* fallback for systems where ACLK Legacy can't build (for technical or philosophical reasons)
* can be forced to build by giving "--aclk-ng" to the installer
* 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.
* 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>
* 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 =
* Switch to using GitHub Actions for publishing Docker images.
This simplifies handling of multiarch images and publishing to multiple
registries, and unifies testing with the code actually being used to
build and publish the images.
This also removes a handful of scripts that are no longer needed due to
this change, and switches our Dockerfile to not needing an architecture
to be specified in a build argument, instead relying on proper multiarch
docker image support.
* Fix YAML syntax.
* Add separate tagging for nightly and stable builds.
* Correct YAML syntax errors.
This will automatically create PRs to update any GitHub Actions we are
using when new versions are published. It is set to check weekly,
defaults to limiting such PRs to 3 at a time, and will lable them
apprpriately with ‘no changelog’ and ‘area/ci’.
This is intended to reduce the manual overhead of maintaining our CI.
This will make us more forward-portable, simplify eventual migration to
GHA for release builds, and make it trivial to set up pushing images to
multiple registries.
* Initial cleanup of Docker entrypoint script.
* Add linting for our Docker files.
* Fix warnings reported by hadolint.
* Add support for automatic claiming on startup.
* Optimize Docker image structure.
This shuffles some things around in the Docker image to cut down on the
total number of layers and make the image more caching friendly, which
will cut down on overall time required to both initially pull the image
and time spent pulling updated versions of the image.
It also shrinks the image size by about 2MB.
* new issue templates
* Update .github/ISSUE_TEMPLATE/bug_report.md
Co-authored-by: Joel Hans <joel@netdata.cloud>
* Update .github/ISSUE_TEMPLATE/config.yml
Co-authored-by: Joel Hans <joel@netdata.cloud>
* Update .github/ISSUE_TEMPLATE/config.yml
Co-authored-by: Joel Hans <joel@netdata.cloud>
* Update .github/ISSUE_TEMPLATE/config.yml
Co-authored-by: Joel Hans <joel@netdata.cloud>
* Update .github/ISSUE_TEMPLATE/config.yml
Co-authored-by: Joel Hans <joel@netdata.cloud>
* Update .github/ISSUE_TEMPLATE/config.yml
Co-authored-by: Joel Hans <joel@netdata.cloud>
* Update .github/ISSUE_TEMPLATE/bug_report.md
Co-authored-by: Joel Hans <joel@netdata.cloud>
* Update .github/ISSUE_TEMPLATE/config.yml
Co-authored-by: Joel Hans <joel@netdata.cloud>
* Update .github/ISSUE_TEMPLATE/config.yml
Co-authored-by: Joel Hans <joel@netdata.cloud>
Co-authored-by: Joel Hans <joel@netdata.cloud>
* Add a CI check for building against Clang
* Fix CFLAGS for libmosquitto/libwebsockets so builds work with Clang
* Add fixes for libbpf, judy, and JSON-C.
Co-authored-by: James Mills <prologic@shortcircuit.net.au>
Based on discussion with him, he’s not readily able to review changes
here, and the only changes I would be doing can be reviewed by the agent
team (or would involve other changes that would pull him in anyway), so
there’s not point in having him listed for review on them.
* Alpine 3.12 has been out for multiple months.
* Fedora 33 is slated for release on 2020-10-27, the current beta is
functionally a release preview.
* Fedora 31 will be EOL as of 2020-11-27, any existing users should have
updated by then.
* Ubuntu 20.10 is slated for release on 2020-10-22, the currently
available system images are functionally a release preview.
* Ubuntu 19.10 went EOL on 2020-07-17.
* Our packaging code was missing a number of distros we technically
support which we appear to build packages correctly for.