Age | Commit message (Collapse) | Author |
|
|
|
* claim script now accepts the same params as the kickstart
* rewrote buildinfo to unify all methods
* added cloud unavailable in cloud status
* added all exporters
* renamed httpd to h2o
* rename ENABLE_COMPRESSION to ENABLE_LZ4
* rename global variable
* rename ENABLE_HTTPS to ENABLE_OPENSSL
* fix coverity-scan for openssl
* add lz4 to coverity-scan
* added all plugins and most of the features
* added all plugins and most of the features
* generalize bitmap code so that we can have any size of bitmaps
* cleanup
* fix compilation without protobuf
* fix compilation with others allocators
* fix bitmap
* comprehensive bitmaps unit test
* bitmap as macros
* added developer mode
* added system info to build info
* cloud available/unavailable
* added /api/v2/info
* added units and ni to transitions
* when showing instances and transitions, show only the instances that have transitions
* cleanup
* add missing quotes
* add anchor to transitions
* added more to build info
* calculate retention per tier and expose it to /api/v2/info
* added currently collected metrics
* do not show space and retention when no numbers are available
* fix impossible overflow
* Add function for transitions and execute callback
* In case of error, reset and try next dictionary entry
* Fix error message
* simpler logic to maintain retention per tier
* /api/v2/alert_transitions
* Handle case of recipient null
Convert after and before to usec
* Add classification, type and component
* working /api/v2/alert_transitions
* Fix query to properly handle context and alert name
* cleanup
* Add search with transition
* accept transition in /api/v2/alert_transitions
* totaly dynamic facets
* fixed debug info
* restructured facets
* cleanup; removal of options=transitions
* updated alert entries flags
* method to exec
* Return also exec run timestamp
Temp table cleanup only when we don't execute with a transition
* cleanup obsolete anchor parameter
* Add sql_get_alert_configuration function
* added options=config to alert_transitions
* added /api/v2/alert_config
* preliminary work for /api/v2/claim
* initialize variables; do not expose expected retention if no disk space info is available; do not report aclk as initializing when not claimed
* fix claim session key filename
* put a newline into the session key file
* more progress on claiming
* final /api/v2/claim endpoint
* after claiming, refresh our state at the output
* Fix query to fetch config
* Remove debug log
* add configuration objects
* add configuration objects - fixed
* respect the NETDATA_DISABLE_CLOUD env variable
* NETDATA_DISABLE_CLOUD env variable sets the default, but the config sets the final value
* use a new claimed_id on every claiming
* regenerate random key on claiming and wait for online status
* ignore write() return value when writing a newline
* dont show cloud status disabled when claimed_id is missing
* added ctx to alert instances
* cleanup config and transitions from /api/v2/alerts
* fix unused variable
* in /api/v2/alert_config show 1 config without an array
* show alert values conditionally, by appending options=values
* When storing host info if the key value is empty, store unknown
* added options=summary to control when the alerts summary is shown
* increased http_api_v2 to version 5
* claming random key file is now not world readable
* added local-listeners binary that detects all the listening ports, their IPs and their command lines
---------
Co-authored-by: Stelios Fragkakis <52996999+stelfrag@users.noreply.github.com>
|
|
* Add config file for netdata-updater script.
Currently only has an option to control maximal delay when adding random
jitter while updating.
Longer-term, this will be used to support a number of other
configuration options without requiring the user to handle special
arguments for the script.
* Better handle jitter config option.
* Fix DEB package builds.
* Properly mark updater config as conffile in RPM spec file.
* Switch to a proper config file in the repo.
* Add documentation about the new config file.
|
|
|
|
|
|
The same commit as https://github.com/netdata/netdata/pull/14552
|
|
Signed-off-by: Tasos Katsoulas <tasos@netdata.cloud>
|
|
* Make plugin packages hard dependencies.
May (hopefully) be reverted eventually, but for now this should resolve
most if not all, of the current problems with native packages.
* Fix typo in Debian control file.
* Fix package test script.
* Fix dependency ordering for DEB plugin packages.
* Fix CUPS RPM dependency.
* Fix package test script again.
* Fix RPM nfacct plugin deps.
* Split out user and group handling for DEB packages.
This is needed to make the plugin package dependencies work correctly.
* Final fix for package test script.
* Fix permissions handling for RPM package.
* Fix typo in spec file.
* Fix another typo in RPM spec file.
|
|
* Fix RPM version conditionals in plugin packages.
* Match versioning behavior between DEB and RPM.
* Make plugin dependencies strictly versioned.
* Fix debugfs DEB package building.
* Properly fix DEB version conflicts.
* Fix plugin ownership in DEB packages.
* Fix plugin permission ordering.
|
|
* Update and normalize plugin package descriptions.
This ensures they have accurate and cnocise descriptions of what they
do, and that the descriptions are the same for both the RPM and DEB
packages.
* Split NFACCT plugin to it’s own package.
Most users do not actually use it, so make life easier for them by
reducing our dependency footprint and cutting down on how much they need
to download.
* Split charts.d.plugin to it’s own package.
* Split eBPF plugin and code to their own packages.
The code is in a separate package to simplify handling updates for it
separately from the main agent code in the future.
The eBPF plugin will still be installed by default in most cases when
installing the Netdata Agent
* Split python.d plugin to it’s own package.
The python.d plugin will still be installed by default in most cases
when installing the Netdata Agent
* Split go.d plugin to it’s own package.
The go.d plugin will still be installed by default in most cases when
installing the Netdata Agent
* Split apps.plugin to it’s own package
The apps plugin will still be installed by default in most cases when
installing the Netdata Agent
* Properly split out postinst scripts for DEB packages.
We should be modifying permissions and filecaps for plugins in the
specific packages that install those plugins.
* Clean up main files section in RPM spec file.
This should get rid of the duplicate files warnings, as well as probably
producing a more technically correct RPM.
* Properly format DEB package descriptions.
They should be folded at 76 characters.
* Fix dependencies for split RPM plugin packages.
* Fix most duplicate file warnings for RPM builds.
* Split slabinfo plugin to it’s own package.
* Clean up RPM conditional build.
All platforms we build RPMs for have both netns and systemd support, so
quit supporting platforms that don’t in our spec file.
* Include loopsleepms.sh.inc in RPM package.
* Fix packaging of nfacct plugin.
* Skip building NFACCT plugin on RHEL clones.
They lack the required dependencies.
* Split perf.plugin to it’s own package.
Also, start using CAP_PERFMON for it in RPM packages when available.
* Fix typo in DEB postinstall scripts.
* Fix issues with ebpf bundling scripts.
They don’t need to preserve permissions, and choosing not to do so makes
them work more reliably in a number of cases.
* Improve dependency handling of secondary plugins.
* Fix dependency handling.
* Match ebpf code files more specifically in RPM spec file.
* Fix branding and dependencies for RPM packages.
- Change the eBPF plugin legacy code package name and description to
reflect what it actually is.
- Properly have the new plugin packages conflict with the older Netdata
packages. This is needed for updates to work cleanly.
- Only require the eBPF legacy code on older systems that need it.
* Fix branding and dependencies for DEB packages.
- Change the eBPF plugin legacy code package name and description to
reflect what it actually is.
- Properly have the new plugin packages conflict with the older Netdata
packages. This is needed for updates to work cleanly.
* Update docs for non-default plugins.
* Have docs link back to package document.
* Address review feedback.
* Explicitly suggest plugins we are not including by default.
This does not pull them in by default, but does make it easier for users
to discover them.
* Explicitly pull in default plugins on CentOS 7.
* Fix broken merge of netdata spec file.
* Resolve typo in kickstart script.
* Explicitly disable FreeIPMI and NFACCT in RPMs if they are not available.
* Fix RPM changelog.
* Fix conditional plugin handling.
* Fix disabling FreeIPMI on Amazon Linux.
* Split new debugfs plugin to separate package.
* Install debugfs plugin by default.
|
|
Co-authored-by: Fotis Voutsas <fotis@netdata.cloud>
Co-authored-by: Austin S. Hemmelgarn <ahferroin7@gmail.com>
Co-authored-by: ilyam8 <ilya@netdata.cloud>
|
|
* Add Amazon Linux 2023 to CI, packaging, and platform support.
* Fix dependencies for AL2023 in RPM spec file.
* Fix handling of package tests with DNF.
|
|
* Drop non-systemd init code in RPM spec file.
All of our currently supported RPM-based platforms are systemd-based, so
this is functionally dead code.
* Fix how we handle systemd service installation.
- Rely on the platform-provided macros, instead of doing our own thing.
These do the right thing in 99.99% of cases, and behave how we
actually need them to.
- Don’t depend on systemd at runtime. The macros handle this correctly,
and nothing we actually do _needs_ systemd at runtime.
- Actually follow packaging guidelines for upgrades. In particular, only
restart the agent if it’s already running (instead of unconditionally),
and don’t enable it if it’s disabled.
- Just put the macro invocations down in the actual scriptlets, instead
of using complicated nested macro definitions to compute things ahead
of time. This makes the code _much_ easier to understand.
* Add a systemd preset file so the service is enabled by default.
|
|
* bundle libyaml
* remove comment
* .github/workflows/coverity.yml
* add to coverity and tests
* add deps
* add to netdata.spec.in
* add to contrib/debia/control
* remove extra gentoo libyaml
|
|
Find issue with x86_64 mock build
```bash
+ /builddir/build/BUILD/netdata-v1.38.1/packaging/bundle-libbpf.sh /builddir/build/BUILD/netdata-v1.38.1 centos8
cp: cannot stat '/builddir/build/BUILD/netdata-v1.38.1/packaging/current_libbpf.checksums': No such file or directory
cp: cannot stat '/builddir/build/BUILD/netdata-v1.38.1/packaging/current_libbpf.version': No such file or directory
v1.1_netdata.tar.gz: OK
make: Entering directory '/builddir/build/BUILD/netdata-v1.38.1/externaldeps/libbpf/libbpf-1.1_netdata/src'
Package libelf was not found in the pkg-config search path.
Perhaps you should add the directory containing `libelf.pc'
to the PKG_CONFIG_PATH environment variable
Package 'libelf', required by 'virtual:world', not found
MKDIR build//staticobjs
CC build//staticobjs/bpf.o
CC build//staticobjs/btf.o
btf.c:18:10: fatal error: gelf.h: No such file or directory
#include <gelf.h>
^~~~~~~~
compilation terminated.
make: *** [Makefile:131: build//staticobjs/btf .o] Error 1
make: Leaving directory '/builddir/build/BUILD/netdata-v1.38.1/externaldeps/libbpf/libbpf-1.1_netdata/src'
error: Bad exit status from /var/tmp/rpm-tmp.2itZZI (%prep)
RPM build errors:
bogus date in %changelog: Wed Feb 03 2022 Austin Hemmelgarn <austin@netdata.cloud> 0.0.0-16
Bad exit status from /var/tmp/rpm-tmp.2itZZI (%prep)
Child return code was: 1
```
The conditional BuildDeps fixed this issue
|
|
for. (#14544)
* Move systemd-specific system files to their own directory.
* Move non-systemd init scripts to individual subdirectories.
* Move cron files to their own directory.
* Move logrotate config to it’s own directory.
* Fix typos in Makefile.am.
* Fix Debian package builds.
* Fixed issues reported by @andrewm4894.
|
|
Fixes https://github.com/netdata/netdata/issues/14132
fix https://github.com/netdata/netdata/issues/14132
|
|
|
|
|
|
|
|
|
|
* 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.
|
|
* Remove node.d.plugin and relevant files
* fix build packages
* remove node.d related words/phrases from docs and tests
|
|
* Disable automake dependency tracking in our various one-time builds.
* Also disable dependency tracking code in package builds.
|
|
|
|
|
|
* Add support to the updater to toggle auto-updates on and off.
This also adds the updater script to our native packages.
* Move argument handling logic to updater enabler function.
* Properly handle crontab case.
|
|
* Bundle protobuf on CentOS 7 and earlier.
* Fix protobuf dep list in spec file.
|
|
(#12182)
This reverts commit da7f215ad6c98cbf54ab93dbc1d2457ac01dbb08.
|
|
* Bundle updater script in native packages.
* Move code for enabling/disabling auto-updates to netdata-updater.sh
This lets us handle the logic sanely from the kickstart script
regardless of the install method, and allows users to more reliably
toggle auto-updates themselves without having to understand what is
being done.
* Add proper case-agnosticism to auto-update type selection.
* Move auto-updater handling code to kickstart script.
* Properly handle running against an older source tree.
* First part of updater docmentation updates.
* Fixed handling of updater in DEB packages.
* Further documentation updates.
* Minor typo fixes.
|
|
* remove legacy from makefiles
* remove ACLK Legacy from installer
* remove ACLK Legacy from configure.ac
* remove legacy from cmake
* aclk api cleanup
* remove legacy files from packaging
* changes for CI from Austin
|
|
|
|
We are intentionally not using LTO by default in almost every case
because it provides little to no performance improement for us and has a
_huge_ impact on build times, which in turn results in our CI taking an
unreasonably long time to run.
|
|
* Added ARM binary package builds to CI.
* Tidy-up workflow so it runs faster.
* Update cmake options for LWS.
* Package build process tweaks.
* Add Fedora 34 32-bit ARM package build.
* Disable eBPF in ARM package builds.
* Fix conditional in DEB package build.
* Fix RPM architecture handling.
* Really fix conditional in DEB package build.
* Fix handling of eBPF in DEB packages.
* Fix RPM libbpf bundling.
* Differentiate uploaded artifacts by architecture.
* Add CentOS 8 ARMv8 package build.
|
|
* Remove EPEL and OKay repo dependencies for CentOS 8.
We don’t actually need anything from EPEL in a vast majority of cases,
and the only stuff we needed from OKay is now provided by PowerTools.
This makes us a lot more portable overall.
* Bundle LWS in CentOS 8 RPMs.
This eliminates a need to use EPEL during the package building process,
which in turn removes the strict coupling with CentOS as the build
platform (most notably, this lets us use Rocky Linux for the build).
* Also try using DNF on CentOS systems.
|
|
|
|
* Do not accept a path when using --with-bundled-lws.
The bundled library is always placed under externaldeps/libwebsockets,
when using the netdata-installer.sh script. When this option is missing,
we look for the system-wide installed version.
* Do not accept a path when using --with-bundled-libJudy.
The bundled library is always placed under externaldeps/libJudy. When
the option is not given, we look for the system-wide installed version.
* Use absolute header paths for repo-internal deps.
* Use absolute library paths for repo-internal deps.
|
|
* 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.
|
|
|
|
* 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.
|
|
* Removed pointless capabilities in our RPM spec file.
* Shifted slabinfo and perf plugins to use proper capabilties instead of
being SUID root.
|
|
The original intent was to only use a static copy of LWS if we couldn’t
use a system copy. Due to two incorrect conditionals in the spec file
though, what was actually happening was that we were using a static
build of LWS on systems where we could use a system copy, and not
linking against LWS at all on other systems.
This fixes those conditionals so that we use a system copy if available,
and provide a static copy if a system copy is not available.
|
|
|
|
* Switched to using system libwebsockets for RPM builds.
Also cleans up the configure statement in the RPM spec file.
* Add version requirement for LWS dep and only use native on platforms that meet it.
|
|
Unintentionally broken by #9984. This re-enables cloud support in binary
packages.
|
|
|
|
Our current RPM spec file includes _all_ of our library dependencies as
statically listed `Requires:` lines. This, in turn, requires a very
large number of conditionals in the dependencies to account for package
naming differences between RPM distros, and also makes it a pain in the
arse to port the spec file to work with new releases of existing
distros.
This changes the spec file to just use the automatic `Requires:`
generation functionality that's already included in the RPM build
process. The net effect is that the spec file ends up much cleaner, and
it works just about anywhere with minimal modification., as well as us
not having to track anything but build dependencies manually.
|
|
|
|
|
|
|