netdata/netdata.spec.in

1063 lines
34 KiB
RPMSpec
Raw Permalink Normal View History

2018-09-30 01:36:42 +02:00
# SPDX-License-Identifier: GPL-3.0-or-later
%global contentdir %{_datadir}/netdata
2019-09-16 10:53:06 +02:00
%global version @PACKAGE_VERSION@
# XXX: We are using automatic `Requires:` generation for libraries
# whenever possible, DO NOT LIST LIBRARY DEPENDENCIES UNLESS THE RESULTANT
# PACKAGE IS BROKEN WITHOUT THEM.
AutoReqProv: yes
# This is temporary and should eventually be resolved. This bypasses
# the default rhel __os_install_post which throws a python compile
# error.
%global __os_install_post %{nil}
# This is needed to support proper handling of Go code without requiring
# external linking or GCCGO, because even recent versions of rpmbuild do
# not properly support the build IDs generated by the upstream Go toolchain.
%global _missing_build_ids_terminate_build 0
# Use our custom CMake version from our package builders if we cant find cmake.
%if 0%{?centos_ver} == 7
%global __cmake /cmake/bin/cmake
%global __cmake_builddir .
%global cmake %{__cmake}
%global cmake_build %{__cmake} --build %{__cmake_builddir} --verbose --parallel $(nproc)
%global cmake_install DESTDIR="%{buildroot}" %{__cmake} --install %{__cmake_builddir}
%global _have_ml 0
%endif
%if 0%{?amazon_linux} == 2
%global __cmake /cmake/bin/cmake
%global __cmake_builddir .
%global cmake %{__cmake}
%global cmake_build %{__cmake} --build %{__cmake_builddir} --verbose --parallel $(nproc)
%global cmake_install DESTDIR="%{buildroot}" %{__cmake} --install %{__cmake_builddir}
%global _have_ml 0
%endif
# openSUSE requires us to explicity ask for ninja for builds.
# We also need to specify the build directory since they do not.
%if 0%{?suse_version}
%global __builder ninja
%global __cmake_builddir %{__builddir}
%endif
# Disable eBPF for architectures other than x86
%ifarch x86_64 i386
%global _have_ebpf 1
%else
%global _have_ebpf 0
%endif
netdata/packaging: Netdata binary packages generation - spec file refinement, support for nightlies (RPM) (#6369) Detailed list of changes: * netdata/packaging: First round of netdata.spec refactoring - package dependencies - Remove freeipmi/nfacct plugin flags. We auto-detect all plugins by decision - Start refactor of package dependencies - Add missing dependencies, with respect to distro peculiarities - Adjust existing dependencies, so that distro-specific package names is applied * netdata/packaging: add packaging trigger mechanism on binary-packages-specfile-cleanup to help testing * netdata/packaging: WIP - Allow building nightly versions for RPM (Still investigating the right version scheme) * netdata/packaging: Attempt to fix syntax errors - wow travis, mercy * netdata/packaging: tiny nits and fixes 1) there was a syntax error in version definition 2) bring default deploy repo name at the top, then overwrite when latest is published 3) Leave a comment * netdata/packaging: Move these core package requirements to the right section * netdata/packaging: libuv requires >= 1, missed to add that on devel libs * netdata/packaging: some comments, also when you put logrotate in our conf directory, link it to actual log rotate * netdata/packaging: Adjust configure options on spec file (align with netdata-installer.sh) * netdata/packaging: In order to properly support packaging both latest and stable releases, you need to star that extraction part, folder name contains the version with the hash that we cant tell * netdata/packaging: until we fix versioning, bring the original unprocessed spec file and pass the version we like in * netdata/packaging: fix version string in the spec file * netdata/packaging: Replace source path, we need to work with whatever we downloaded (to be refined) * netdata/packaging: [ci skip] you mixed the paths, reverse them * netdata/packaging: [ci skip] attempt to fix source path when needed * netdata/packaging: fixes and nits 1) generalize the spec file refinement method 2) Do both replacement that way 3) Adjust file names and paths * netdata/packaging: Replace Source0 explicitly and also make sure you remove extra new lines that may confuse the replacement later * netdata/packaging: [ci skip] move env outside, add some more log * netdata/packaging: [ci skip] adjust logic of replacing tag lines in spec file * netdata/packaging: [ci skip] Alas, fetch the archive, rename the structure to the new version, repack and proceed * netdata/packaging: [ci skip] Extract to specific path * netdata/packaging: [ci skip] replace problematic tar call with the respective pythonized one * netdata/packaging: [ci skip] Add new friendly octal format for chmod * netdata/packaging: [ci skip] more checks * netdata/packaging: [ci skip] dont chmod, chown the whole folder after extraction * netdata/packaging: nit * netdata/packaging: [ci skip] attempt to fix permissions differently * netdata/packaging: [ci skip] Another hack, attempt to fix permissions on the host directly * netdata/packaging: [ci skip] fine, do the move also on the host, pointless to run all through the container * netdata/packaging: [ci skip] Do the move through the container. Also, move a more specific folder * netdata/packaging: [ci skip] move as w00t * netdata/packaging: [ci skip] fix * netdata/packaging: sync permissions handling, round two * netdata/packaging: scratch those hacks, we should do latest differently * netdata/packaging: [ci skip] Set up rpm version string depending on whether we are on latest or not * netdata/packaging: [ci skip] Branch the code here, latest build up should be on the commit rather the tar files * netdata/packaging: Attempt to handle latest version build up * netdata/packaging: [ci skip] Dont continue processing if the file was not generated. Also do the tagging before autoreconf * netdata/packaging: [ci skip] fixes and nits * netdata/packaging: [ci skip] When doing annotated tags, you need to provide a message otherwise an editor pops up and will block the build * netdata/packaging: on the latest code case go all the way host level operations * netdata/packaging: [ci skip] Do not modify version, no longer need it because we properly generated the package with the right version * netdata/packaging: [ci skip] fix sensors line, you missed the Recommends keyword * netdata/packaging: Some code style (remove tabification from some tags) and also remove Recommends, we start with required packages for build and runtime and then we document further needs * netdata/packaging: [ci skip] Make sure you get epel in there, its needed * netdata/packaging: [ci skip] Fix bogus date * netdata/packaging: [ci skip] add these packages to include functionality * netdata/packaging: [ci skip] more fine grained dependency handling * netdata/packaging: [ci skip] Dependency hell - do not depend on libnetacctfilter if on el/7 * netdata/packaging: [ci skip] Be serious, that is not what you do when building the package silly * netdata/packaging: [ci skip] define directory attributes too * netdata/packaging: [ci skip] mystery unfold - comment out as we need to figure out how to handle missing directories that our installer creates if necessary * netdata/packaging: [ci skip] Make sure you properly set deployment repo based on commit message * netdata/packaging: [ci skip] Install these packages for specific versions, remove optimisations for now * netdata/packaging: [ci skip] Make package yanking flexible, so that we can manage both netdata and netdata-edge cleanup properly * netdata/packaging: [ci skip] Actually, set user at travis layer and let the script consume it only. We need to be sure the same user is used on yanking and the deployment process * netdata/packaging: [ci skip] wow pkatsoul * netdata/packaging: Dont forget to install some of the enabled plugins * netdata/packaging: nfacct.plugin not really working on rhel, disable temporarily * netdata/packaging: include installed directories to package * netdata/packaging: [ci skip] nits * netdata/packaging: fixes * netdata/packaging: [ci skip] dont add ghost files * netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there * netdata/packaging: [ci skip] Extreme - override _libexecdir macro * Revert "netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there" This reverts commit 320102c96284e4622266f6f089d6ce87319976f3. That wasnt really the problem here * netdata/packaging: [ci skip] Include contents of dir here * netdata/packaging: fixes * netdata/packaging: [ci skip] Fixes and additions - Tighter permissions for some files - Introduce go.d plugin install (likely broken like this, dont recall if bash style code is fine here) - Raise the path overrides to the spec level, otherwise we build with the overrides and package with the defaults * netdata/packaging: [ci skip] Missed an invalid variable. These files are under our current path, no need for complexity * netdata/packaging: [ci skip] bring sha method onboard * netdata/packaging: [ci skip] Wrong path provided, should be under build root * netdata/packaging: [ci skip] Add registry directory * netdata/packaging: [ci skip] add missing config directory definitions * netdata/packaging: [ci skip] Fix missing dirs * netdata/packaging:[ci fix] hos * netdata/packaging: [ci skip] Fixes and additions - Change versioning to v1.15.0.114 from v1.15.0114 - Add CUPS, Xenstat, json-c * netdata/packaging: [ci skip] fix package dependencies on the builder setup, otherwise spec will fail * netdata/packaging: [ci skip] limit xenstat to suse and fedora for now * netdata/packaging: [ci skip] separate fedora and suse cases, unfortunately suse has different package names.... * netdata/packaging: [ci skip] yajl is not the same package everywhere, of course * netdata/packagin: [ci skip] skip xenstat for now * netdata/packaging: [ci skip] remove the vvvvvvvvv * netdata/packaging: [ci skip] one more fix attempt * netdata/packaging: [ci skip] Spec file extraction is different when building from stable. We *must* fetch it from the tarball rather than the local one * netdata/packaging: [ci skip] spec_file defined on all cases, latest or stable. Also move latest spec file copy after make dist operation, that is where is suppose to be * netdata/packaging: [ci skip] Tag source with the local version, as we build upon the very latest * netdata/packaging: oopsie -- remove json-c from that place, it was forgotten * netdata/packaging: fix packaging, even though devel is consistent between fedora and suse, the binary one is not .... (also fix default perms to be root:netdata rather root:root) * netdata/packaging: Suse love - again, libuuid-devel same, but libuuid is named libuuid1 on suse...... * netdata/packaging: [ci skip] libcap same.... * netdata/packaging: [ci skip] use the noreplace directive for the configuration files * netdata/packaging: [ci skip] Bring back master as the triggering repository * netdata/packaging: [ci skip] attempt to enable/disable service where necessary. Default preset action requires further setup, so we override that * Revert "netdata/packaging: [ci skip] Bring back master as the triggering repository" This reverts commit 9b25a622dc5f12b1539f6863bab52d7bb225fd8d. ** Reverting as we need to test further the service enable action ** * netdata/packaging: [ci skip] revert this change - not the right way, we have empty files * netdata/packaging: [ci skip] Add daemon-reload option, to make sure systemd learns about the newly installed service * netdata/packaging: [ci skip] Attempt to silence codacy by factoring out the few small methods for common usage, then kill directories to reduce complexity adn thats it * netdata/packaging: [ci skip] Just making sure codacy reprocess everything * netdata/packaging: [ci skip] missed one adjustment * netdata/packaging: python style - print shouldnt have space before open parenthesis. Also, add restart on all cases on the spec file * netdata/packaging: [ci skip] fix syntax * netdata/packaging: [ci skip] syntax fixes 2 * netdata/packaging: [ci skip] another miss * netdata/packaging: [ci skip] You need to explicitly trigger a restart, apparently * netdata/packaging: [ci skip] override packaging user definition temporarily, to get things going on testing
2019-07-03 09:18:17 +02:00
# Mitigate the cross-distro mayhem by strictly defining the libexec destination
%define _prefix /usr
%define _sysconfdir /etc
%define _localstatedir /var
%define _libexecdir /usr/libexec
%define _libdir /usr/lib
netdata/packaging: Netdata binary packages generation - spec file refinement, support for nightlies (RPM) (#6369) Detailed list of changes: * netdata/packaging: First round of netdata.spec refactoring - package dependencies - Remove freeipmi/nfacct plugin flags. We auto-detect all plugins by decision - Start refactor of package dependencies - Add missing dependencies, with respect to distro peculiarities - Adjust existing dependencies, so that distro-specific package names is applied * netdata/packaging: add packaging trigger mechanism on binary-packages-specfile-cleanup to help testing * netdata/packaging: WIP - Allow building nightly versions for RPM (Still investigating the right version scheme) * netdata/packaging: Attempt to fix syntax errors - wow travis, mercy * netdata/packaging: tiny nits and fixes 1) there was a syntax error in version definition 2) bring default deploy repo name at the top, then overwrite when latest is published 3) Leave a comment * netdata/packaging: Move these core package requirements to the right section * netdata/packaging: libuv requires >= 1, missed to add that on devel libs * netdata/packaging: some comments, also when you put logrotate in our conf directory, link it to actual log rotate * netdata/packaging: Adjust configure options on spec file (align with netdata-installer.sh) * netdata/packaging: In order to properly support packaging both latest and stable releases, you need to star that extraction part, folder name contains the version with the hash that we cant tell * netdata/packaging: until we fix versioning, bring the original unprocessed spec file and pass the version we like in * netdata/packaging: fix version string in the spec file * netdata/packaging: Replace source path, we need to work with whatever we downloaded (to be refined) * netdata/packaging: [ci skip] you mixed the paths, reverse them * netdata/packaging: [ci skip] attempt to fix source path when needed * netdata/packaging: fixes and nits 1) generalize the spec file refinement method 2) Do both replacement that way 3) Adjust file names and paths * netdata/packaging: Replace Source0 explicitly and also make sure you remove extra new lines that may confuse the replacement later * netdata/packaging: [ci skip] move env outside, add some more log * netdata/packaging: [ci skip] adjust logic of replacing tag lines in spec file * netdata/packaging: [ci skip] Alas, fetch the archive, rename the structure to the new version, repack and proceed * netdata/packaging: [ci skip] Extract to specific path * netdata/packaging: [ci skip] replace problematic tar call with the respective pythonized one * netdata/packaging: [ci skip] Add new friendly octal format for chmod * netdata/packaging: [ci skip] more checks * netdata/packaging: [ci skip] dont chmod, chown the whole folder after extraction * netdata/packaging: nit * netdata/packaging: [ci skip] attempt to fix permissions differently * netdata/packaging: [ci skip] Another hack, attempt to fix permissions on the host directly * netdata/packaging: [ci skip] fine, do the move also on the host, pointless to run all through the container * netdata/packaging: [ci skip] Do the move through the container. Also, move a more specific folder * netdata/packaging: [ci skip] move as w00t * netdata/packaging: [ci skip] fix * netdata/packaging: sync permissions handling, round two * netdata/packaging: scratch those hacks, we should do latest differently * netdata/packaging: [ci skip] Set up rpm version string depending on whether we are on latest or not * netdata/packaging: [ci skip] Branch the code here, latest build up should be on the commit rather the tar files * netdata/packaging: Attempt to handle latest version build up * netdata/packaging: [ci skip] Dont continue processing if the file was not generated. Also do the tagging before autoreconf * netdata/packaging: [ci skip] fixes and nits * netdata/packaging: [ci skip] When doing annotated tags, you need to provide a message otherwise an editor pops up and will block the build * netdata/packaging: on the latest code case go all the way host level operations * netdata/packaging: [ci skip] Do not modify version, no longer need it because we properly generated the package with the right version * netdata/packaging: [ci skip] fix sensors line, you missed the Recommends keyword * netdata/packaging: Some code style (remove tabification from some tags) and also remove Recommends, we start with required packages for build and runtime and then we document further needs * netdata/packaging: [ci skip] Make sure you get epel in there, its needed * netdata/packaging: [ci skip] Fix bogus date * netdata/packaging: [ci skip] add these packages to include functionality * netdata/packaging: [ci skip] more fine grained dependency handling * netdata/packaging: [ci skip] Dependency hell - do not depend on libnetacctfilter if on el/7 * netdata/packaging: [ci skip] Be serious, that is not what you do when building the package silly * netdata/packaging: [ci skip] define directory attributes too * netdata/packaging: [ci skip] mystery unfold - comment out as we need to figure out how to handle missing directories that our installer creates if necessary * netdata/packaging: [ci skip] Make sure you properly set deployment repo based on commit message * netdata/packaging: [ci skip] Install these packages for specific versions, remove optimisations for now * netdata/packaging: [ci skip] Make package yanking flexible, so that we can manage both netdata and netdata-edge cleanup properly * netdata/packaging: [ci skip] Actually, set user at travis layer and let the script consume it only. We need to be sure the same user is used on yanking and the deployment process * netdata/packaging: [ci skip] wow pkatsoul * netdata/packaging: Dont forget to install some of the enabled plugins * netdata/packaging: nfacct.plugin not really working on rhel, disable temporarily * netdata/packaging: include installed directories to package * netdata/packaging: [ci skip] nits * netdata/packaging: fixes * netdata/packaging: [ci skip] dont add ghost files * netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there * netdata/packaging: [ci skip] Extreme - override _libexecdir macro * Revert "netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there" This reverts commit 320102c96284e4622266f6f089d6ce87319976f3. That wasnt really the problem here * netdata/packaging: [ci skip] Include contents of dir here * netdata/packaging: fixes * netdata/packaging: [ci skip] Fixes and additions - Tighter permissions for some files - Introduce go.d plugin install (likely broken like this, dont recall if bash style code is fine here) - Raise the path overrides to the spec level, otherwise we build with the overrides and package with the defaults * netdata/packaging: [ci skip] Missed an invalid variable. These files are under our current path, no need for complexity * netdata/packaging: [ci skip] bring sha method onboard * netdata/packaging: [ci skip] Wrong path provided, should be under build root * netdata/packaging: [ci skip] Add registry directory * netdata/packaging: [ci skip] add missing config directory definitions * netdata/packaging: [ci skip] Fix missing dirs * netdata/packaging:[ci fix] hos * netdata/packaging: [ci skip] Fixes and additions - Change versioning to v1.15.0.114 from v1.15.0114 - Add CUPS, Xenstat, json-c * netdata/packaging: [ci skip] fix package dependencies on the builder setup, otherwise spec will fail * netdata/packaging: [ci skip] limit xenstat to suse and fedora for now * netdata/packaging: [ci skip] separate fedora and suse cases, unfortunately suse has different package names.... * netdata/packaging: [ci skip] yajl is not the same package everywhere, of course * netdata/packagin: [ci skip] skip xenstat for now * netdata/packaging: [ci skip] remove the vvvvvvvvv * netdata/packaging: [ci skip] one more fix attempt * netdata/packaging: [ci skip] Spec file extraction is different when building from stable. We *must* fetch it from the tarball rather than the local one * netdata/packaging: [ci skip] spec_file defined on all cases, latest or stable. Also move latest spec file copy after make dist operation, that is where is suppose to be * netdata/packaging: [ci skip] Tag source with the local version, as we build upon the very latest * netdata/packaging: oopsie -- remove json-c from that place, it was forgotten * netdata/packaging: fix packaging, even though devel is consistent between fedora and suse, the binary one is not .... (also fix default perms to be root:netdata rather root:root) * netdata/packaging: Suse love - again, libuuid-devel same, but libuuid is named libuuid1 on suse...... * netdata/packaging: [ci skip] libcap same.... * netdata/packaging: [ci skip] use the noreplace directive for the configuration files * netdata/packaging: [ci skip] Bring back master as the triggering repository * netdata/packaging: [ci skip] attempt to enable/disable service where necessary. Default preset action requires further setup, so we override that * Revert "netdata/packaging: [ci skip] Bring back master as the triggering repository" This reverts commit 9b25a622dc5f12b1539f6863bab52d7bb225fd8d. ** Reverting as we need to test further the service enable action ** * netdata/packaging: [ci skip] revert this change - not the right way, we have empty files * netdata/packaging: [ci skip] Add daemon-reload option, to make sure systemd learns about the newly installed service * netdata/packaging: [ci skip] Attempt to silence codacy by factoring out the few small methods for common usage, then kill directories to reduce complexity adn thats it * netdata/packaging: [ci skip] Just making sure codacy reprocess everything * netdata/packaging: [ci skip] missed one adjustment * netdata/packaging: python style - print shouldnt have space before open parenthesis. Also, add restart on all cases on the spec file * netdata/packaging: [ci skip] fix syntax * netdata/packaging: [ci skip] syntax fixes 2 * netdata/packaging: [ci skip] another miss * netdata/packaging: [ci skip] You need to explicitly trigger a restart, apparently * netdata/packaging: [ci skip] override packaging user definition temporarily, to get things going on testing
2019-07-03 09:18:17 +02:00
# Fedora doesnt define this, but other distros do
%{!?_presetdir:%global _presetdir %{_libdir}/systemd/system-preset}
# Redefine centos_ver to standardize on a single macro
%{?rhel:%global centos_ver %rhel}
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
# Disable FreeIPMI on Amazon Linux 2023 and newer
%if 0%{?amzn} >= 2023
%global _have_freeipmi 0
%else
%global _have_freeipmi 1
%endif
# Disable CUPS on old RHEL systems.
%if 0%{?centos_ver} != 6 && 0%{?centos_ver} != 7 && 0%{?amazon_linux} != 2
%global _have_cups 1
%else
%global _have_cups 0
%endif
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
# Disable NFACCT for RHEL equivalents and Amazon Linux
%if 0%{?centos_ver} || 0%{?amzn}
%global _have_nfacct 0
%else
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%global _have_nfacct 1
%endif
# Disable xenstat if were not on Fedora or openSUSE
%if 0%{?suse_version} || 0%{?fedora}
%if 0%{!?amzm:1}
%global _have_xenstat 0
%else
%global _have_xenstat 1
%endif
%else
%global _have_xenstat 0
%endif
# Skip MongoDB exporter on known problem platforms
%if 0%{?oraclelinux} || 0%{?suse_version} || 0%{?amzn}
%global _have_mongo_exporter 0
%else
%global _have_mongo_exporter 1
%endif
# If ML hasnt been explicitly disabled or enabled yet, enable it now.
%if 0%{!?_have_ml:1}
%global _have_ml 1
%endif
# Filter known bogus deps that would be caught by AutoReqProv.
%global __requires_exclude_from ^%{_libdir}/%{name}/system/.*$
netdata/packaging: Netdata binary packages generation - spec file refinement, support for nightlies (RPM) (#6369) Detailed list of changes: * netdata/packaging: First round of netdata.spec refactoring - package dependencies - Remove freeipmi/nfacct plugin flags. We auto-detect all plugins by decision - Start refactor of package dependencies - Add missing dependencies, with respect to distro peculiarities - Adjust existing dependencies, so that distro-specific package names is applied * netdata/packaging: add packaging trigger mechanism on binary-packages-specfile-cleanup to help testing * netdata/packaging: WIP - Allow building nightly versions for RPM (Still investigating the right version scheme) * netdata/packaging: Attempt to fix syntax errors - wow travis, mercy * netdata/packaging: tiny nits and fixes 1) there was a syntax error in version definition 2) bring default deploy repo name at the top, then overwrite when latest is published 3) Leave a comment * netdata/packaging: Move these core package requirements to the right section * netdata/packaging: libuv requires >= 1, missed to add that on devel libs * netdata/packaging: some comments, also when you put logrotate in our conf directory, link it to actual log rotate * netdata/packaging: Adjust configure options on spec file (align with netdata-installer.sh) * netdata/packaging: In order to properly support packaging both latest and stable releases, you need to star that extraction part, folder name contains the version with the hash that we cant tell * netdata/packaging: until we fix versioning, bring the original unprocessed spec file and pass the version we like in * netdata/packaging: fix version string in the spec file * netdata/packaging: Replace source path, we need to work with whatever we downloaded (to be refined) * netdata/packaging: [ci skip] you mixed the paths, reverse them * netdata/packaging: [ci skip] attempt to fix source path when needed * netdata/packaging: fixes and nits 1) generalize the spec file refinement method 2) Do both replacement that way 3) Adjust file names and paths * netdata/packaging: Replace Source0 explicitly and also make sure you remove extra new lines that may confuse the replacement later * netdata/packaging: [ci skip] move env outside, add some more log * netdata/packaging: [ci skip] adjust logic of replacing tag lines in spec file * netdata/packaging: [ci skip] Alas, fetch the archive, rename the structure to the new version, repack and proceed * netdata/packaging: [ci skip] Extract to specific path * netdata/packaging: [ci skip] replace problematic tar call with the respective pythonized one * netdata/packaging: [ci skip] Add new friendly octal format for chmod * netdata/packaging: [ci skip] more checks * netdata/packaging: [ci skip] dont chmod, chown the whole folder after extraction * netdata/packaging: nit * netdata/packaging: [ci skip] attempt to fix permissions differently * netdata/packaging: [ci skip] Another hack, attempt to fix permissions on the host directly * netdata/packaging: [ci skip] fine, do the move also on the host, pointless to run all through the container * netdata/packaging: [ci skip] Do the move through the container. Also, move a more specific folder * netdata/packaging: [ci skip] move as w00t * netdata/packaging: [ci skip] fix * netdata/packaging: sync permissions handling, round two * netdata/packaging: scratch those hacks, we should do latest differently * netdata/packaging: [ci skip] Set up rpm version string depending on whether we are on latest or not * netdata/packaging: [ci skip] Branch the code here, latest build up should be on the commit rather the tar files * netdata/packaging: Attempt to handle latest version build up * netdata/packaging: [ci skip] Dont continue processing if the file was not generated. Also do the tagging before autoreconf * netdata/packaging: [ci skip] fixes and nits * netdata/packaging: [ci skip] When doing annotated tags, you need to provide a message otherwise an editor pops up and will block the build * netdata/packaging: on the latest code case go all the way host level operations * netdata/packaging: [ci skip] Do not modify version, no longer need it because we properly generated the package with the right version * netdata/packaging: [ci skip] fix sensors line, you missed the Recommends keyword * netdata/packaging: Some code style (remove tabification from some tags) and also remove Recommends, we start with required packages for build and runtime and then we document further needs * netdata/packaging: [ci skip] Make sure you get epel in there, its needed * netdata/packaging: [ci skip] Fix bogus date * netdata/packaging: [ci skip] add these packages to include functionality * netdata/packaging: [ci skip] more fine grained dependency handling * netdata/packaging: [ci skip] Dependency hell - do not depend on libnetacctfilter if on el/7 * netdata/packaging: [ci skip] Be serious, that is not what you do when building the package silly * netdata/packaging: [ci skip] define directory attributes too * netdata/packaging: [ci skip] mystery unfold - comment out as we need to figure out how to handle missing directories that our installer creates if necessary * netdata/packaging: [ci skip] Make sure you properly set deployment repo based on commit message * netdata/packaging: [ci skip] Install these packages for specific versions, remove optimisations for now * netdata/packaging: [ci skip] Make package yanking flexible, so that we can manage both netdata and netdata-edge cleanup properly * netdata/packaging: [ci skip] Actually, set user at travis layer and let the script consume it only. We need to be sure the same user is used on yanking and the deployment process * netdata/packaging: [ci skip] wow pkatsoul * netdata/packaging: Dont forget to install some of the enabled plugins * netdata/packaging: nfacct.plugin not really working on rhel, disable temporarily * netdata/packaging: include installed directories to package * netdata/packaging: [ci skip] nits * netdata/packaging: fixes * netdata/packaging: [ci skip] dont add ghost files * netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there * netdata/packaging: [ci skip] Extreme - override _libexecdir macro * Revert "netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there" This reverts commit 320102c96284e4622266f6f089d6ce87319976f3. That wasnt really the problem here * netdata/packaging: [ci skip] Include contents of dir here * netdata/packaging: fixes * netdata/packaging: [ci skip] Fixes and additions - Tighter permissions for some files - Introduce go.d plugin install (likely broken like this, dont recall if bash style code is fine here) - Raise the path overrides to the spec level, otherwise we build with the overrides and package with the defaults * netdata/packaging: [ci skip] Missed an invalid variable. These files are under our current path, no need for complexity * netdata/packaging: [ci skip] bring sha method onboard * netdata/packaging: [ci skip] Wrong path provided, should be under build root * netdata/packaging: [ci skip] Add registry directory * netdata/packaging: [ci skip] add missing config directory definitions * netdata/packaging: [ci skip] Fix missing dirs * netdata/packaging:[ci fix] hos * netdata/packaging: [ci skip] Fixes and additions - Change versioning to v1.15.0.114 from v1.15.0114 - Add CUPS, Xenstat, json-c * netdata/packaging: [ci skip] fix package dependencies on the builder setup, otherwise spec will fail * netdata/packaging: [ci skip] limit xenstat to suse and fedora for now * netdata/packaging: [ci skip] separate fedora and suse cases, unfortunately suse has different package names.... * netdata/packaging: [ci skip] yajl is not the same package everywhere, of course * netdata/packagin: [ci skip] skip xenstat for now * netdata/packaging: [ci skip] remove the vvvvvvvvv * netdata/packaging: [ci skip] one more fix attempt * netdata/packaging: [ci skip] Spec file extraction is different when building from stable. We *must* fetch it from the tarball rather than the local one * netdata/packaging: [ci skip] spec_file defined on all cases, latest or stable. Also move latest spec file copy after make dist operation, that is where is suppose to be * netdata/packaging: [ci skip] Tag source with the local version, as we build upon the very latest * netdata/packaging: oopsie -- remove json-c from that place, it was forgotten * netdata/packaging: fix packaging, even though devel is consistent between fedora and suse, the binary one is not .... (also fix default perms to be root:netdata rather root:root) * netdata/packaging: Suse love - again, libuuid-devel same, but libuuid is named libuuid1 on suse...... * netdata/packaging: [ci skip] libcap same.... * netdata/packaging: [ci skip] use the noreplace directive for the configuration files * netdata/packaging: [ci skip] Bring back master as the triggering repository * netdata/packaging: [ci skip] attempt to enable/disable service where necessary. Default preset action requires further setup, so we override that * Revert "netdata/packaging: [ci skip] Bring back master as the triggering repository" This reverts commit 9b25a622dc5f12b1539f6863bab52d7bb225fd8d. ** Reverting as we need to test further the service enable action ** * netdata/packaging: [ci skip] revert this change - not the right way, we have empty files * netdata/packaging: [ci skip] Add daemon-reload option, to make sure systemd learns about the newly installed service * netdata/packaging: [ci skip] Attempt to silence codacy by factoring out the few small methods for common usage, then kill directories to reduce complexity adn thats it * netdata/packaging: [ci skip] Just making sure codacy reprocess everything * netdata/packaging: [ci skip] missed one adjustment * netdata/packaging: python style - print shouldnt have space before open parenthesis. Also, add restart on all cases on the spec file * netdata/packaging: [ci skip] fix syntax * netdata/packaging: [ci skip] syntax fixes 2 * netdata/packaging: [ci skip] another miss * netdata/packaging: [ci skip] You need to explicitly trigger a restart, apparently * netdata/packaging: [ci skip] override packaging user definition temporarily, to get things going on testing
2019-07-03 09:18:17 +02:00
Summary: Real-time performance monitoring, done right!
2019-02-01 10:52:40 +01:00
Name: netdata
2019-09-16 10:53:06 +02:00
Version: %{version}
Release: 1%{?dist}
License: GPLv3+
Group: Applications/System
Source0: https://github.com/%{name}/%{name}/releases/download/%{version}/%{name}-%{version}.tar.gz
URL: http://my-%{name}.io
netdata/packaging: Netdata binary packages generation - spec file refinement, support for nightlies (RPM) (#6369) Detailed list of changes: * netdata/packaging: First round of netdata.spec refactoring - package dependencies - Remove freeipmi/nfacct plugin flags. We auto-detect all plugins by decision - Start refactor of package dependencies - Add missing dependencies, with respect to distro peculiarities - Adjust existing dependencies, so that distro-specific package names is applied * netdata/packaging: add packaging trigger mechanism on binary-packages-specfile-cleanup to help testing * netdata/packaging: WIP - Allow building nightly versions for RPM (Still investigating the right version scheme) * netdata/packaging: Attempt to fix syntax errors - wow travis, mercy * netdata/packaging: tiny nits and fixes 1) there was a syntax error in version definition 2) bring default deploy repo name at the top, then overwrite when latest is published 3) Leave a comment * netdata/packaging: Move these core package requirements to the right section * netdata/packaging: libuv requires >= 1, missed to add that on devel libs * netdata/packaging: some comments, also when you put logrotate in our conf directory, link it to actual log rotate * netdata/packaging: Adjust configure options on spec file (align with netdata-installer.sh) * netdata/packaging: In order to properly support packaging both latest and stable releases, you need to star that extraction part, folder name contains the version with the hash that we cant tell * netdata/packaging: until we fix versioning, bring the original unprocessed spec file and pass the version we like in * netdata/packaging: fix version string in the spec file * netdata/packaging: Replace source path, we need to work with whatever we downloaded (to be refined) * netdata/packaging: [ci skip] you mixed the paths, reverse them * netdata/packaging: [ci skip] attempt to fix source path when needed * netdata/packaging: fixes and nits 1) generalize the spec file refinement method 2) Do both replacement that way 3) Adjust file names and paths * netdata/packaging: Replace Source0 explicitly and also make sure you remove extra new lines that may confuse the replacement later * netdata/packaging: [ci skip] move env outside, add some more log * netdata/packaging: [ci skip] adjust logic of replacing tag lines in spec file * netdata/packaging: [ci skip] Alas, fetch the archive, rename the structure to the new version, repack and proceed * netdata/packaging: [ci skip] Extract to specific path * netdata/packaging: [ci skip] replace problematic tar call with the respective pythonized one * netdata/packaging: [ci skip] Add new friendly octal format for chmod * netdata/packaging: [ci skip] more checks * netdata/packaging: [ci skip] dont chmod, chown the whole folder after extraction * netdata/packaging: nit * netdata/packaging: [ci skip] attempt to fix permissions differently * netdata/packaging: [ci skip] Another hack, attempt to fix permissions on the host directly * netdata/packaging: [ci skip] fine, do the move also on the host, pointless to run all through the container * netdata/packaging: [ci skip] Do the move through the container. Also, move a more specific folder * netdata/packaging: [ci skip] move as w00t * netdata/packaging: [ci skip] fix * netdata/packaging: sync permissions handling, round two * netdata/packaging: scratch those hacks, we should do latest differently * netdata/packaging: [ci skip] Set up rpm version string depending on whether we are on latest or not * netdata/packaging: [ci skip] Branch the code here, latest build up should be on the commit rather the tar files * netdata/packaging: Attempt to handle latest version build up * netdata/packaging: [ci skip] Dont continue processing if the file was not generated. Also do the tagging before autoreconf * netdata/packaging: [ci skip] fixes and nits * netdata/packaging: [ci skip] When doing annotated tags, you need to provide a message otherwise an editor pops up and will block the build * netdata/packaging: on the latest code case go all the way host level operations * netdata/packaging: [ci skip] Do not modify version, no longer need it because we properly generated the package with the right version * netdata/packaging: [ci skip] fix sensors line, you missed the Recommends keyword * netdata/packaging: Some code style (remove tabification from some tags) and also remove Recommends, we start with required packages for build and runtime and then we document further needs * netdata/packaging: [ci skip] Make sure you get epel in there, its needed * netdata/packaging: [ci skip] Fix bogus date * netdata/packaging: [ci skip] add these packages to include functionality * netdata/packaging: [ci skip] more fine grained dependency handling * netdata/packaging: [ci skip] Dependency hell - do not depend on libnetacctfilter if on el/7 * netdata/packaging: [ci skip] Be serious, that is not what you do when building the package silly * netdata/packaging: [ci skip] define directory attributes too * netdata/packaging: [ci skip] mystery unfold - comment out as we need to figure out how to handle missing directories that our installer creates if necessary * netdata/packaging: [ci skip] Make sure you properly set deployment repo based on commit message * netdata/packaging: [ci skip] Install these packages for specific versions, remove optimisations for now * netdata/packaging: [ci skip] Make package yanking flexible, so that we can manage both netdata and netdata-edge cleanup properly * netdata/packaging: [ci skip] Actually, set user at travis layer and let the script consume it only. We need to be sure the same user is used on yanking and the deployment process * netdata/packaging: [ci skip] wow pkatsoul * netdata/packaging: Dont forget to install some of the enabled plugins * netdata/packaging: nfacct.plugin not really working on rhel, disable temporarily * netdata/packaging: include installed directories to package * netdata/packaging: [ci skip] nits * netdata/packaging: fixes * netdata/packaging: [ci skip] dont add ghost files * netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there * netdata/packaging: [ci skip] Extreme - override _libexecdir macro * Revert "netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there" This reverts commit 320102c96284e4622266f6f089d6ce87319976f3. That wasnt really the problem here * netdata/packaging: [ci skip] Include contents of dir here * netdata/packaging: fixes * netdata/packaging: [ci skip] Fixes and additions - Tighter permissions for some files - Introduce go.d plugin install (likely broken like this, dont recall if bash style code is fine here) - Raise the path overrides to the spec level, otherwise we build with the overrides and package with the defaults * netdata/packaging: [ci skip] Missed an invalid variable. These files are under our current path, no need for complexity * netdata/packaging: [ci skip] bring sha method onboard * netdata/packaging: [ci skip] Wrong path provided, should be under build root * netdata/packaging: [ci skip] Add registry directory * netdata/packaging: [ci skip] add missing config directory definitions * netdata/packaging: [ci skip] Fix missing dirs * netdata/packaging:[ci fix] hos * netdata/packaging: [ci skip] Fixes and additions - Change versioning to v1.15.0.114 from v1.15.0114 - Add CUPS, Xenstat, json-c * netdata/packaging: [ci skip] fix package dependencies on the builder setup, otherwise spec will fail * netdata/packaging: [ci skip] limit xenstat to suse and fedora for now * netdata/packaging: [ci skip] separate fedora and suse cases, unfortunately suse has different package names.... * netdata/packaging: [ci skip] yajl is not the same package everywhere, of course * netdata/packagin: [ci skip] skip xenstat for now * netdata/packaging: [ci skip] remove the vvvvvvvvv * netdata/packaging: [ci skip] one more fix attempt * netdata/packaging: [ci skip] Spec file extraction is different when building from stable. We *must* fetch it from the tarball rather than the local one * netdata/packaging: [ci skip] spec_file defined on all cases, latest or stable. Also move latest spec file copy after make dist operation, that is where is suppose to be * netdata/packaging: [ci skip] Tag source with the local version, as we build upon the very latest * netdata/packaging: oopsie -- remove json-c from that place, it was forgotten * netdata/packaging: fix packaging, even though devel is consistent between fedora and suse, the binary one is not .... (also fix default perms to be root:netdata rather root:root) * netdata/packaging: Suse love - again, libuuid-devel same, but libuuid is named libuuid1 on suse...... * netdata/packaging: [ci skip] libcap same.... * netdata/packaging: [ci skip] use the noreplace directive for the configuration files * netdata/packaging: [ci skip] Bring back master as the triggering repository * netdata/packaging: [ci skip] attempt to enable/disable service where necessary. Default preset action requires further setup, so we override that * Revert "netdata/packaging: [ci skip] Bring back master as the triggering repository" This reverts commit 9b25a622dc5f12b1539f6863bab52d7bb225fd8d. ** Reverting as we need to test further the service enable action ** * netdata/packaging: [ci skip] revert this change - not the right way, we have empty files * netdata/packaging: [ci skip] Add daemon-reload option, to make sure systemd learns about the newly installed service * netdata/packaging: [ci skip] Attempt to silence codacy by factoring out the few small methods for common usage, then kill directories to reduce complexity adn thats it * netdata/packaging: [ci skip] Just making sure codacy reprocess everything * netdata/packaging: [ci skip] missed one adjustment * netdata/packaging: python style - print shouldnt have space before open parenthesis. Also, add restart on all cases on the spec file * netdata/packaging: [ci skip] fix syntax * netdata/packaging: [ci skip] syntax fixes 2 * netdata/packaging: [ci skip] another miss * netdata/packaging: [ci skip] You need to explicitly trigger a restart, apparently * netdata/packaging: [ci skip] override packaging user definition temporarily, to get things going on testing
2019-07-03 09:18:17 +02:00
# Remove conflicting EPEL packages
Obsoletes: %{name}-conf
Obsoletes: %{name}-data
netdata/packaging: Netdata binary packages generation - spec file refinement, support for nightlies (RPM) (#6369) Detailed list of changes: * netdata/packaging: First round of netdata.spec refactoring - package dependencies - Remove freeipmi/nfacct plugin flags. We auto-detect all plugins by decision - Start refactor of package dependencies - Add missing dependencies, with respect to distro peculiarities - Adjust existing dependencies, so that distro-specific package names is applied * netdata/packaging: add packaging trigger mechanism on binary-packages-specfile-cleanup to help testing * netdata/packaging: WIP - Allow building nightly versions for RPM (Still investigating the right version scheme) * netdata/packaging: Attempt to fix syntax errors - wow travis, mercy * netdata/packaging: tiny nits and fixes 1) there was a syntax error in version definition 2) bring default deploy repo name at the top, then overwrite when latest is published 3) Leave a comment * netdata/packaging: Move these core package requirements to the right section * netdata/packaging: libuv requires >= 1, missed to add that on devel libs * netdata/packaging: some comments, also when you put logrotate in our conf directory, link it to actual log rotate * netdata/packaging: Adjust configure options on spec file (align with netdata-installer.sh) * netdata/packaging: In order to properly support packaging both latest and stable releases, you need to star that extraction part, folder name contains the version with the hash that we cant tell * netdata/packaging: until we fix versioning, bring the original unprocessed spec file and pass the version we like in * netdata/packaging: fix version string in the spec file * netdata/packaging: Replace source path, we need to work with whatever we downloaded (to be refined) * netdata/packaging: [ci skip] you mixed the paths, reverse them * netdata/packaging: [ci skip] attempt to fix source path when needed * netdata/packaging: fixes and nits 1) generalize the spec file refinement method 2) Do both replacement that way 3) Adjust file names and paths * netdata/packaging: Replace Source0 explicitly and also make sure you remove extra new lines that may confuse the replacement later * netdata/packaging: [ci skip] move env outside, add some more log * netdata/packaging: [ci skip] adjust logic of replacing tag lines in spec file * netdata/packaging: [ci skip] Alas, fetch the archive, rename the structure to the new version, repack and proceed * netdata/packaging: [ci skip] Extract to specific path * netdata/packaging: [ci skip] replace problematic tar call with the respective pythonized one * netdata/packaging: [ci skip] Add new friendly octal format for chmod * netdata/packaging: [ci skip] more checks * netdata/packaging: [ci skip] dont chmod, chown the whole folder after extraction * netdata/packaging: nit * netdata/packaging: [ci skip] attempt to fix permissions differently * netdata/packaging: [ci skip] Another hack, attempt to fix permissions on the host directly * netdata/packaging: [ci skip] fine, do the move also on the host, pointless to run all through the container * netdata/packaging: [ci skip] Do the move through the container. Also, move a more specific folder * netdata/packaging: [ci skip] move as w00t * netdata/packaging: [ci skip] fix * netdata/packaging: sync permissions handling, round two * netdata/packaging: scratch those hacks, we should do latest differently * netdata/packaging: [ci skip] Set up rpm version string depending on whether we are on latest or not * netdata/packaging: [ci skip] Branch the code here, latest build up should be on the commit rather the tar files * netdata/packaging: Attempt to handle latest version build up * netdata/packaging: [ci skip] Dont continue processing if the file was not generated. Also do the tagging before autoreconf * netdata/packaging: [ci skip] fixes and nits * netdata/packaging: [ci skip] When doing annotated tags, you need to provide a message otherwise an editor pops up and will block the build * netdata/packaging: on the latest code case go all the way host level operations * netdata/packaging: [ci skip] Do not modify version, no longer need it because we properly generated the package with the right version * netdata/packaging: [ci skip] fix sensors line, you missed the Recommends keyword * netdata/packaging: Some code style (remove tabification from some tags) and also remove Recommends, we start with required packages for build and runtime and then we document further needs * netdata/packaging: [ci skip] Make sure you get epel in there, its needed * netdata/packaging: [ci skip] Fix bogus date * netdata/packaging: [ci skip] add these packages to include functionality * netdata/packaging: [ci skip] more fine grained dependency handling * netdata/packaging: [ci skip] Dependency hell - do not depend on libnetacctfilter if on el/7 * netdata/packaging: [ci skip] Be serious, that is not what you do when building the package silly * netdata/packaging: [ci skip] define directory attributes too * netdata/packaging: [ci skip] mystery unfold - comment out as we need to figure out how to handle missing directories that our installer creates if necessary * netdata/packaging: [ci skip] Make sure you properly set deployment repo based on commit message * netdata/packaging: [ci skip] Install these packages for specific versions, remove optimisations for now * netdata/packaging: [ci skip] Make package yanking flexible, so that we can manage both netdata and netdata-edge cleanup properly * netdata/packaging: [ci skip] Actually, set user at travis layer and let the script consume it only. We need to be sure the same user is used on yanking and the deployment process * netdata/packaging: [ci skip] wow pkatsoul * netdata/packaging: Dont forget to install some of the enabled plugins * netdata/packaging: nfacct.plugin not really working on rhel, disable temporarily * netdata/packaging: include installed directories to package * netdata/packaging: [ci skip] nits * netdata/packaging: fixes * netdata/packaging: [ci skip] dont add ghost files * netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there * netdata/packaging: [ci skip] Extreme - override _libexecdir macro * Revert "netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there" This reverts commit 320102c96284e4622266f6f089d6ce87319976f3. That wasnt really the problem here * netdata/packaging: [ci skip] Include contents of dir here * netdata/packaging: fixes * netdata/packaging: [ci skip] Fixes and additions - Tighter permissions for some files - Introduce go.d plugin install (likely broken like this, dont recall if bash style code is fine here) - Raise the path overrides to the spec level, otherwise we build with the overrides and package with the defaults * netdata/packaging: [ci skip] Missed an invalid variable. These files are under our current path, no need for complexity * netdata/packaging: [ci skip] bring sha method onboard * netdata/packaging: [ci skip] Wrong path provided, should be under build root * netdata/packaging: [ci skip] Add registry directory * netdata/packaging: [ci skip] add missing config directory definitions * netdata/packaging: [ci skip] Fix missing dirs * netdata/packaging:[ci fix] hos * netdata/packaging: [ci skip] Fixes and additions - Change versioning to v1.15.0.114 from v1.15.0114 - Add CUPS, Xenstat, json-c * netdata/packaging: [ci skip] fix package dependencies on the builder setup, otherwise spec will fail * netdata/packaging: [ci skip] limit xenstat to suse and fedora for now * netdata/packaging: [ci skip] separate fedora and suse cases, unfortunately suse has different package names.... * netdata/packaging: [ci skip] yajl is not the same package everywhere, of course * netdata/packagin: [ci skip] skip xenstat for now * netdata/packaging: [ci skip] remove the vvvvvvvvv * netdata/packaging: [ci skip] one more fix attempt * netdata/packaging: [ci skip] Spec file extraction is different when building from stable. We *must* fetch it from the tarball rather than the local one * netdata/packaging: [ci skip] spec_file defined on all cases, latest or stable. Also move latest spec file copy after make dist operation, that is where is suppose to be * netdata/packaging: [ci skip] Tag source with the local version, as we build upon the very latest * netdata/packaging: oopsie -- remove json-c from that place, it was forgotten * netdata/packaging: fix packaging, even though devel is consistent between fedora and suse, the binary one is not .... (also fix default perms to be root:netdata rather root:root) * netdata/packaging: Suse love - again, libuuid-devel same, but libuuid is named libuuid1 on suse...... * netdata/packaging: [ci skip] libcap same.... * netdata/packaging: [ci skip] use the noreplace directive for the configuration files * netdata/packaging: [ci skip] Bring back master as the triggering repository * netdata/packaging: [ci skip] attempt to enable/disable service where necessary. Default preset action requires further setup, so we override that * Revert "netdata/packaging: [ci skip] Bring back master as the triggering repository" This reverts commit 9b25a622dc5f12b1539f6863bab52d7bb225fd8d. ** Reverting as we need to test further the service enable action ** * netdata/packaging: [ci skip] revert this change - not the right way, we have empty files * netdata/packaging: [ci skip] Add daemon-reload option, to make sure systemd learns about the newly installed service * netdata/packaging: [ci skip] Attempt to silence codacy by factoring out the few small methods for common usage, then kill directories to reduce complexity adn thats it * netdata/packaging: [ci skip] Just making sure codacy reprocess everything * netdata/packaging: [ci skip] missed one adjustment * netdata/packaging: python style - print shouldnt have space before open parenthesis. Also, add restart on all cases on the spec file * netdata/packaging: [ci skip] fix syntax * netdata/packaging: [ci skip] syntax fixes 2 * netdata/packaging: [ci skip] another miss * netdata/packaging: [ci skip] You need to explicitly trigger a restart, apparently * netdata/packaging: [ci skip] override packaging user definition temporarily, to get things going on testing
2019-07-03 09:18:17 +02:00
# #####################################################################
# Core build/install/runtime dependencies
# #####################################################################
# Build dependencies
#
BuildRequires: gcc
BuildRequires: gcc-c++
netdata/packaging: Netdata binary packages generation - spec file refinement, support for nightlies (RPM) (#6369) Detailed list of changes: * netdata/packaging: First round of netdata.spec refactoring - package dependencies - Remove freeipmi/nfacct plugin flags. We auto-detect all plugins by decision - Start refactor of package dependencies - Add missing dependencies, with respect to distro peculiarities - Adjust existing dependencies, so that distro-specific package names is applied * netdata/packaging: add packaging trigger mechanism on binary-packages-specfile-cleanup to help testing * netdata/packaging: WIP - Allow building nightly versions for RPM (Still investigating the right version scheme) * netdata/packaging: Attempt to fix syntax errors - wow travis, mercy * netdata/packaging: tiny nits and fixes 1) there was a syntax error in version definition 2) bring default deploy repo name at the top, then overwrite when latest is published 3) Leave a comment * netdata/packaging: Move these core package requirements to the right section * netdata/packaging: libuv requires >= 1, missed to add that on devel libs * netdata/packaging: some comments, also when you put logrotate in our conf directory, link it to actual log rotate * netdata/packaging: Adjust configure options on spec file (align with netdata-installer.sh) * netdata/packaging: In order to properly support packaging both latest and stable releases, you need to star that extraction part, folder name contains the version with the hash that we cant tell * netdata/packaging: until we fix versioning, bring the original unprocessed spec file and pass the version we like in * netdata/packaging: fix version string in the spec file * netdata/packaging: Replace source path, we need to work with whatever we downloaded (to be refined) * netdata/packaging: [ci skip] you mixed the paths, reverse them * netdata/packaging: [ci skip] attempt to fix source path when needed * netdata/packaging: fixes and nits 1) generalize the spec file refinement method 2) Do both replacement that way 3) Adjust file names and paths * netdata/packaging: Replace Source0 explicitly and also make sure you remove extra new lines that may confuse the replacement later * netdata/packaging: [ci skip] move env outside, add some more log * netdata/packaging: [ci skip] adjust logic of replacing tag lines in spec file * netdata/packaging: [ci skip] Alas, fetch the archive, rename the structure to the new version, repack and proceed * netdata/packaging: [ci skip] Extract to specific path * netdata/packaging: [ci skip] replace problematic tar call with the respective pythonized one * netdata/packaging: [ci skip] Add new friendly octal format for chmod * netdata/packaging: [ci skip] more checks * netdata/packaging: [ci skip] dont chmod, chown the whole folder after extraction * netdata/packaging: nit * netdata/packaging: [ci skip] attempt to fix permissions differently * netdata/packaging: [ci skip] Another hack, attempt to fix permissions on the host directly * netdata/packaging: [ci skip] fine, do the move also on the host, pointless to run all through the container * netdata/packaging: [ci skip] Do the move through the container. Also, move a more specific folder * netdata/packaging: [ci skip] move as w00t * netdata/packaging: [ci skip] fix * netdata/packaging: sync permissions handling, round two * netdata/packaging: scratch those hacks, we should do latest differently * netdata/packaging: [ci skip] Set up rpm version string depending on whether we are on latest or not * netdata/packaging: [ci skip] Branch the code here, latest build up should be on the commit rather the tar files * netdata/packaging: Attempt to handle latest version build up * netdata/packaging: [ci skip] Dont continue processing if the file was not generated. Also do the tagging before autoreconf * netdata/packaging: [ci skip] fixes and nits * netdata/packaging: [ci skip] When doing annotated tags, you need to provide a message otherwise an editor pops up and will block the build * netdata/packaging: on the latest code case go all the way host level operations * netdata/packaging: [ci skip] Do not modify version, no longer need it because we properly generated the package with the right version * netdata/packaging: [ci skip] fix sensors line, you missed the Recommends keyword * netdata/packaging: Some code style (remove tabification from some tags) and also remove Recommends, we start with required packages for build and runtime and then we document further needs * netdata/packaging: [ci skip] Make sure you get epel in there, its needed * netdata/packaging: [ci skip] Fix bogus date * netdata/packaging: [ci skip] add these packages to include functionality * netdata/packaging: [ci skip] more fine grained dependency handling * netdata/packaging: [ci skip] Dependency hell - do not depend on libnetacctfilter if on el/7 * netdata/packaging: [ci skip] Be serious, that is not what you do when building the package silly * netdata/packaging: [ci skip] define directory attributes too * netdata/packaging: [ci skip] mystery unfold - comment out as we need to figure out how to handle missing directories that our installer creates if necessary * netdata/packaging: [ci skip] Make sure you properly set deployment repo based on commit message * netdata/packaging: [ci skip] Install these packages for specific versions, remove optimisations for now * netdata/packaging: [ci skip] Make package yanking flexible, so that we can manage both netdata and netdata-edge cleanup properly * netdata/packaging: [ci skip] Actually, set user at travis layer and let the script consume it only. We need to be sure the same user is used on yanking and the deployment process * netdata/packaging: [ci skip] wow pkatsoul * netdata/packaging: Dont forget to install some of the enabled plugins * netdata/packaging: nfacct.plugin not really working on rhel, disable temporarily * netdata/packaging: include installed directories to package * netdata/packaging: [ci skip] nits * netdata/packaging: fixes * netdata/packaging: [ci skip] dont add ghost files * netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there * netdata/packaging: [ci skip] Extreme - override _libexecdir macro * Revert "netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there" This reverts commit 320102c96284e4622266f6f089d6ce87319976f3. That wasnt really the problem here * netdata/packaging: [ci skip] Include contents of dir here * netdata/packaging: fixes * netdata/packaging: [ci skip] Fixes and additions - Tighter permissions for some files - Introduce go.d plugin install (likely broken like this, dont recall if bash style code is fine here) - Raise the path overrides to the spec level, otherwise we build with the overrides and package with the defaults * netdata/packaging: [ci skip] Missed an invalid variable. These files are under our current path, no need for complexity * netdata/packaging: [ci skip] bring sha method onboard * netdata/packaging: [ci skip] Wrong path provided, should be under build root * netdata/packaging: [ci skip] Add registry directory * netdata/packaging: [ci skip] add missing config directory definitions * netdata/packaging: [ci skip] Fix missing dirs * netdata/packaging:[ci fix] hos * netdata/packaging: [ci skip] Fixes and additions - Change versioning to v1.15.0.114 from v1.15.0114 - Add CUPS, Xenstat, json-c * netdata/packaging: [ci skip] fix package dependencies on the builder setup, otherwise spec will fail * netdata/packaging: [ci skip] limit xenstat to suse and fedora for now * netdata/packaging: [ci skip] separate fedora and suse cases, unfortunately suse has different package names.... * netdata/packaging: [ci skip] yajl is not the same package everywhere, of course * netdata/packagin: [ci skip] skip xenstat for now * netdata/packaging: [ci skip] remove the vvvvvvvvv * netdata/packaging: [ci skip] one more fix attempt * netdata/packaging: [ci skip] Spec file extraction is different when building from stable. We *must* fetch it from the tarball rather than the local one * netdata/packaging: [ci skip] spec_file defined on all cases, latest or stable. Also move latest spec file copy after make dist operation, that is where is suppose to be * netdata/packaging: [ci skip] Tag source with the local version, as we build upon the very latest * netdata/packaging: oopsie -- remove json-c from that place, it was forgotten * netdata/packaging: fix packaging, even though devel is consistent between fedora and suse, the binary one is not .... (also fix default perms to be root:netdata rather root:root) * netdata/packaging: Suse love - again, libuuid-devel same, but libuuid is named libuuid1 on suse...... * netdata/packaging: [ci skip] libcap same.... * netdata/packaging: [ci skip] use the noreplace directive for the configuration files * netdata/packaging: [ci skip] Bring back master as the triggering repository * netdata/packaging: [ci skip] attempt to enable/disable service where necessary. Default preset action requires further setup, so we override that * Revert "netdata/packaging: [ci skip] Bring back master as the triggering repository" This reverts commit 9b25a622dc5f12b1539f6863bab52d7bb225fd8d. ** Reverting as we need to test further the service enable action ** * netdata/packaging: [ci skip] revert this change - not the right way, we have empty files * netdata/packaging: [ci skip] Add daemon-reload option, to make sure systemd learns about the newly installed service * netdata/packaging: [ci skip] Attempt to silence codacy by factoring out the few small methods for common usage, then kill directories to reduce complexity adn thats it * netdata/packaging: [ci skip] Just making sure codacy reprocess everything * netdata/packaging: [ci skip] missed one adjustment * netdata/packaging: python style - print shouldnt have space before open parenthesis. Also, add restart on all cases on the spec file * netdata/packaging: [ci skip] fix syntax * netdata/packaging: [ci skip] syntax fixes 2 * netdata/packaging: [ci skip] another miss * netdata/packaging: [ci skip] You need to explicitly trigger a restart, apparently * netdata/packaging: [ci skip] override packaging user definition temporarily, to get things going on testing
2019-07-03 09:18:17 +02:00
BuildRequires: make
BuildRequires: git-core
BuildRequires: cmake
%if 0%{!?suse_version:1}
BuildRequires: ninja-build
%else
BuildRequires: ninja
%endif
netdata/packaging: Netdata binary packages generation - spec file refinement, support for nightlies (RPM) (#6369) Detailed list of changes: * netdata/packaging: First round of netdata.spec refactoring - package dependencies - Remove freeipmi/nfacct plugin flags. We auto-detect all plugins by decision - Start refactor of package dependencies - Add missing dependencies, with respect to distro peculiarities - Adjust existing dependencies, so that distro-specific package names is applied * netdata/packaging: add packaging trigger mechanism on binary-packages-specfile-cleanup to help testing * netdata/packaging: WIP - Allow building nightly versions for RPM (Still investigating the right version scheme) * netdata/packaging: Attempt to fix syntax errors - wow travis, mercy * netdata/packaging: tiny nits and fixes 1) there was a syntax error in version definition 2) bring default deploy repo name at the top, then overwrite when latest is published 3) Leave a comment * netdata/packaging: Move these core package requirements to the right section * netdata/packaging: libuv requires >= 1, missed to add that on devel libs * netdata/packaging: some comments, also when you put logrotate in our conf directory, link it to actual log rotate * netdata/packaging: Adjust configure options on spec file (align with netdata-installer.sh) * netdata/packaging: In order to properly support packaging both latest and stable releases, you need to star that extraction part, folder name contains the version with the hash that we cant tell * netdata/packaging: until we fix versioning, bring the original unprocessed spec file and pass the version we like in * netdata/packaging: fix version string in the spec file * netdata/packaging: Replace source path, we need to work with whatever we downloaded (to be refined) * netdata/packaging: [ci skip] you mixed the paths, reverse them * netdata/packaging: [ci skip] attempt to fix source path when needed * netdata/packaging: fixes and nits 1) generalize the spec file refinement method 2) Do both replacement that way 3) Adjust file names and paths * netdata/packaging: Replace Source0 explicitly and also make sure you remove extra new lines that may confuse the replacement later * netdata/packaging: [ci skip] move env outside, add some more log * netdata/packaging: [ci skip] adjust logic of replacing tag lines in spec file * netdata/packaging: [ci skip] Alas, fetch the archive, rename the structure to the new version, repack and proceed * netdata/packaging: [ci skip] Extract to specific path * netdata/packaging: [ci skip] replace problematic tar call with the respective pythonized one * netdata/packaging: [ci skip] Add new friendly octal format for chmod * netdata/packaging: [ci skip] more checks * netdata/packaging: [ci skip] dont chmod, chown the whole folder after extraction * netdata/packaging: nit * netdata/packaging: [ci skip] attempt to fix permissions differently * netdata/packaging: [ci skip] Another hack, attempt to fix permissions on the host directly * netdata/packaging: [ci skip] fine, do the move also on the host, pointless to run all through the container * netdata/packaging: [ci skip] Do the move through the container. Also, move a more specific folder * netdata/packaging: [ci skip] move as w00t * netdata/packaging: [ci skip] fix * netdata/packaging: sync permissions handling, round two * netdata/packaging: scratch those hacks, we should do latest differently * netdata/packaging: [ci skip] Set up rpm version string depending on whether we are on latest or not * netdata/packaging: [ci skip] Branch the code here, latest build up should be on the commit rather the tar files * netdata/packaging: Attempt to handle latest version build up * netdata/packaging: [ci skip] Dont continue processing if the file was not generated. Also do the tagging before autoreconf * netdata/packaging: [ci skip] fixes and nits * netdata/packaging: [ci skip] When doing annotated tags, you need to provide a message otherwise an editor pops up and will block the build * netdata/packaging: on the latest code case go all the way host level operations * netdata/packaging: [ci skip] Do not modify version, no longer need it because we properly generated the package with the right version * netdata/packaging: [ci skip] fix sensors line, you missed the Recommends keyword * netdata/packaging: Some code style (remove tabification from some tags) and also remove Recommends, we start with required packages for build and runtime and then we document further needs * netdata/packaging: [ci skip] Make sure you get epel in there, its needed * netdata/packaging: [ci skip] Fix bogus date * netdata/packaging: [ci skip] add these packages to include functionality * netdata/packaging: [ci skip] more fine grained dependency handling * netdata/packaging: [ci skip] Dependency hell - do not depend on libnetacctfilter if on el/7 * netdata/packaging: [ci skip] Be serious, that is not what you do when building the package silly * netdata/packaging: [ci skip] define directory attributes too * netdata/packaging: [ci skip] mystery unfold - comment out as we need to figure out how to handle missing directories that our installer creates if necessary * netdata/packaging: [ci skip] Make sure you properly set deployment repo based on commit message * netdata/packaging: [ci skip] Install these packages for specific versions, remove optimisations for now * netdata/packaging: [ci skip] Make package yanking flexible, so that we can manage both netdata and netdata-edge cleanup properly * netdata/packaging: [ci skip] Actually, set user at travis layer and let the script consume it only. We need to be sure the same user is used on yanking and the deployment process * netdata/packaging: [ci skip] wow pkatsoul * netdata/packaging: Dont forget to install some of the enabled plugins * netdata/packaging: nfacct.plugin not really working on rhel, disable temporarily * netdata/packaging: include installed directories to package * netdata/packaging: [ci skip] nits * netdata/packaging: fixes * netdata/packaging: [ci skip] dont add ghost files * netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there * netdata/packaging: [ci skip] Extreme - override _libexecdir macro * Revert "netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there" This reverts commit 320102c96284e4622266f6f089d6ce87319976f3. That wasnt really the problem here * netdata/packaging: [ci skip] Include contents of dir here * netdata/packaging: fixes * netdata/packaging: [ci skip] Fixes and additions - Tighter permissions for some files - Introduce go.d plugin install (likely broken like this, dont recall if bash style code is fine here) - Raise the path overrides to the spec level, otherwise we build with the overrides and package with the defaults * netdata/packaging: [ci skip] Missed an invalid variable. These files are under our current path, no need for complexity * netdata/packaging: [ci skip] bring sha method onboard * netdata/packaging: [ci skip] Wrong path provided, should be under build root * netdata/packaging: [ci skip] Add registry directory * netdata/packaging: [ci skip] add missing config directory definitions * netdata/packaging: [ci skip] Fix missing dirs * netdata/packaging:[ci fix] hos * netdata/packaging: [ci skip] Fixes and additions - Change versioning to v1.15.0.114 from v1.15.0114 - Add CUPS, Xenstat, json-c * netdata/packaging: [ci skip] fix package dependencies on the builder setup, otherwise spec will fail * netdata/packaging: [ci skip] limit xenstat to suse and fedora for now * netdata/packaging: [ci skip] separate fedora and suse cases, unfortunately suse has different package names.... * netdata/packaging: [ci skip] yajl is not the same package everywhere, of course * netdata/packagin: [ci skip] skip xenstat for now * netdata/packaging: [ci skip] remove the vvvvvvvvv * netdata/packaging: [ci skip] one more fix attempt * netdata/packaging: [ci skip] Spec file extraction is different when building from stable. We *must* fetch it from the tarball rather than the local one * netdata/packaging: [ci skip] spec_file defined on all cases, latest or stable. Also move latest spec file copy after make dist operation, that is where is suppose to be * netdata/packaging: [ci skip] Tag source with the local version, as we build upon the very latest * netdata/packaging: oopsie -- remove json-c from that place, it was forgotten * netdata/packaging: fix packaging, even though devel is consistent between fedora and suse, the binary one is not .... (also fix default perms to be root:netdata rather root:root) * netdata/packaging: Suse love - again, libuuid-devel same, but libuuid is named libuuid1 on suse...... * netdata/packaging: [ci skip] libcap same.... * netdata/packaging: [ci skip] use the noreplace directive for the configuration files * netdata/packaging: [ci skip] Bring back master as the triggering repository * netdata/packaging: [ci skip] attempt to enable/disable service where necessary. Default preset action requires further setup, so we override that * Revert "netdata/packaging: [ci skip] Bring back master as the triggering repository" This reverts commit 9b25a622dc5f12b1539f6863bab52d7bb225fd8d. ** Reverting as we need to test further the service enable action ** * netdata/packaging: [ci skip] revert this change - not the right way, we have empty files * netdata/packaging: [ci skip] Add daemon-reload option, to make sure systemd learns about the newly installed service * netdata/packaging: [ci skip] Attempt to silence codacy by factoring out the few small methods for common usage, then kill directories to reduce complexity adn thats it * netdata/packaging: [ci skip] Just making sure codacy reprocess everything * netdata/packaging: [ci skip] missed one adjustment * netdata/packaging: python style - print shouldnt have space before open parenthesis. Also, add restart on all cases on the spec file * netdata/packaging: [ci skip] fix syntax * netdata/packaging: [ci skip] syntax fixes 2 * netdata/packaging: [ci skip] another miss * netdata/packaging: [ci skip] You need to explicitly trigger a restart, apparently * netdata/packaging: [ci skip] override packaging user definition temporarily, to get things going on testing
2019-07-03 09:18:17 +02:00
BuildRequires: pkgconfig
BuildRequires: curl
BuildRequires: findutils
BuildRequires: pkgconfig(zlib)
BuildRequires: pkgconfig(uuid)
BuildRequires: pkgconfig(libuv)
BuildRequires: pkgconfig(openssl)
BuildRequires: pkgconfig(libcurl)
BuildRequires: pkgconfig(liblz4)
BuildRequires: pkgconfig(yaml-0.1)
BuildRequires: pkgconfig(json-c)
New logging layer (#16357) * cleanup of logging - wip * first working iteration * add errno annotator * replace old logging functions with netdata_logger() * cleanup * update error_limit * fix remanining error_limit references * work on fatal() * started working on structured logs * full cleanup * default logging to files; fix all plugins initialization * fix formatting of numbers * cleanup and reorg * fix coverity issues * cleanup obsolete code * fix formatting of numbers * fix log rotation * fix for older systems * add detection of systemd journal via stderr * finished on access.log * remove left-over transport * do not add empty fields to the logs * journal get compact uuids; X-Transaction-ID header is added in web responses * allow compiling on systems without memfd sealing * added libnetdata/uuid directory * move datetime formatters to libnetdata * add missing files * link the makefiles in libnetdata * added uuid_parse_flexi() to parse UUIDs with and without hyphens; the web server now read X-Transaction-ID and uses it for functions and web responses * added stream receiver, sender, proc plugin and pluginsd log stack * iso8601 advanced usage; line_splitter module in libnetdata; code cleanup * add message ids to streaming inbound and outbound connections * cleanup line_splitter between lines to avoid logging garbage; when killing children, kill them with SIGABRT if internal checks is enabled * send SIGABRT to external plugins only if we are not shutting down * fix cross cleanup in pluginsd parser * fatal when there is a stack error in logs * compile netdata with -fexceptions * do not kill external plugins with SIGABRT * metasync info logs to debug level * added severity to logs * added json output; added options per log output; added documentation; fixed issues mentioned * allow memfd only on linux * moved journal low level functions to journal.c/h * move health logs to daemon.log with proper priorities * fixed a couple of bugs; health log in journal * updated docs * systemd-cat-native command to push structured logs to journal from the command line * fix makefiles * restored NETDATA_LOG_SEVERITY_LEVEL * fix makefiles * systemd-cat-native can also work as the logger of Netdata scripts * do not require a socket to systemd-journal to log-as-netdata * alarm notify logs in native format * properly compare log ids * fatals log alerts; alarm-notify.sh working * fix overflow warning * alarm-notify.sh now logs the request (command line) * anotate external plugins logs with the function cmd they run * added context, component and type to alarm-notify.sh; shell sanitization removes control character and characters that may be expanded by bash * reformatted alarm-notify logs * unify cgroup-network-helper.sh * added quotes around params * charts.d.plugin switched logging to journal native * quotes for logfmt * unify the status codes of streaming receivers and senders * alarm-notify: dont log anything, if there is nothing to do * all external plugins log to stderr when running outside netdata; alarm-notify now shows an error when notifications menthod are needed but are not available * migrate cgroup-name.sh to new logging * systemd-cat-native now supports messages with newlines * socket.c logs use priority * cleanup log field types * inherit the systemd set INVOCATION_ID if found * allow systemd-cat-native to send messages to a systemd-journal-remote URL * log2journal command that can convert structured logs to journal export format * various fixes and documentation of log2journal * updated log2journal docs * updated log2journal docs * updated documentation of fields * allow compiling without libcurl * do not use socket as format string * added version information to newly added tools * updated documentation and help messages * fix the namespace socket path * print errno with error * do not timeout * updated docs * updated docs * updated docs * log2journal updated docs and params * when talking to a remote journal, systemd-cat-native batches the messages * enable lz4 compression for systemd-cat-native when sending messages to a systemd-journal-remote * Revert "enable lz4 compression for systemd-cat-native when sending messages to a systemd-journal-remote" This reverts commit b079d53c11f6687cd64d804fdd7b24c0492bf245. * note about uncompressed traffic * log2journal: code reorg and cleanup to make modular * finished rewriting log2journal * more comments * rewriting rules support * increased limits * updated docs * updated docs * fix old log call * use journal only when stderr is connected to journal * update netdata.spec for libcurl, libpcre2 and log2journal * pcre2-devel * do not require pcre2 in centos < 8, amazonlinux < 2023, open suse * log2journal only on systems pcre2 is available * ignore log2journal in .gitignore * avoid log2journal on centos 7, amazonlinux 2 and opensuse * add pcre2-8 to static build * undo last commit * Bundle to static Signed-off-by: Tasos Katsoulas <tasos@netdata.cloud> * Add build deps for deb packages Signed-off-by: Tasos Katsoulas <tasos@netdata.cloud> * Add dependencies; build from source Signed-off-by: Tasos Katsoulas <tasos@netdata.cloud> * Test build for amazon linux and centos expect to fail for suse Signed-off-by: Tasos Katsoulas <tasos@netdata.cloud> * fix minor oversight Signed-off-by: Tasos Katsoulas <tasos@netdata.cloud> * Reorg code * Add the install from source (deps) as a TODO * Not enable the build on suse ecosystem Signed-off-by: Tasos Katsoulas <tasos@netdata.cloud> --------- Signed-off-by: Tasos Katsoulas <tasos@netdata.cloud> Co-authored-by: Tasos Katsoulas <tasos@netdata.cloud>
2023-11-22 09:27:25 +01:00
%if 0%{?suse_version}
# log2journal is not available on these systems
%else
BuildRequires: pkgconfig(libpcre2-8)
New logging layer (#16357) * cleanup of logging - wip * first working iteration * add errno annotator * replace old logging functions with netdata_logger() * cleanup * update error_limit * fix remanining error_limit references * work on fatal() * started working on structured logs * full cleanup * default logging to files; fix all plugins initialization * fix formatting of numbers * cleanup and reorg * fix coverity issues * cleanup obsolete code * fix formatting of numbers * fix log rotation * fix for older systems * add detection of systemd journal via stderr * finished on access.log * remove left-over transport * do not add empty fields to the logs * journal get compact uuids; X-Transaction-ID header is added in web responses * allow compiling on systems without memfd sealing * added libnetdata/uuid directory * move datetime formatters to libnetdata * add missing files * link the makefiles in libnetdata * added uuid_parse_flexi() to parse UUIDs with and without hyphens; the web server now read X-Transaction-ID and uses it for functions and web responses * added stream receiver, sender, proc plugin and pluginsd log stack * iso8601 advanced usage; line_splitter module in libnetdata; code cleanup * add message ids to streaming inbound and outbound connections * cleanup line_splitter between lines to avoid logging garbage; when killing children, kill them with SIGABRT if internal checks is enabled * send SIGABRT to external plugins only if we are not shutting down * fix cross cleanup in pluginsd parser * fatal when there is a stack error in logs * compile netdata with -fexceptions * do not kill external plugins with SIGABRT * metasync info logs to debug level * added severity to logs * added json output; added options per log output; added documentation; fixed issues mentioned * allow memfd only on linux * moved journal low level functions to journal.c/h * move health logs to daemon.log with proper priorities * fixed a couple of bugs; health log in journal * updated docs * systemd-cat-native command to push structured logs to journal from the command line * fix makefiles * restored NETDATA_LOG_SEVERITY_LEVEL * fix makefiles * systemd-cat-native can also work as the logger of Netdata scripts * do not require a socket to systemd-journal to log-as-netdata * alarm notify logs in native format * properly compare log ids * fatals log alerts; alarm-notify.sh working * fix overflow warning * alarm-notify.sh now logs the request (command line) * anotate external plugins logs with the function cmd they run * added context, component and type to alarm-notify.sh; shell sanitization removes control character and characters that may be expanded by bash * reformatted alarm-notify logs * unify cgroup-network-helper.sh * added quotes around params * charts.d.plugin switched logging to journal native * quotes for logfmt * unify the status codes of streaming receivers and senders * alarm-notify: dont log anything, if there is nothing to do * all external plugins log to stderr when running outside netdata; alarm-notify now shows an error when notifications menthod are needed but are not available * migrate cgroup-name.sh to new logging * systemd-cat-native now supports messages with newlines * socket.c logs use priority * cleanup log field types * inherit the systemd set INVOCATION_ID if found * allow systemd-cat-native to send messages to a systemd-journal-remote URL * log2journal command that can convert structured logs to journal export format * various fixes and documentation of log2journal * updated log2journal docs * updated log2journal docs * updated documentation of fields * allow compiling without libcurl * do not use socket as format string * added version information to newly added tools * updated documentation and help messages * fix the namespace socket path * print errno with error * do not timeout * updated docs * updated docs * updated docs * log2journal updated docs and params * when talking to a remote journal, systemd-cat-native batches the messages * enable lz4 compression for systemd-cat-native when sending messages to a systemd-journal-remote * Revert "enable lz4 compression for systemd-cat-native when sending messages to a systemd-journal-remote" This reverts commit b079d53c11f6687cd64d804fdd7b24c0492bf245. * note about uncompressed traffic * log2journal: code reorg and cleanup to make modular * finished rewriting log2journal * more comments * rewriting rules support * increased limits * updated docs * updated docs * fix old log call * use journal only when stderr is connected to journal * update netdata.spec for libcurl, libpcre2 and log2journal * pcre2-devel * do not require pcre2 in centos < 8, amazonlinux < 2023, open suse * log2journal only on systems pcre2 is available * ignore log2journal in .gitignore * avoid log2journal on centos 7, amazonlinux 2 and opensuse * add pcre2-8 to static build * undo last commit * Bundle to static Signed-off-by: Tasos Katsoulas <tasos@netdata.cloud> * Add build deps for deb packages Signed-off-by: Tasos Katsoulas <tasos@netdata.cloud> * Add dependencies; build from source Signed-off-by: Tasos Katsoulas <tasos@netdata.cloud> * Test build for amazon linux and centos expect to fail for suse Signed-off-by: Tasos Katsoulas <tasos@netdata.cloud> * fix minor oversight Signed-off-by: Tasos Katsoulas <tasos@netdata.cloud> * Reorg code * Add the install from source (deps) as a TODO * Not enable the build on suse ecosystem Signed-off-by: Tasos Katsoulas <tasos@netdata.cloud> --------- Signed-off-by: Tasos Katsoulas <tasos@netdata.cloud> Co-authored-by: Tasos Katsoulas <tasos@netdata.cloud>
2023-11-22 09:27:25 +01:00
%endif
netdata/packaging: Netdata binary packages generation - spec file refinement, support for nightlies (RPM) (#6369) Detailed list of changes: * netdata/packaging: First round of netdata.spec refactoring - package dependencies - Remove freeipmi/nfacct plugin flags. We auto-detect all plugins by decision - Start refactor of package dependencies - Add missing dependencies, with respect to distro peculiarities - Adjust existing dependencies, so that distro-specific package names is applied * netdata/packaging: add packaging trigger mechanism on binary-packages-specfile-cleanup to help testing * netdata/packaging: WIP - Allow building nightly versions for RPM (Still investigating the right version scheme) * netdata/packaging: Attempt to fix syntax errors - wow travis, mercy * netdata/packaging: tiny nits and fixes 1) there was a syntax error in version definition 2) bring default deploy repo name at the top, then overwrite when latest is published 3) Leave a comment * netdata/packaging: Move these core package requirements to the right section * netdata/packaging: libuv requires >= 1, missed to add that on devel libs * netdata/packaging: some comments, also when you put logrotate in our conf directory, link it to actual log rotate * netdata/packaging: Adjust configure options on spec file (align with netdata-installer.sh) * netdata/packaging: In order to properly support packaging both latest and stable releases, you need to star that extraction part, folder name contains the version with the hash that we cant tell * netdata/packaging: until we fix versioning, bring the original unprocessed spec file and pass the version we like in * netdata/packaging: fix version string in the spec file * netdata/packaging: Replace source path, we need to work with whatever we downloaded (to be refined) * netdata/packaging: [ci skip] you mixed the paths, reverse them * netdata/packaging: [ci skip] attempt to fix source path when needed * netdata/packaging: fixes and nits 1) generalize the spec file refinement method 2) Do both replacement that way 3) Adjust file names and paths * netdata/packaging: Replace Source0 explicitly and also make sure you remove extra new lines that may confuse the replacement later * netdata/packaging: [ci skip] move env outside, add some more log * netdata/packaging: [ci skip] adjust logic of replacing tag lines in spec file * netdata/packaging: [ci skip] Alas, fetch the archive, rename the structure to the new version, repack and proceed * netdata/packaging: [ci skip] Extract to specific path * netdata/packaging: [ci skip] replace problematic tar call with the respective pythonized one * netdata/packaging: [ci skip] Add new friendly octal format for chmod * netdata/packaging: [ci skip] more checks * netdata/packaging: [ci skip] dont chmod, chown the whole folder after extraction * netdata/packaging: nit * netdata/packaging: [ci skip] attempt to fix permissions differently * netdata/packaging: [ci skip] Another hack, attempt to fix permissions on the host directly * netdata/packaging: [ci skip] fine, do the move also on the host, pointless to run all through the container * netdata/packaging: [ci skip] Do the move through the container. Also, move a more specific folder * netdata/packaging: [ci skip] move as w00t * netdata/packaging: [ci skip] fix * netdata/packaging: sync permissions handling, round two * netdata/packaging: scratch those hacks, we should do latest differently * netdata/packaging: [ci skip] Set up rpm version string depending on whether we are on latest or not * netdata/packaging: [ci skip] Branch the code here, latest build up should be on the commit rather the tar files * netdata/packaging: Attempt to handle latest version build up * netdata/packaging: [ci skip] Dont continue processing if the file was not generated. Also do the tagging before autoreconf * netdata/packaging: [ci skip] fixes and nits * netdata/packaging: [ci skip] When doing annotated tags, you need to provide a message otherwise an editor pops up and will block the build * netdata/packaging: on the latest code case go all the way host level operations * netdata/packaging: [ci skip] Do not modify version, no longer need it because we properly generated the package with the right version * netdata/packaging: [ci skip] fix sensors line, you missed the Recommends keyword * netdata/packaging: Some code style (remove tabification from some tags) and also remove Recommends, we start with required packages for build and runtime and then we document further needs * netdata/packaging: [ci skip] Make sure you get epel in there, its needed * netdata/packaging: [ci skip] Fix bogus date * netdata/packaging: [ci skip] add these packages to include functionality * netdata/packaging: [ci skip] more fine grained dependency handling * netdata/packaging: [ci skip] Dependency hell - do not depend on libnetacctfilter if on el/7 * netdata/packaging: [ci skip] Be serious, that is not what you do when building the package silly * netdata/packaging: [ci skip] define directory attributes too * netdata/packaging: [ci skip] mystery unfold - comment out as we need to figure out how to handle missing directories that our installer creates if necessary * netdata/packaging: [ci skip] Make sure you properly set deployment repo based on commit message * netdata/packaging: [ci skip] Install these packages for specific versions, remove optimisations for now * netdata/packaging: [ci skip] Make package yanking flexible, so that we can manage both netdata and netdata-edge cleanup properly * netdata/packaging: [ci skip] Actually, set user at travis layer and let the script consume it only. We need to be sure the same user is used on yanking and the deployment process * netdata/packaging: [ci skip] wow pkatsoul * netdata/packaging: Dont forget to install some of the enabled plugins * netdata/packaging: nfacct.plugin not really working on rhel, disable temporarily * netdata/packaging: include installed directories to package * netdata/packaging: [ci skip] nits * netdata/packaging: fixes * netdata/packaging: [ci skip] dont add ghost files * netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there * netdata/packaging: [ci skip] Extreme - override _libexecdir macro * Revert "netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there" This reverts commit 320102c96284e4622266f6f089d6ce87319976f3. That wasnt really the problem here * netdata/packaging: [ci skip] Include contents of dir here * netdata/packaging: fixes * netdata/packaging: [ci skip] Fixes and additions - Tighter permissions for some files - Introduce go.d plugin install (likely broken like this, dont recall if bash style code is fine here) - Raise the path overrides to the spec level, otherwise we build with the overrides and package with the defaults * netdata/packaging: [ci skip] Missed an invalid variable. These files are under our current path, no need for complexity * netdata/packaging: [ci skip] bring sha method onboard * netdata/packaging: [ci skip] Wrong path provided, should be under build root * netdata/packaging: [ci skip] Add registry directory * netdata/packaging: [ci skip] add missing config directory definitions * netdata/packaging: [ci skip] Fix missing dirs * netdata/packaging:[ci fix] hos * netdata/packaging: [ci skip] Fixes and additions - Change versioning to v1.15.0.114 from v1.15.0114 - Add CUPS, Xenstat, json-c * netdata/packaging: [ci skip] fix package dependencies on the builder setup, otherwise spec will fail * netdata/packaging: [ci skip] limit xenstat to suse and fedora for now * netdata/packaging: [ci skip] separate fedora and suse cases, unfortunately suse has different package names.... * netdata/packaging: [ci skip] yajl is not the same package everywhere, of course * netdata/packagin: [ci skip] skip xenstat for now * netdata/packaging: [ci skip] remove the vvvvvvvvv * netdata/packaging: [ci skip] one more fix attempt * netdata/packaging: [ci skip] Spec file extraction is different when building from stable. We *must* fetch it from the tarball rather than the local one * netdata/packaging: [ci skip] spec_file defined on all cases, latest or stable. Also move latest spec file copy after make dist operation, that is where is suppose to be * netdata/packaging: [ci skip] Tag source with the local version, as we build upon the very latest * netdata/packaging: oopsie -- remove json-c from that place, it was forgotten * netdata/packaging: fix packaging, even though devel is consistent between fedora and suse, the binary one is not .... (also fix default perms to be root:netdata rather root:root) * netdata/packaging: Suse love - again, libuuid-devel same, but libuuid is named libuuid1 on suse...... * netdata/packaging: [ci skip] libcap same.... * netdata/packaging: [ci skip] use the noreplace directive for the configuration files * netdata/packaging: [ci skip] Bring back master as the triggering repository * netdata/packaging: [ci skip] attempt to enable/disable service where necessary. Default preset action requires further setup, so we override that * Revert "netdata/packaging: [ci skip] Bring back master as the triggering repository" This reverts commit 9b25a622dc5f12b1539f6863bab52d7bb225fd8d. ** Reverting as we need to test further the service enable action ** * netdata/packaging: [ci skip] revert this change - not the right way, we have empty files * netdata/packaging: [ci skip] Add daemon-reload option, to make sure systemd learns about the newly installed service * netdata/packaging: [ci skip] Attempt to silence codacy by factoring out the few small methods for common usage, then kill directories to reduce complexity adn thats it * netdata/packaging: [ci skip] Just making sure codacy reprocess everything * netdata/packaging: [ci skip] missed one adjustment * netdata/packaging: python style - print shouldnt have space before open parenthesis. Also, add restart on all cases on the spec file * netdata/packaging: [ci skip] fix syntax * netdata/packaging: [ci skip] syntax fixes 2 * netdata/packaging: [ci skip] another miss * netdata/packaging: [ci skip] You need to explicitly trigger a restart, apparently * netdata/packaging: [ci skip] override packaging user definition temporarily, to get things going on testing
2019-07-03 09:18:17 +02:00
%if 0%{?suse_version}
BuildRequires: protobuf-devel
BuildRequires: libprotobuf-c-devel
netdata/packaging: Netdata binary packages generation - spec file refinement, support for nightlies (RPM) (#6369) Detailed list of changes: * netdata/packaging: First round of netdata.spec refactoring - package dependencies - Remove freeipmi/nfacct plugin flags. We auto-detect all plugins by decision - Start refactor of package dependencies - Add missing dependencies, with respect to distro peculiarities - Adjust existing dependencies, so that distro-specific package names is applied * netdata/packaging: add packaging trigger mechanism on binary-packages-specfile-cleanup to help testing * netdata/packaging: WIP - Allow building nightly versions for RPM (Still investigating the right version scheme) * netdata/packaging: Attempt to fix syntax errors - wow travis, mercy * netdata/packaging: tiny nits and fixes 1) there was a syntax error in version definition 2) bring default deploy repo name at the top, then overwrite when latest is published 3) Leave a comment * netdata/packaging: Move these core package requirements to the right section * netdata/packaging: libuv requires >= 1, missed to add that on devel libs * netdata/packaging: some comments, also when you put logrotate in our conf directory, link it to actual log rotate * netdata/packaging: Adjust configure options on spec file (align with netdata-installer.sh) * netdata/packaging: In order to properly support packaging both latest and stable releases, you need to star that extraction part, folder name contains the version with the hash that we cant tell * netdata/packaging: until we fix versioning, bring the original unprocessed spec file and pass the version we like in * netdata/packaging: fix version string in the spec file * netdata/packaging: Replace source path, we need to work with whatever we downloaded (to be refined) * netdata/packaging: [ci skip] you mixed the paths, reverse them * netdata/packaging: [ci skip] attempt to fix source path when needed * netdata/packaging: fixes and nits 1) generalize the spec file refinement method 2) Do both replacement that way 3) Adjust file names and paths * netdata/packaging: Replace Source0 explicitly and also make sure you remove extra new lines that may confuse the replacement later * netdata/packaging: [ci skip] move env outside, add some more log * netdata/packaging: [ci skip] adjust logic of replacing tag lines in spec file * netdata/packaging: [ci skip] Alas, fetch the archive, rename the structure to the new version, repack and proceed * netdata/packaging: [ci skip] Extract to specific path * netdata/packaging: [ci skip] replace problematic tar call with the respective pythonized one * netdata/packaging: [ci skip] Add new friendly octal format for chmod * netdata/packaging: [ci skip] more checks * netdata/packaging: [ci skip] dont chmod, chown the whole folder after extraction * netdata/packaging: nit * netdata/packaging: [ci skip] attempt to fix permissions differently * netdata/packaging: [ci skip] Another hack, attempt to fix permissions on the host directly * netdata/packaging: [ci skip] fine, do the move also on the host, pointless to run all through the container * netdata/packaging: [ci skip] Do the move through the container. Also, move a more specific folder * netdata/packaging: [ci skip] move as w00t * netdata/packaging: [ci skip] fix * netdata/packaging: sync permissions handling, round two * netdata/packaging: scratch those hacks, we should do latest differently * netdata/packaging: [ci skip] Set up rpm version string depending on whether we are on latest or not * netdata/packaging: [ci skip] Branch the code here, latest build up should be on the commit rather the tar files * netdata/packaging: Attempt to handle latest version build up * netdata/packaging: [ci skip] Dont continue processing if the file was not generated. Also do the tagging before autoreconf * netdata/packaging: [ci skip] fixes and nits * netdata/packaging: [ci skip] When doing annotated tags, you need to provide a message otherwise an editor pops up and will block the build * netdata/packaging: on the latest code case go all the way host level operations * netdata/packaging: [ci skip] Do not modify version, no longer need it because we properly generated the package with the right version * netdata/packaging: [ci skip] fix sensors line, you missed the Recommends keyword * netdata/packaging: Some code style (remove tabification from some tags) and also remove Recommends, we start with required packages for build and runtime and then we document further needs * netdata/packaging: [ci skip] Make sure you get epel in there, its needed * netdata/packaging: [ci skip] Fix bogus date * netdata/packaging: [ci skip] add these packages to include functionality * netdata/packaging: [ci skip] more fine grained dependency handling * netdata/packaging: [ci skip] Dependency hell - do not depend on libnetacctfilter if on el/7 * netdata/packaging: [ci skip] Be serious, that is not what you do when building the package silly * netdata/packaging: [ci skip] define directory attributes too * netdata/packaging: [ci skip] mystery unfold - comment out as we need to figure out how to handle missing directories that our installer creates if necessary * netdata/packaging: [ci skip] Make sure you properly set deployment repo based on commit message * netdata/packaging: [ci skip] Install these packages for specific versions, remove optimisations for now * netdata/packaging: [ci skip] Make package yanking flexible, so that we can manage both netdata and netdata-edge cleanup properly * netdata/packaging: [ci skip] Actually, set user at travis layer and let the script consume it only. We need to be sure the same user is used on yanking and the deployment process * netdata/packaging: [ci skip] wow pkatsoul * netdata/packaging: Dont forget to install some of the enabled plugins * netdata/packaging: nfacct.plugin not really working on rhel, disable temporarily * netdata/packaging: include installed directories to package * netdata/packaging: [ci skip] nits * netdata/packaging: fixes * netdata/packaging: [ci skip] dont add ghost files * netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there * netdata/packaging: [ci skip] Extreme - override _libexecdir macro * Revert "netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there" This reverts commit 320102c96284e4622266f6f089d6ce87319976f3. That wasnt really the problem here * netdata/packaging: [ci skip] Include contents of dir here * netdata/packaging: fixes * netdata/packaging: [ci skip] Fixes and additions - Tighter permissions for some files - Introduce go.d plugin install (likely broken like this, dont recall if bash style code is fine here) - Raise the path overrides to the spec level, otherwise we build with the overrides and package with the defaults * netdata/packaging: [ci skip] Missed an invalid variable. These files are under our current path, no need for complexity * netdata/packaging: [ci skip] bring sha method onboard * netdata/packaging: [ci skip] Wrong path provided, should be under build root * netdata/packaging: [ci skip] Add registry directory * netdata/packaging: [ci skip] add missing config directory definitions * netdata/packaging: [ci skip] Fix missing dirs * netdata/packaging:[ci fix] hos * netdata/packaging: [ci skip] Fixes and additions - Change versioning to v1.15.0.114 from v1.15.0114 - Add CUPS, Xenstat, json-c * netdata/packaging: [ci skip] fix package dependencies on the builder setup, otherwise spec will fail * netdata/packaging: [ci skip] limit xenstat to suse and fedora for now * netdata/packaging: [ci skip] separate fedora and suse cases, unfortunately suse has different package names.... * netdata/packaging: [ci skip] yajl is not the same package everywhere, of course * netdata/packagin: [ci skip] skip xenstat for now * netdata/packaging: [ci skip] remove the vvvvvvvvv * netdata/packaging: [ci skip] one more fix attempt * netdata/packaging: [ci skip] Spec file extraction is different when building from stable. We *must* fetch it from the tarball rather than the local one * netdata/packaging: [ci skip] spec_file defined on all cases, latest or stable. Also move latest spec file copy after make dist operation, that is where is suppose to be * netdata/packaging: [ci skip] Tag source with the local version, as we build upon the very latest * netdata/packaging: oopsie -- remove json-c from that place, it was forgotten * netdata/packaging: fix packaging, even though devel is consistent between fedora and suse, the binary one is not .... (also fix default perms to be root:netdata rather root:root) * netdata/packaging: Suse love - again, libuuid-devel same, but libuuid is named libuuid1 on suse...... * netdata/packaging: [ci skip] libcap same.... * netdata/packaging: [ci skip] use the noreplace directive for the configuration files * netdata/packaging: [ci skip] Bring back master as the triggering repository * netdata/packaging: [ci skip] attempt to enable/disable service where necessary. Default preset action requires further setup, so we override that * Revert "netdata/packaging: [ci skip] Bring back master as the triggering repository" This reverts commit 9b25a622dc5f12b1539f6863bab52d7bb225fd8d. ** Reverting as we need to test further the service enable action ** * netdata/packaging: [ci skip] revert this change - not the right way, we have empty files * netdata/packaging: [ci skip] Add daemon-reload option, to make sure systemd learns about the newly installed service * netdata/packaging: [ci skip] Attempt to silence codacy by factoring out the few small methods for common usage, then kill directories to reduce complexity adn thats it * netdata/packaging: [ci skip] Just making sure codacy reprocess everything * netdata/packaging: [ci skip] missed one adjustment * netdata/packaging: python style - print shouldnt have space before open parenthesis. Also, add restart on all cases on the spec file * netdata/packaging: [ci skip] fix syntax * netdata/packaging: [ci skip] syntax fixes 2 * netdata/packaging: [ci skip] another miss * netdata/packaging: [ci skip] You need to explicitly trigger a restart, apparently * netdata/packaging: [ci skip] override packaging user definition temporarily, to get things going on testing
2019-07-03 09:18:17 +02:00
%else
%if 0%{?fedora}
BuildRequires: protobuf-devel
BuildRequires: protobuf-c-devel
%else
%if 0%{?centos_ver} >= 8
BuildRequires: protobuf-devel
BuildRequires: protobuf-c-devel
%endif
%endif
%endif
2016-07-26 15:30:49 +02:00
netdata/packaging: Netdata binary packages generation - spec file refinement, support for nightlies (RPM) (#6369) Detailed list of changes: * netdata/packaging: First round of netdata.spec refactoring - package dependencies - Remove freeipmi/nfacct plugin flags. We auto-detect all plugins by decision - Start refactor of package dependencies - Add missing dependencies, with respect to distro peculiarities - Adjust existing dependencies, so that distro-specific package names is applied * netdata/packaging: add packaging trigger mechanism on binary-packages-specfile-cleanup to help testing * netdata/packaging: WIP - Allow building nightly versions for RPM (Still investigating the right version scheme) * netdata/packaging: Attempt to fix syntax errors - wow travis, mercy * netdata/packaging: tiny nits and fixes 1) there was a syntax error in version definition 2) bring default deploy repo name at the top, then overwrite when latest is published 3) Leave a comment * netdata/packaging: Move these core package requirements to the right section * netdata/packaging: libuv requires >= 1, missed to add that on devel libs * netdata/packaging: some comments, also when you put logrotate in our conf directory, link it to actual log rotate * netdata/packaging: Adjust configure options on spec file (align with netdata-installer.sh) * netdata/packaging: In order to properly support packaging both latest and stable releases, you need to star that extraction part, folder name contains the version with the hash that we cant tell * netdata/packaging: until we fix versioning, bring the original unprocessed spec file and pass the version we like in * netdata/packaging: fix version string in the spec file * netdata/packaging: Replace source path, we need to work with whatever we downloaded (to be refined) * netdata/packaging: [ci skip] you mixed the paths, reverse them * netdata/packaging: [ci skip] attempt to fix source path when needed * netdata/packaging: fixes and nits 1) generalize the spec file refinement method 2) Do both replacement that way 3) Adjust file names and paths * netdata/packaging: Replace Source0 explicitly and also make sure you remove extra new lines that may confuse the replacement later * netdata/packaging: [ci skip] move env outside, add some more log * netdata/packaging: [ci skip] adjust logic of replacing tag lines in spec file * netdata/packaging: [ci skip] Alas, fetch the archive, rename the structure to the new version, repack and proceed * netdata/packaging: [ci skip] Extract to specific path * netdata/packaging: [ci skip] replace problematic tar call with the respective pythonized one * netdata/packaging: [ci skip] Add new friendly octal format for chmod * netdata/packaging: [ci skip] more checks * netdata/packaging: [ci skip] dont chmod, chown the whole folder after extraction * netdata/packaging: nit * netdata/packaging: [ci skip] attempt to fix permissions differently * netdata/packaging: [ci skip] Another hack, attempt to fix permissions on the host directly * netdata/packaging: [ci skip] fine, do the move also on the host, pointless to run all through the container * netdata/packaging: [ci skip] Do the move through the container. Also, move a more specific folder * netdata/packaging: [ci skip] move as w00t * netdata/packaging: [ci skip] fix * netdata/packaging: sync permissions handling, round two * netdata/packaging: scratch those hacks, we should do latest differently * netdata/packaging: [ci skip] Set up rpm version string depending on whether we are on latest or not * netdata/packaging: [ci skip] Branch the code here, latest build up should be on the commit rather the tar files * netdata/packaging: Attempt to handle latest version build up * netdata/packaging: [ci skip] Dont continue processing if the file was not generated. Also do the tagging before autoreconf * netdata/packaging: [ci skip] fixes and nits * netdata/packaging: [ci skip] When doing annotated tags, you need to provide a message otherwise an editor pops up and will block the build * netdata/packaging: on the latest code case go all the way host level operations * netdata/packaging: [ci skip] Do not modify version, no longer need it because we properly generated the package with the right version * netdata/packaging: [ci skip] fix sensors line, you missed the Recommends keyword * netdata/packaging: Some code style (remove tabification from some tags) and also remove Recommends, we start with required packages for build and runtime and then we document further needs * netdata/packaging: [ci skip] Make sure you get epel in there, its needed * netdata/packaging: [ci skip] Fix bogus date * netdata/packaging: [ci skip] add these packages to include functionality * netdata/packaging: [ci skip] more fine grained dependency handling * netdata/packaging: [ci skip] Dependency hell - do not depend on libnetacctfilter if on el/7 * netdata/packaging: [ci skip] Be serious, that is not what you do when building the package silly * netdata/packaging: [ci skip] define directory attributes too * netdata/packaging: [ci skip] mystery unfold - comment out as we need to figure out how to handle missing directories that our installer creates if necessary * netdata/packaging: [ci skip] Make sure you properly set deployment repo based on commit message * netdata/packaging: [ci skip] Install these packages for specific versions, remove optimisations for now * netdata/packaging: [ci skip] Make package yanking flexible, so that we can manage both netdata and netdata-edge cleanup properly * netdata/packaging: [ci skip] Actually, set user at travis layer and let the script consume it only. We need to be sure the same user is used on yanking and the deployment process * netdata/packaging: [ci skip] wow pkatsoul * netdata/packaging: Dont forget to install some of the enabled plugins * netdata/packaging: nfacct.plugin not really working on rhel, disable temporarily * netdata/packaging: include installed directories to package * netdata/packaging: [ci skip] nits * netdata/packaging: fixes * netdata/packaging: [ci skip] dont add ghost files * netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there * netdata/packaging: [ci skip] Extreme - override _libexecdir macro * Revert "netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there" This reverts commit 320102c96284e4622266f6f089d6ce87319976f3. That wasnt really the problem here * netdata/packaging: [ci skip] Include contents of dir here * netdata/packaging: fixes * netdata/packaging: [ci skip] Fixes and additions - Tighter permissions for some files - Introduce go.d plugin install (likely broken like this, dont recall if bash style code is fine here) - Raise the path overrides to the spec level, otherwise we build with the overrides and package with the defaults * netdata/packaging: [ci skip] Missed an invalid variable. These files are under our current path, no need for complexity * netdata/packaging: [ci skip] bring sha method onboard * netdata/packaging: [ci skip] Wrong path provided, should be under build root * netdata/packaging: [ci skip] Add registry directory * netdata/packaging: [ci skip] add missing config directory definitions * netdata/packaging: [ci skip] Fix missing dirs * netdata/packaging:[ci fix] hos * netdata/packaging: [ci skip] Fixes and additions - Change versioning to v1.15.0.114 from v1.15.0114 - Add CUPS, Xenstat, json-c * netdata/packaging: [ci skip] fix package dependencies on the builder setup, otherwise spec will fail * netdata/packaging: [ci skip] limit xenstat to suse and fedora for now * netdata/packaging: [ci skip] separate fedora and suse cases, unfortunately suse has different package names.... * netdata/packaging: [ci skip] yajl is not the same package everywhere, of course * netdata/packagin: [ci skip] skip xenstat for now * netdata/packaging: [ci skip] remove the vvvvvvvvv * netdata/packaging: [ci skip] one more fix attempt * netdata/packaging: [ci skip] Spec file extraction is different when building from stable. We *must* fetch it from the tarball rather than the local one * netdata/packaging: [ci skip] spec_file defined on all cases, latest or stable. Also move latest spec file copy after make dist operation, that is where is suppose to be * netdata/packaging: [ci skip] Tag source with the local version, as we build upon the very latest * netdata/packaging: oopsie -- remove json-c from that place, it was forgotten * netdata/packaging: fix packaging, even though devel is consistent between fedora and suse, the binary one is not .... (also fix default perms to be root:netdata rather root:root) * netdata/packaging: Suse love - again, libuuid-devel same, but libuuid is named libuuid1 on suse...... * netdata/packaging: [ci skip] libcap same.... * netdata/packaging: [ci skip] use the noreplace directive for the configuration files * netdata/packaging: [ci skip] Bring back master as the triggering repository * netdata/packaging: [ci skip] attempt to enable/disable service where necessary. Default preset action requires further setup, so we override that * Revert "netdata/packaging: [ci skip] Bring back master as the triggering repository" This reverts commit 9b25a622dc5f12b1539f6863bab52d7bb225fd8d. ** Reverting as we need to test further the service enable action ** * netdata/packaging: [ci skip] revert this change - not the right way, we have empty files * netdata/packaging: [ci skip] Add daemon-reload option, to make sure systemd learns about the newly installed service * netdata/packaging: [ci skip] Attempt to silence codacy by factoring out the few small methods for common usage, then kill directories to reduce complexity adn thats it * netdata/packaging: [ci skip] Just making sure codacy reprocess everything * netdata/packaging: [ci skip] missed one adjustment * netdata/packaging: python style - print shouldnt have space before open parenthesis. Also, add restart on all cases on the spec file * netdata/packaging: [ci skip] fix syntax * netdata/packaging: [ci skip] syntax fixes 2 * netdata/packaging: [ci skip] another miss * netdata/packaging: [ci skip] You need to explicitly trigger a restart, apparently * netdata/packaging: [ci skip] override packaging user definition temporarily, to get things going on testing
2019-07-03 09:18:17 +02:00
# Core build requirements for service install
%if 0%{?suse_version}
BuildRequires: systemd-rpm-macros
%else
BuildRequires: systemd
%endif
netdata/packaging: Netdata binary packages generation - spec file refinement, support for nightlies (RPM) (#6369) Detailed list of changes: * netdata/packaging: First round of netdata.spec refactoring - package dependencies - Remove freeipmi/nfacct plugin flags. We auto-detect all plugins by decision - Start refactor of package dependencies - Add missing dependencies, with respect to distro peculiarities - Adjust existing dependencies, so that distro-specific package names is applied * netdata/packaging: add packaging trigger mechanism on binary-packages-specfile-cleanup to help testing * netdata/packaging: WIP - Allow building nightly versions for RPM (Still investigating the right version scheme) * netdata/packaging: Attempt to fix syntax errors - wow travis, mercy * netdata/packaging: tiny nits and fixes 1) there was a syntax error in version definition 2) bring default deploy repo name at the top, then overwrite when latest is published 3) Leave a comment * netdata/packaging: Move these core package requirements to the right section * netdata/packaging: libuv requires >= 1, missed to add that on devel libs * netdata/packaging: some comments, also when you put logrotate in our conf directory, link it to actual log rotate * netdata/packaging: Adjust configure options on spec file (align with netdata-installer.sh) * netdata/packaging: In order to properly support packaging both latest and stable releases, you need to star that extraction part, folder name contains the version with the hash that we cant tell * netdata/packaging: until we fix versioning, bring the original unprocessed spec file and pass the version we like in * netdata/packaging: fix version string in the spec file * netdata/packaging: Replace source path, we need to work with whatever we downloaded (to be refined) * netdata/packaging: [ci skip] you mixed the paths, reverse them * netdata/packaging: [ci skip] attempt to fix source path when needed * netdata/packaging: fixes and nits 1) generalize the spec file refinement method 2) Do both replacement that way 3) Adjust file names and paths * netdata/packaging: Replace Source0 explicitly and also make sure you remove extra new lines that may confuse the replacement later * netdata/packaging: [ci skip] move env outside, add some more log * netdata/packaging: [ci skip] adjust logic of replacing tag lines in spec file * netdata/packaging: [ci skip] Alas, fetch the archive, rename the structure to the new version, repack and proceed * netdata/packaging: [ci skip] Extract to specific path * netdata/packaging: [ci skip] replace problematic tar call with the respective pythonized one * netdata/packaging: [ci skip] Add new friendly octal format for chmod * netdata/packaging: [ci skip] more checks * netdata/packaging: [ci skip] dont chmod, chown the whole folder after extraction * netdata/packaging: nit * netdata/packaging: [ci skip] attempt to fix permissions differently * netdata/packaging: [ci skip] Another hack, attempt to fix permissions on the host directly * netdata/packaging: [ci skip] fine, do the move also on the host, pointless to run all through the container * netdata/packaging: [ci skip] Do the move through the container. Also, move a more specific folder * netdata/packaging: [ci skip] move as w00t * netdata/packaging: [ci skip] fix * netdata/packaging: sync permissions handling, round two * netdata/packaging: scratch those hacks, we should do latest differently * netdata/packaging: [ci skip] Set up rpm version string depending on whether we are on latest or not * netdata/packaging: [ci skip] Branch the code here, latest build up should be on the commit rather the tar files * netdata/packaging: Attempt to handle latest version build up * netdata/packaging: [ci skip] Dont continue processing if the file was not generated. Also do the tagging before autoreconf * netdata/packaging: [ci skip] fixes and nits * netdata/packaging: [ci skip] When doing annotated tags, you need to provide a message otherwise an editor pops up and will block the build * netdata/packaging: on the latest code case go all the way host level operations * netdata/packaging: [ci skip] Do not modify version, no longer need it because we properly generated the package with the right version * netdata/packaging: [ci skip] fix sensors line, you missed the Recommends keyword * netdata/packaging: Some code style (remove tabification from some tags) and also remove Recommends, we start with required packages for build and runtime and then we document further needs * netdata/packaging: [ci skip] Make sure you get epel in there, its needed * netdata/packaging: [ci skip] Fix bogus date * netdata/packaging: [ci skip] add these packages to include functionality * netdata/packaging: [ci skip] more fine grained dependency handling * netdata/packaging: [ci skip] Dependency hell - do not depend on libnetacctfilter if on el/7 * netdata/packaging: [ci skip] Be serious, that is not what you do when building the package silly * netdata/packaging: [ci skip] define directory attributes too * netdata/packaging: [ci skip] mystery unfold - comment out as we need to figure out how to handle missing directories that our installer creates if necessary * netdata/packaging: [ci skip] Make sure you properly set deployment repo based on commit message * netdata/packaging: [ci skip] Install these packages for specific versions, remove optimisations for now * netdata/packaging: [ci skip] Make package yanking flexible, so that we can manage both netdata and netdata-edge cleanup properly * netdata/packaging: [ci skip] Actually, set user at travis layer and let the script consume it only. We need to be sure the same user is used on yanking and the deployment process * netdata/packaging: [ci skip] wow pkatsoul * netdata/packaging: Dont forget to install some of the enabled plugins * netdata/packaging: nfacct.plugin not really working on rhel, disable temporarily * netdata/packaging: include installed directories to package * netdata/packaging: [ci skip] nits * netdata/packaging: fixes * netdata/packaging: [ci skip] dont add ghost files * netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there * netdata/packaging: [ci skip] Extreme - override _libexecdir macro * Revert "netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there" This reverts commit 320102c96284e4622266f6f089d6ce87319976f3. That wasnt really the problem here * netdata/packaging: [ci skip] Include contents of dir here * netdata/packaging: fixes * netdata/packaging: [ci skip] Fixes and additions - Tighter permissions for some files - Introduce go.d plugin install (likely broken like this, dont recall if bash style code is fine here) - Raise the path overrides to the spec level, otherwise we build with the overrides and package with the defaults * netdata/packaging: [ci skip] Missed an invalid variable. These files are under our current path, no need for complexity * netdata/packaging: [ci skip] bring sha method onboard * netdata/packaging: [ci skip] Wrong path provided, should be under build root * netdata/packaging: [ci skip] Add registry directory * netdata/packaging: [ci skip] add missing config directory definitions * netdata/packaging: [ci skip] Fix missing dirs * netdata/packaging:[ci fix] hos * netdata/packaging: [ci skip] Fixes and additions - Change versioning to v1.15.0.114 from v1.15.0114 - Add CUPS, Xenstat, json-c * netdata/packaging: [ci skip] fix package dependencies on the builder setup, otherwise spec will fail * netdata/packaging: [ci skip] limit xenstat to suse and fedora for now * netdata/packaging: [ci skip] separate fedora and suse cases, unfortunately suse has different package names.... * netdata/packaging: [ci skip] yajl is not the same package everywhere, of course * netdata/packagin: [ci skip] skip xenstat for now * netdata/packaging: [ci skip] remove the vvvvvvvvv * netdata/packaging: [ci skip] one more fix attempt * netdata/packaging: [ci skip] Spec file extraction is different when building from stable. We *must* fetch it from the tarball rather than the local one * netdata/packaging: [ci skip] spec_file defined on all cases, latest or stable. Also move latest spec file copy after make dist operation, that is where is suppose to be * netdata/packaging: [ci skip] Tag source with the local version, as we build upon the very latest * netdata/packaging: oopsie -- remove json-c from that place, it was forgotten * netdata/packaging: fix packaging, even though devel is consistent between fedora and suse, the binary one is not .... (also fix default perms to be root:netdata rather root:root) * netdata/packaging: Suse love - again, libuuid-devel same, but libuuid is named libuuid1 on suse...... * netdata/packaging: [ci skip] libcap same.... * netdata/packaging: [ci skip] use the noreplace directive for the configuration files * netdata/packaging: [ci skip] Bring back master as the triggering repository * netdata/packaging: [ci skip] attempt to enable/disable service where necessary. Default preset action requires further setup, so we override that * Revert "netdata/packaging: [ci skip] Bring back master as the triggering repository" This reverts commit 9b25a622dc5f12b1539f6863bab52d7bb225fd8d. ** Reverting as we need to test further the service enable action ** * netdata/packaging: [ci skip] revert this change - not the right way, we have empty files * netdata/packaging: [ci skip] Add daemon-reload option, to make sure systemd learns about the newly installed service * netdata/packaging: [ci skip] Attempt to silence codacy by factoring out the few small methods for common usage, then kill directories to reduce complexity adn thats it * netdata/packaging: [ci skip] Just making sure codacy reprocess everything * netdata/packaging: [ci skip] missed one adjustment * netdata/packaging: python style - print shouldnt have space before open parenthesis. Also, add restart on all cases on the spec file * netdata/packaging: [ci skip] fix syntax * netdata/packaging: [ci skip] syntax fixes 2 * netdata/packaging: [ci skip] another miss * netdata/packaging: [ci skip] You need to explicitly trigger a restart, apparently * netdata/packaging: [ci skip] override packaging user definition temporarily, to get things going on testing
2019-07-03 09:18:17 +02:00
# Core requirements for the install to succeed
2016-07-26 15:30:49 +02:00
Requires(pre): /usr/sbin/groupadd
Requires(pre): /usr/sbin/useradd
netdata/packaging: Netdata binary packages generation - spec file refinement, support for nightlies (RPM) (#6369) Detailed list of changes: * netdata/packaging: First round of netdata.spec refactoring - package dependencies - Remove freeipmi/nfacct plugin flags. We auto-detect all plugins by decision - Start refactor of package dependencies - Add missing dependencies, with respect to distro peculiarities - Adjust existing dependencies, so that distro-specific package names is applied * netdata/packaging: add packaging trigger mechanism on binary-packages-specfile-cleanup to help testing * netdata/packaging: WIP - Allow building nightly versions for RPM (Still investigating the right version scheme) * netdata/packaging: Attempt to fix syntax errors - wow travis, mercy * netdata/packaging: tiny nits and fixes 1) there was a syntax error in version definition 2) bring default deploy repo name at the top, then overwrite when latest is published 3) Leave a comment * netdata/packaging: Move these core package requirements to the right section * netdata/packaging: libuv requires >= 1, missed to add that on devel libs * netdata/packaging: some comments, also when you put logrotate in our conf directory, link it to actual log rotate * netdata/packaging: Adjust configure options on spec file (align with netdata-installer.sh) * netdata/packaging: In order to properly support packaging both latest and stable releases, you need to star that extraction part, folder name contains the version with the hash that we cant tell * netdata/packaging: until we fix versioning, bring the original unprocessed spec file and pass the version we like in * netdata/packaging: fix version string in the spec file * netdata/packaging: Replace source path, we need to work with whatever we downloaded (to be refined) * netdata/packaging: [ci skip] you mixed the paths, reverse them * netdata/packaging: [ci skip] attempt to fix source path when needed * netdata/packaging: fixes and nits 1) generalize the spec file refinement method 2) Do both replacement that way 3) Adjust file names and paths * netdata/packaging: Replace Source0 explicitly and also make sure you remove extra new lines that may confuse the replacement later * netdata/packaging: [ci skip] move env outside, add some more log * netdata/packaging: [ci skip] adjust logic of replacing tag lines in spec file * netdata/packaging: [ci skip] Alas, fetch the archive, rename the structure to the new version, repack and proceed * netdata/packaging: [ci skip] Extract to specific path * netdata/packaging: [ci skip] replace problematic tar call with the respective pythonized one * netdata/packaging: [ci skip] Add new friendly octal format for chmod * netdata/packaging: [ci skip] more checks * netdata/packaging: [ci skip] dont chmod, chown the whole folder after extraction * netdata/packaging: nit * netdata/packaging: [ci skip] attempt to fix permissions differently * netdata/packaging: [ci skip] Another hack, attempt to fix permissions on the host directly * netdata/packaging: [ci skip] fine, do the move also on the host, pointless to run all through the container * netdata/packaging: [ci skip] Do the move through the container. Also, move a more specific folder * netdata/packaging: [ci skip] move as w00t * netdata/packaging: [ci skip] fix * netdata/packaging: sync permissions handling, round two * netdata/packaging: scratch those hacks, we should do latest differently * netdata/packaging: [ci skip] Set up rpm version string depending on whether we are on latest or not * netdata/packaging: [ci skip] Branch the code here, latest build up should be on the commit rather the tar files * netdata/packaging: Attempt to handle latest version build up * netdata/packaging: [ci skip] Dont continue processing if the file was not generated. Also do the tagging before autoreconf * netdata/packaging: [ci skip] fixes and nits * netdata/packaging: [ci skip] When doing annotated tags, you need to provide a message otherwise an editor pops up and will block the build * netdata/packaging: on the latest code case go all the way host level operations * netdata/packaging: [ci skip] Do not modify version, no longer need it because we properly generated the package with the right version * netdata/packaging: [ci skip] fix sensors line, you missed the Recommends keyword * netdata/packaging: Some code style (remove tabification from some tags) and also remove Recommends, we start with required packages for build and runtime and then we document further needs * netdata/packaging: [ci skip] Make sure you get epel in there, its needed * netdata/packaging: [ci skip] Fix bogus date * netdata/packaging: [ci skip] add these packages to include functionality * netdata/packaging: [ci skip] more fine grained dependency handling * netdata/packaging: [ci skip] Dependency hell - do not depend on libnetacctfilter if on el/7 * netdata/packaging: [ci skip] Be serious, that is not what you do when building the package silly * netdata/packaging: [ci skip] define directory attributes too * netdata/packaging: [ci skip] mystery unfold - comment out as we need to figure out how to handle missing directories that our installer creates if necessary * netdata/packaging: [ci skip] Make sure you properly set deployment repo based on commit message * netdata/packaging: [ci skip] Install these packages for specific versions, remove optimisations for now * netdata/packaging: [ci skip] Make package yanking flexible, so that we can manage both netdata and netdata-edge cleanup properly * netdata/packaging: [ci skip] Actually, set user at travis layer and let the script consume it only. We need to be sure the same user is used on yanking and the deployment process * netdata/packaging: [ci skip] wow pkatsoul * netdata/packaging: Dont forget to install some of the enabled plugins * netdata/packaging: nfacct.plugin not really working on rhel, disable temporarily * netdata/packaging: include installed directories to package * netdata/packaging: [ci skip] nits * netdata/packaging: fixes * netdata/packaging: [ci skip] dont add ghost files * netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there * netdata/packaging: [ci skip] Extreme - override _libexecdir macro * Revert "netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there" This reverts commit 320102c96284e4622266f6f089d6ce87319976f3. That wasnt really the problem here * netdata/packaging: [ci skip] Include contents of dir here * netdata/packaging: fixes * netdata/packaging: [ci skip] Fixes and additions - Tighter permissions for some files - Introduce go.d plugin install (likely broken like this, dont recall if bash style code is fine here) - Raise the path overrides to the spec level, otherwise we build with the overrides and package with the defaults * netdata/packaging: [ci skip] Missed an invalid variable. These files are under our current path, no need for complexity * netdata/packaging: [ci skip] bring sha method onboard * netdata/packaging: [ci skip] Wrong path provided, should be under build root * netdata/packaging: [ci skip] Add registry directory * netdata/packaging: [ci skip] add missing config directory definitions * netdata/packaging: [ci skip] Fix missing dirs * netdata/packaging:[ci fix] hos * netdata/packaging: [ci skip] Fixes and additions - Change versioning to v1.15.0.114 from v1.15.0114 - Add CUPS, Xenstat, json-c * netdata/packaging: [ci skip] fix package dependencies on the builder setup, otherwise spec will fail * netdata/packaging: [ci skip] limit xenstat to suse and fedora for now * netdata/packaging: [ci skip] separate fedora and suse cases, unfortunately suse has different package names.... * netdata/packaging: [ci skip] yajl is not the same package everywhere, of course * netdata/packagin: [ci skip] skip xenstat for now * netdata/packaging: [ci skip] remove the vvvvvvvvv * netdata/packaging: [ci skip] one more fix attempt * netdata/packaging: [ci skip] Spec file extraction is different when building from stable. We *must* fetch it from the tarball rather than the local one * netdata/packaging: [ci skip] spec_file defined on all cases, latest or stable. Also move latest spec file copy after make dist operation, that is where is suppose to be * netdata/packaging: [ci skip] Tag source with the local version, as we build upon the very latest * netdata/packaging: oopsie -- remove json-c from that place, it was forgotten * netdata/packaging: fix packaging, even though devel is consistent between fedora and suse, the binary one is not .... (also fix default perms to be root:netdata rather root:root) * netdata/packaging: Suse love - again, libuuid-devel same, but libuuid is named libuuid1 on suse...... * netdata/packaging: [ci skip] libcap same.... * netdata/packaging: [ci skip] use the noreplace directive for the configuration files * netdata/packaging: [ci skip] Bring back master as the triggering repository * netdata/packaging: [ci skip] attempt to enable/disable service where necessary. Default preset action requires further setup, so we override that * Revert "netdata/packaging: [ci skip] Bring back master as the triggering repository" This reverts commit 9b25a622dc5f12b1539f6863bab52d7bb225fd8d. ** Reverting as we need to test further the service enable action ** * netdata/packaging: [ci skip] revert this change - not the right way, we have empty files * netdata/packaging: [ci skip] Add daemon-reload option, to make sure systemd learns about the newly installed service * netdata/packaging: [ci skip] Attempt to silence codacy by factoring out the few small methods for common usage, then kill directories to reduce complexity adn thats it * netdata/packaging: [ci skip] Just making sure codacy reprocess everything * netdata/packaging: [ci skip] missed one adjustment * netdata/packaging: python style - print shouldnt have space before open parenthesis. Also, add restart on all cases on the spec file * netdata/packaging: [ci skip] fix syntax * netdata/packaging: [ci skip] syntax fixes 2 * netdata/packaging: [ci skip] another miss * netdata/packaging: [ci skip] You need to explicitly trigger a restart, apparently * netdata/packaging: [ci skip] override packaging user definition temporarily, to get things going on testing
2019-07-03 09:18:17 +02:00
# #####################################################################
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
# External plugin package dependencies
netdata/packaging: Netdata binary packages generation - spec file refinement, support for nightlies (RPM) (#6369) Detailed list of changes: * netdata/packaging: First round of netdata.spec refactoring - package dependencies - Remove freeipmi/nfacct plugin flags. We auto-detect all plugins by decision - Start refactor of package dependencies - Add missing dependencies, with respect to distro peculiarities - Adjust existing dependencies, so that distro-specific package names is applied * netdata/packaging: add packaging trigger mechanism on binary-packages-specfile-cleanup to help testing * netdata/packaging: WIP - Allow building nightly versions for RPM (Still investigating the right version scheme) * netdata/packaging: Attempt to fix syntax errors - wow travis, mercy * netdata/packaging: tiny nits and fixes 1) there was a syntax error in version definition 2) bring default deploy repo name at the top, then overwrite when latest is published 3) Leave a comment * netdata/packaging: Move these core package requirements to the right section * netdata/packaging: libuv requires >= 1, missed to add that on devel libs * netdata/packaging: some comments, also when you put logrotate in our conf directory, link it to actual log rotate * netdata/packaging: Adjust configure options on spec file (align with netdata-installer.sh) * netdata/packaging: In order to properly support packaging both latest and stable releases, you need to star that extraction part, folder name contains the version with the hash that we cant tell * netdata/packaging: until we fix versioning, bring the original unprocessed spec file and pass the version we like in * netdata/packaging: fix version string in the spec file * netdata/packaging: Replace source path, we need to work with whatever we downloaded (to be refined) * netdata/packaging: [ci skip] you mixed the paths, reverse them * netdata/packaging: [ci skip] attempt to fix source path when needed * netdata/packaging: fixes and nits 1) generalize the spec file refinement method 2) Do both replacement that way 3) Adjust file names and paths * netdata/packaging: Replace Source0 explicitly and also make sure you remove extra new lines that may confuse the replacement later * netdata/packaging: [ci skip] move env outside, add some more log * netdata/packaging: [ci skip] adjust logic of replacing tag lines in spec file * netdata/packaging: [ci skip] Alas, fetch the archive, rename the structure to the new version, repack and proceed * netdata/packaging: [ci skip] Extract to specific path * netdata/packaging: [ci skip] replace problematic tar call with the respective pythonized one * netdata/packaging: [ci skip] Add new friendly octal format for chmod * netdata/packaging: [ci skip] more checks * netdata/packaging: [ci skip] dont chmod, chown the whole folder after extraction * netdata/packaging: nit * netdata/packaging: [ci skip] attempt to fix permissions differently * netdata/packaging: [ci skip] Another hack, attempt to fix permissions on the host directly * netdata/packaging: [ci skip] fine, do the move also on the host, pointless to run all through the container * netdata/packaging: [ci skip] Do the move through the container. Also, move a more specific folder * netdata/packaging: [ci skip] move as w00t * netdata/packaging: [ci skip] fix * netdata/packaging: sync permissions handling, round two * netdata/packaging: scratch those hacks, we should do latest differently * netdata/packaging: [ci skip] Set up rpm version string depending on whether we are on latest or not * netdata/packaging: [ci skip] Branch the code here, latest build up should be on the commit rather the tar files * netdata/packaging: Attempt to handle latest version build up * netdata/packaging: [ci skip] Dont continue processing if the file was not generated. Also do the tagging before autoreconf * netdata/packaging: [ci skip] fixes and nits * netdata/packaging: [ci skip] When doing annotated tags, you need to provide a message otherwise an editor pops up and will block the build * netdata/packaging: on the latest code case go all the way host level operations * netdata/packaging: [ci skip] Do not modify version, no longer need it because we properly generated the package with the right version * netdata/packaging: [ci skip] fix sensors line, you missed the Recommends keyword * netdata/packaging: Some code style (remove tabification from some tags) and also remove Recommends, we start with required packages for build and runtime and then we document further needs * netdata/packaging: [ci skip] Make sure you get epel in there, its needed * netdata/packaging: [ci skip] Fix bogus date * netdata/packaging: [ci skip] add these packages to include functionality * netdata/packaging: [ci skip] more fine grained dependency handling * netdata/packaging: [ci skip] Dependency hell - do not depend on libnetacctfilter if on el/7 * netdata/packaging: [ci skip] Be serious, that is not what you do when building the package silly * netdata/packaging: [ci skip] define directory attributes too * netdata/packaging: [ci skip] mystery unfold - comment out as we need to figure out how to handle missing directories that our installer creates if necessary * netdata/packaging: [ci skip] Make sure you properly set deployment repo based on commit message * netdata/packaging: [ci skip] Install these packages for specific versions, remove optimisations for now * netdata/packaging: [ci skip] Make package yanking flexible, so that we can manage both netdata and netdata-edge cleanup properly * netdata/packaging: [ci skip] Actually, set user at travis layer and let the script consume it only. We need to be sure the same user is used on yanking and the deployment process * netdata/packaging: [ci skip] wow pkatsoul * netdata/packaging: Dont forget to install some of the enabled plugins * netdata/packaging: nfacct.plugin not really working on rhel, disable temporarily * netdata/packaging: include installed directories to package * netdata/packaging: [ci skip] nits * netdata/packaging: fixes * netdata/packaging: [ci skip] dont add ghost files * netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there * netdata/packaging: [ci skip] Extreme - override _libexecdir macro * Revert "netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there" This reverts commit 320102c96284e4622266f6f089d6ce87319976f3. That wasnt really the problem here * netdata/packaging: [ci skip] Include contents of dir here * netdata/packaging: fixes * netdata/packaging: [ci skip] Fixes and additions - Tighter permissions for some files - Introduce go.d plugin install (likely broken like this, dont recall if bash style code is fine here) - Raise the path overrides to the spec level, otherwise we build with the overrides and package with the defaults * netdata/packaging: [ci skip] Missed an invalid variable. These files are under our current path, no need for complexity * netdata/packaging: [ci skip] bring sha method onboard * netdata/packaging: [ci skip] Wrong path provided, should be under build root * netdata/packaging: [ci skip] Add registry directory * netdata/packaging: [ci skip] add missing config directory definitions * netdata/packaging: [ci skip] Fix missing dirs * netdata/packaging:[ci fix] hos * netdata/packaging: [ci skip] Fixes and additions - Change versioning to v1.15.0.114 from v1.15.0114 - Add CUPS, Xenstat, json-c * netdata/packaging: [ci skip] fix package dependencies on the builder setup, otherwise spec will fail * netdata/packaging: [ci skip] limit xenstat to suse and fedora for now * netdata/packaging: [ci skip] separate fedora and suse cases, unfortunately suse has different package names.... * netdata/packaging: [ci skip] yajl is not the same package everywhere, of course * netdata/packagin: [ci skip] skip xenstat for now * netdata/packaging: [ci skip] remove the vvvvvvvvv * netdata/packaging: [ci skip] one more fix attempt * netdata/packaging: [ci skip] Spec file extraction is different when building from stable. We *must* fetch it from the tarball rather than the local one * netdata/packaging: [ci skip] spec_file defined on all cases, latest or stable. Also move latest spec file copy after make dist operation, that is where is suppose to be * netdata/packaging: [ci skip] Tag source with the local version, as we build upon the very latest * netdata/packaging: oopsie -- remove json-c from that place, it was forgotten * netdata/packaging: fix packaging, even though devel is consistent between fedora and suse, the binary one is not .... (also fix default perms to be root:netdata rather root:root) * netdata/packaging: Suse love - again, libuuid-devel same, but libuuid is named libuuid1 on suse...... * netdata/packaging: [ci skip] libcap same.... * netdata/packaging: [ci skip] use the noreplace directive for the configuration files * netdata/packaging: [ci skip] Bring back master as the triggering repository * netdata/packaging: [ci skip] attempt to enable/disable service where necessary. Default preset action requires further setup, so we override that * Revert "netdata/packaging: [ci skip] Bring back master as the triggering repository" This reverts commit 9b25a622dc5f12b1539f6863bab52d7bb225fd8d. ** Reverting as we need to test further the service enable action ** * netdata/packaging: [ci skip] revert this change - not the right way, we have empty files * netdata/packaging: [ci skip] Add daemon-reload option, to make sure systemd learns about the newly installed service * netdata/packaging: [ci skip] Attempt to silence codacy by factoring out the few small methods for common usage, then kill directories to reduce complexity adn thats it * netdata/packaging: [ci skip] Just making sure codacy reprocess everything * netdata/packaging: [ci skip] missed one adjustment * netdata/packaging: python style - print shouldnt have space before open parenthesis. Also, add restart on all cases on the spec file * netdata/packaging: [ci skip] fix syntax * netdata/packaging: [ci skip] syntax fixes 2 * netdata/packaging: [ci skip] another miss * netdata/packaging: [ci skip] You need to explicitly trigger a restart, apparently * netdata/packaging: [ci skip] override packaging user definition temporarily, to get things going on testing
2019-07-03 09:18:17 +02:00
# #####################################################################
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
# CentOS prior to CentOS 8 does not have a new enough version of RPM
# to support weak dependencies. Explicitly requiring our default plugins
# makes it impossible to properly test the packages prior to upload,
# so we just skip depending on them on CentOS 7.
%if 0%{?_have_ebpf}
Requires: %{name}-plugin-ebpf = %{version}
%endif
Requires: %{name}-plugin-apps = %{version}
Requires: %{name}-plugin-pythond = %{version}
Requires: %{name}-plugin-go = %{version}
Requires: %{name}-plugin-debugfs = %{version}
Requires: %{name}-plugin-chartsd = %{version}
Requires: %{name}-plugin-slabinfo = %{version}
Requires: %{name}-plugin-perf = %{version}
%if %{_have_nfacct}
Requires: %{name}-plugin-nfacct = %{version}
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%endif
%if %{_have_xenstat}
Suggests: %{name}-plugin-xenstat = %{version}
%endif
%if %{_have_freeipmi} && 0%{?centos_ver} != 6 && 0%{?centos_ver} != 7 && 0%{?amazon_linux} != 2
Suggests: %{name}-plugin-freeipmi = %{version}
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%endif
%if 0%{?centos_ver} != 7 && 0%{?amazon_linux} != 2
%if %{_have_cups}
Suggests: %{name}-plugin-cups = %{version}
%endif
Recommends: %{name}-plugin-systemd-journal = %{version}
Recommends: %{name}-plugin-network-viewer = %{version}
Logs Management (#13291) This PR adds the logs-management external plugin. See the included README for an extensive list of features. ------------------------------------------------------------------------------------- * Add proper status return in JSON response of functions * Add column info to functions * Escape special characters when returning JSON response * Add proper functions help and defaults. Fix help not working * Add 'logs_management_meta' object in functions results * Fix compiler warnings * Replace tabs with 3 spaces in web_client_api_request_v1_logsmanagement_sources() * Add 'sources' in functions to display list of log sources * Update functions column values for logs * Update chart titles and remove '/s' from units * Add support for compound queries in circular buffers * Refactor circ_buff_search() to get rid of circ_buff_search_compound() * Fix incorrect docker events nano timestamp padding * Fixed botched rebasing * Replace get_unix_time_ms() with now_realtime_msec() * Remove binary generation from Fluent-Bit lib build * Fix compiler warnings due to new timestamp type * Remove STDIN and STDOUT support from Fluent-Bit library * Initial support for FLB_KMSG kernel logs collection * Add kernel logs charts * Add kernel logs subsystem and device charts * Skip collection of pre-existing logs in kmsg ring buffer * Add example of custom kmsg charts * Add extra initialization error logs * Fix bug of Docker Events collector failure disabling whole logs management engine * Remove reduntant FLB output code * Remove some obsolete TODO comments * Remove some commented out error/debug prints * Disable some Fluent-Bit config options not required * Make circular buffer spare items option configurable * Add DB mode configuration option * Replace p_file_infos_arr->data[i] with p_file_info in db_api.c * Remove db_loop due to all function calls being synchronous * Add initial README.md * Add DB mode = none changes * Add a simple webpage to visualize log query results * Add support for source selection to logs_query.html * Add option to query multiple log sources * Mark non-queryable sources as such in logs_query.html * Add option to use either GET or functions request in logs_query.html * Install logs_query.html when running stress tests * Update README.md requirements * Change installer behavior to build logs management by default * Disable logs management at runtime by default * Add global db mode configuration in 'logs management' config section * Split logsmanagement.conf into required & optional sections * Remove --enable-logsmanagement from stress test script * Add global config option for 'circular buffer max size MiB' * Add global config option for 'circular buffer drop logs if full' * Update 'General Configuration' in README.md * Add global config option for remaining optional settings * Add systemd collector requirements to TOC * README: Convert general configuration to table * README: Fix previous botched commit * Enable logs management by default when building for stress testing * Move logging to collector.log from error.log * Fix contenttype compilation errors * Move logging to collector.log in plugin_logsmanagement.c * Rename 'rows' to 'records' in charts * Add Netdata error.log parsing * Add more dashboard descriptions * Sanitize chart ids * Attempt to fix failing CI * Update README.md * Update README.md * Another attempt to fix CI failures * Fix undefined reference to 'uv_sleep' on certain platforms * Support FLB forward input and FLB output plugins. Squashed commit of the following: commit 55e2bf4fb34a2e02ffd0b280790197310a5299f3 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Apr 13 16:41:09 2023 +0300 Remove error.log from stock config commit bbdc62c2c9727359bc3c8ef8c33ee734d0039be7 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Apr 13 16:37:48 2023 +0300 Add cleanup of Fluent Bit outputs in p_file_info_destroy() commit 09b0aa4268ec1ccef160c99c5d5f31b6388edd28 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Apr 13 14:34:17 2023 +0300 Some code and config cleanup commit 030d074667d5ee2cad10f85cd836ca90e29346ad Author: Dim-P <dimitris1703@gmail.com> Date: Thu Apr 13 13:04:08 2023 +0300 Enable additional Fluent Bit output plugins for shared library commit 490aa5d44caa38042521d24c6b886b8b4a59a73c Author: Dim-P <dimitris1703@gmail.com> Date: Thu Apr 13 01:33:19 2023 +0300 Add initialization of Fluent Bit user-configured outputs commit c96e9fe9cea96549aa5eae09d0deeb130da02793 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Apr 4 23:13:16 2023 +0100 Complete read of parameters for FLB outputs config commit 00988897f9b86d1ecc5c141b19df7ad7d74f7e96 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Apr 3 19:43:31 2023 +0100 Update README.md commit 6deea5399c2707942aeaa51408f999ca45dfd351 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Apr 3 16:02:28 2023 +0100 Refactor Syslog_parser_config_t and add Flb_socket_config_t commit 7bf998a4c298bbd489ef735c56a6e85a137772c9 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Apr 3 14:19:57 2023 +0100 Update README.md commit c353d194b12c54f134936072ebaded0424d73cc0 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Mar 31 14:52:57 2023 +0100 Update README.md commit 6be726eaff3738ba7884de799aa52949833af65a Author: Dim-P <dimitris1703@gmail.com> Date: Fri Mar 31 13:06:29 2023 +0100 Update README. Fix docker_events streaming commit 6aabfb0f1ef0529a7a0ecbaf940bc0952bf42518 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Mar 30 21:27:45 2023 +0100 Fix stuck in infinite loop bug for FLB_GENERIC, FLB_WEB_LOG and FLB_SERIAL remote log sources commit eea6346b708cc7a5ce6e2249366870f4924eabae Author: Dim-P <dimitris1703@gmail.com> Date: Thu Mar 30 21:04:12 2023 +0100 Remove callback that searches for streamed p_file_info match commit bc9c5a523b0b0ab5588adbff391a43ba8d9a0cdf Author: Dim-P <dimitris1703@gmail.com> Date: Thu Mar 30 15:51:39 2023 +0100 Basic streaming works commit 4c80f59f0214bc07895f0b2edca47cb02bc06420 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Mar 28 22:05:22 2023 +0100 WIP commit eeb37a71b602fb0738fe8077ccddc0a8ce632304 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Mar 27 22:52:09 2023 +0100 Add generic forward streaming input commit 1459b91847c80c4d97de96b75b00771039458ad6 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Mar 23 18:50:14 2023 +0000 FLB_FORWARD: WIP * Add number of logs per item in DB and in queries response * Fix wrong number of lines stored in DB for web logs * Refactor number of logs parsers and charts code * Add option to toggle number of collected logs metrics and charts * Disable kmsg log collector by default * Fix logs_query.html to work with any server ip * Fix regressed wrong number of web log lines bug * Change query quota type from size_t to long long * Update alpine version when searching for fts-dev requirements * Update query results to return both requested and actual quota * Fix bug of circ buffs not being read if head == read but not empty * Squashed commit of the following: commit 34edb316a737f3edcffcf8fa88a3801599011495 Author: Dim-P <dimitris1703@gmail.com> Date: Thu May 4 20:02:36 2023 +0100 Comment out some debug prints commit 51b9b87a88516186530f5b4b65f785b543fefe8c Author: Dim-P <dimitris1703@gmail.com> Date: Fri Apr 28 19:21:54 2023 +0100 Fix wrong filenames in BLOBS_TABLE after rotation commit 6055fc2893b48661af324f20ee61511a40abbc02 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Apr 28 12:22:04 2023 +0100 Add chart showing number of circular buffer items commit 0bb5210b0847f4b7596f633ec96fc10aa8ebc791 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Apr 25 16:47:29 2023 +0300 Various fixes. Fix num_lines calculation. Add debug prints for circ buffers. Remove circ buff spare items option. Fix calculation of circ buff memory consumption. Add buff_realloc_rwlock for db_mode = none case. Fix circ buff read to be done correctly when buff is full. commit f494af8c95be84404c7d854494d26da3bcbd3ad7 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Apr 21 16:03:50 2023 +0300 Fix freez() on non-malloced address commit cce6d09e9cf9b847aface7309643e2c0a6041390 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Apr 21 15:41:25 2023 +0300 Add option to dynamically expand circ buffs when full * Use log timestamps when possible, instead of collection timestamps. Also, add config options for Fluent Bit engine and remove tail_plugin. Squashed commit of the following: commit b16a02eb6e3a90565c90e0a274b87b123e7b18e5 Author: Dim-P <dimitris1703@gmail.com> Date: Tue May 16 19:38:57 2023 +0100 Add Fluent Bit service config options to netdata.conf. Add monitoring of new log file fluentbit.log commit ab77c286294548ea62a3879ac0f8b8bbfe6a0687 Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 15 21:25:17 2023 +0100 Remove some debug prints commit 46d64ad2434e69b1d20720297aec1ddb869e1f84 Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 15 21:19:32 2023 +0100 Fix null values in charts commit 8ec96821d6a882f28cbd19244ebdfc86c807d2f4 Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 15 17:43:04 2023 +0100 Update README.md to reflect log timestamp changes commit 079a91858cf9db2f74711581235bc17eb97c7dad Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 15 16:23:14 2023 +0100 Add configurable option for 'update timeout' commit 72b5e2505d4657fcbb5ccb6eeee00c45eb0b51ff Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 15 16:05:08 2023 +0100 Revert logsmanagement.conf to logs-manag-master one commit 70d0ea6f8d272fff318aa3095d90a78dcc3411a7 Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 15 16:02:00 2023 +0100 Fix bug of circ buff items not marked as done commit 5716420838771edb7842be4669bf96235b15cf71 Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 15 16:01:41 2023 +0100 Fix do_custom_charts_update() to work for all log sources commit a8def8f53fd25c3efa56ef27e267df3261913a8e Author: Dim-P <dimitris1703@gmail.com> Date: Fri May 12 18:20:20 2023 +0100 Remove GENERIC and WEB_LOG cases. Remove tail_plugin.c/h. Remove generic_parser(). commit 1cf05966e33491dbeb9b877f18d1ea8643aabeba Author: Dim-P <dimitris1703@gmail.com> Date: Fri May 12 16:54:59 2023 +0100 Fix FLB_GENERIC and FLB_SERIAL to work with new timestamp logic commit df3266810531f1af5f99b666fbf44c503b304a39 Author: Dim-P <dimitris1703@gmail.com> Date: Fri May 12 14:55:04 2023 +0100 Get rid of *_collect() functions and restructure plugin_logsmanagement workers commit 3eee069842f3257fffe60dacfc274363bc43491c Author: Dim-P <dimitris1703@gmail.com> Date: Fri May 12 14:28:33 2023 +0100 Fix wrong order of #define _XOPEN_SOURCE 700 in parser.c commit 941aa80cb55d5a7d6fe8926da930d9803be52312 Author: Dim-P <dimitris1703@gmail.com> Date: Thu May 11 22:27:39 2023 +0100 Update plugin_logsmanagement_web_log to use new timestamp logic and to support delayed logs. Refactor req_method metrics code. commit 427a7d0e2366d43cb5eab7daa1ed82dfc3bc8bc8 Author: Dim-P <dimitris1703@gmail.com> Date: Tue May 9 20:26:08 2023 +0100 Update plugin_logsmanagement_kernel to use new timestamp logic and to support delayed charts commit a7e95a6d3e5c8b62531b671fd3ec7b8a3196b5bb Author: Dim-P <dimitris1703@gmail.com> Date: Tue May 9 15:22:14 2023 +0100 Update plugin_logsmanagement_systemd to use new timestamp logic and support delayed charts commit 48237ac2ce49c82abdf2783952fd9f0ef05d72e1 Author: Dim-P <dimitris1703@gmail.com> Date: Tue May 9 13:29:44 2023 +0100 Refactor number of collected logs chart update code commit a933c8fcae61c23fa0ec6d0074526ac5d243cf16 Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 8 22:11:19 2023 +0100 Update plugin_logsmanagement_docker_ev to use new timestamp logic and support delayed charts commit 5d8db057155affd5cb721399a639d75a81801b7f Author: Dim-P <dimitris1703@gmail.com> Date: Fri May 5 15:18:06 2023 +0100 Change some Fluent Bit collectors to use log timestamps instead of collection timestamps * Remove some unused defines and typedefs * Improve flb_init() * Update file-level doxygen. Add SPDX license declaration. * Better handling of termination of Fluent Bit * Better handling of DB errors. Various fixes. Squashed commit of the following: commit f55feea1274c3857eda1e9d899743db6e3eb5bf5 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Jun 6 13:28:00 2023 +0100 Fix web log parsing in case of lines terminated by \r commit 9e05758a4ecfac57a0db14757cff9536deda51d8 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Jun 5 20:42:05 2023 +0100 Fix warnings due to -Wformat-truncation=2 commit 63477666fa42446d74693aae542580d4e1e81f03 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Jun 5 16:48:45 2023 +0100 Autodiscovery of Netdata error.log based on netdata_configured_log_dir commit cab5e6d6061f4259172bbf72666e8b4a3a35dd66 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Jun 5 16:24:39 2023 +0100 Replace Forward config default string literals with macros commit 4213398031dbb53afbc943d76bf7df202d12bf6f Author: Dim-P <dimitris1703@gmail.com> Date: Mon Jun 5 15:56:29 2023 +0100 Proper cleanup of flb_lib_out_cb *callback in case of error commit f76fd7cc7bc2d0241e4d3517f61ae192d4246300 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Jun 5 15:36:07 2023 +0100 Proper termination of Forward input and respective log sources in case of error commit 3739fd96c29e13298eb3a6e943a63172cdf39d5f Author: Dim-P <dimitris1703@gmail.com> Date: Thu Jun 1 21:19:56 2023 +0100 Merge db_search() and db_search_compound() commit fcface90cb0a6df3c3a2de5e1908b1b3467dd579 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Jun 1 19:17:26 2023 +0100 Proper error handling in db_search() and db_search_compound(). Refactor the code too. commit c10667ebee2510a1af77114b3a7e18a0054b5dae Author: Dim-P <dimitris1703@gmail.com> Date: Thu Jun 1 14:23:34 2023 +0100 Update DB mode and dir when switching to db_mode_none commit d37d4c3d79333bb9fa430650c13ad625458620e8 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Jun 1 12:56:13 2023 +0100 Fix flb_stop() SIGSEGV commit 892e231c68775ff1a1f052d292d26384f1ef54b1 Author: Dim-P <dimitris1703@gmail.com> Date: Tue May 30 21:14:58 2023 +0100 Switch to db_writer_db_mode_none if db_writer_db_mode_full encounters error commit f7a0c2135ff61d3a5b0460ec5964eb6bce164bd6 Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 29 21:41:21 2023 +0100 Complete error handling changes to db_init(). Add some const type qualifiers. Refactor some code for readability commit 13dbeac936d22958394cb1aaec394384f5a93fdd Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 29 17:14:17 2023 +0100 More error handling changes in db_init(). Change some global default settings if stress testing. commit eb0691c269cd09054190bf0ee9c4e9247b4a2548 Author: Dim-P <dimitris1703@gmail.com> Date: Fri May 26 23:29:12 2023 +0100 Better handling of db writer threads errors. Add db timings charts * Fix mystrsep() replaced by strsep_skip_consecutive_separators() * Fix older GCC failure due to label before declaration * Fix failed builds when using libuv <= v1.19 * Fix some Codacy warnings * Fix warning: implicit declaration of function ‘strsep’ * Use USEC_PER_SEC instead of 1000000ULL * Use UUID_STR_LEN instead of GUID_LEN + 1 * Combine multiple 'ln -sf' Docker instructions to one * Update README with systemd development libraries requirement * Comment out mallocz() success checkes in parser_csv() * Fix shellcheck warnings * Remove asserts for empty SYSLOG_IDENTIFIER or PID * Fix FreeBSD failing builds * Fix some more shellcheck warnings * Update Alpine fts-dev required packages * First changes to use web log timestamp for correct metrics timings * Initial work to add test_parse_web_log_line() unit test * Complete test_parse_web_log_line() tests * Improve parse_web_log_line() for better handling of \n, \r, double quotes etc. * Fix 'Invalid TIME error when timezone sign is negative * Add more logs to compression unit test case * Misc read_last_line() improvements * Fix failing test_auto_detect_web_log_parser_config() when test case terminated without '\n' * Remove unused preprocessor macro * Factor out setup of parse_config_expected_num_fields * Add test for count_fields() * Add unit test for read_last_line() * Fix a read_last_line() bug * Remove PLUGIN[logsmanagement] static thread and update charts synchronously, right before data buffering * Fix web log parser potential SIGSEGV * Fix web log metrics bug where they could show delayed by 1 collection interval * WIP: Add multiline support to kmsg logs and fix metric timings * Fix kmsg subsystem and device parsing and metrics * Add option 'use log timestamp' to select between log timestamps or collection timestamps * Add 'Getting Started' docs section * Move logs management functions code to separate source files * Add 'Nginx access.log' chart description * Remove logsmanagement.plugin source files * Fix some memory leaks * Improve cleanup of logsmanagement_main() * Fix a potential memory leak of fwd_input_out_cb * Better termination and cleanup of main_loop and its handles * Fix main_db_dir access() check bug * Avoid uv_walk() SIGSEGV * Remove main_db_dir access() check * Better termination and cleanup of DB code * Remove flb_socket_config_destroy() that could cause a segmentation fault * Disable unique client IPs - all-time chart by default * Update README.md * Fix debug() -> netdata_log_debug() * Fix read_last_line() * Fix timestamp sign adjustment and wrong unit tests * Change WEB_CLIENT_ACL_DASHBOARD to WEB_CLIENT_ACL_DASHBOARD_ACLK_WEBRTC * Do not parse web log timestamps if 'use_log_timestamp = no' * Add Logs Management back into buildinfo.c * Update README.md * Do not build Fluent Bit executable binary * Change logs rate chart to RRDSET_TYPE_LINE * Add kludge to prevent metrics breaking due to out of order logs * Fix wrong flb_tmp_buff_cpy_timer expiration * Refactor initialization of input plugin for local log sources. * Rename FLB_GENERIC collector to FLB_TAIL. * Switch 'Netdata fluentbit.log' to disabled by default * Add 'use inotify' configuration option * Update in README.md * Add docker event actions metrics * Update README.md to include event action chart * Remove commented out PLUGIN[logsmanagement] code block * Fix some warnings * Add documentation for outgoing log streaming and exporting * Fix some code block formatting in README.md * Refactor code related to error status of log query results and add new invalid timestamp case * Reduce query mem allocs and fix end timestamp == 0 bug * Add support for duplicate timestamps in db_search() * Add support for duplicate timestamps in circ_buff_search() * Fix docker events contexts * Various query fixes prior to reverse order search. - Add reverse qsort() function in circ buffers. - Fix issues to properly support of duplicate timestamps. - Separate requested from actual timestamps in query parameters. - Rename results buffer variable name to be consistent between DB and buffers. - Remove default start and end timestamp from functions. - Improve handling of invalid quotas provided by users. - Rename 'until' timestamp name to 'to'. - Increase default quota to 10MB from 1MB. - Allow start timestamp to be > than end timestamp. * Complete descending timestamp search for circular buffers * Complete descending timestamp search for DB * Remove MEASURE_QUERY_TIME code block * Complete descending timestamp search when data resides in both DB and circular buffers * Use pointer instead of copying res_hdr in query results * Refactor web log timezone parsing to use static memory allocation * Add stats for CPU user & system time per MiB of query results * Micro-optimization to slightly speed up queries * More micro-optimizations and some code cleanup * Remove LOGS_QUERY_DATA_FORMAT_NEW_LINE option * Escape iscntrl() chars at collection rather at query * Reduce number of buffer_strcat() calls * Complete descending timestamp order queries for web_api_v1 * Complete descending timestamp order queries for functions * Fix functions query timings to match web_api_v1 ones * Add MQTT message collector Squashed commit of the following: commit dbe515372ee04880b1841ef7800abe9385b12e1c Author: Dim-P <dimitris1703@gmail.com> Date: Mon Aug 21 15:18:46 2023 +0100 Update README.md with MQTT information commit c0b5dbcb7cdef8c6fbd5e72e7bdd08957a0fd3de Author: Dim-P <dimitris1703@gmail.com> Date: Mon Aug 21 14:59:36 2023 +0100 Tidy up before merge commit 9a69c4f17eac858532918a8f850a770b12710f80 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Aug 21 12:54:33 2023 +0100 Fix issue with duplicate Log_Source_Path in DB, introduced in commit e417af3 commit 48213e9713216d62fca8a5bc1bbc41a3883fdc14 Author: Dim-P <dimitris1703@gmail.com> Date: Sat Aug 19 05:05:36 2023 +0100 WIP commit e417af3b947f11bd61e3255306bc95953863998d Author: Dim-P <dimitris1703@gmail.com> Date: Thu Aug 17 18:03:39 2023 +0100 Update functions logsmanagement help output * Inhibit Fluent Bit build warnings * Fix missing allow_subpaths value in api_commands_v1[]. * Fix missing HTTP_RESP_BACKEND_FETCH_FAILED error * Fix an enum print warning * Remove systemd-devel requirement from README and fix codacy warnings * Update Alpine versions for musl-fts-dev * Update Fluent Bit to v2.1.8 Squashed commit of the following: commit faf6fc4b7919cc2611124acc67cb1973ce705530 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Aug 25 17:13:30 2023 +0100 Fix wrong default CORE_STACK_SIZE on Alpine commit a810238fe7830ce626f6d57245d68035b29723f7 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Aug 25 00:40:02 2023 +0100 Update Fluent Bit patches for musl commit 8bed3b611dba94a053e22c2b4aa1d46f7787d9b4 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Aug 24 21:54:38 2023 +0100 Fix an edge case crash when web log method is '-' commit b29b48ea230363142697f9749508cd926e18ee19 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Aug 24 16:26:13 2023 +0100 Disable FLB_OUT_CALYPTIA to fix Alpine dlsym() error commit eabe0d0523ffe98ff881675c21b0763a49c05f16 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Aug 22 21:25:54 2023 +0100 Add 'use inotify = no' troubleshooting Q&A in README commit 7f7ae85bdb0def63b4fc05ab88f6572db948e0e7 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Aug 22 18:06:36 2023 +0100 Update README.md links to latest version commit 610c5ac7b920d4a1dfe364ad48f1ca14a0acc346 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Aug 22 16:23:30 2023 +0100 Update flb_parser_create() definition commit f99608ff524b6f3462264e626a1073f9c2fdfdf5 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Aug 22 16:23:04 2023 +0100 Add new config.cmake options commit 446b0d564626055a0a125f525d0bd3754184b830 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Aug 22 12:21:25 2023 +0100 Update Fluent Bit submodule to v2.1.8 * Add logs_management_unittest() to CI 'unittest' * Remove obsolete query testing files * Patch Fluent Bit log format to match netdata's format * Update README with instructions on how to monitor Podman events logs * Fix core dump in case of flb_lib_path dlopen() * Fix some potential compiler warnings * Fix queries crash if logs manag engine not running * Much faster termination of LOGS MANAGEMENT * Add facets support and other minor fixes. logsmanagement_function_execute_cb() is replaced by logsmanagement_function_facets() which adds facets support to logs management queries. Internal query results header now includes additional fields (log_source, log_type, basename, filename, chartname), that are used as facets. Queries now support timeout as a query parameter. A web log timestamp bug is fixed (by using timegm() instead of mktime(). web_api_v1 logsmanagement API is only available in debugging now. Squashed commit of the following: commit 32cf0381283029d793ec3af30d96e6cd77ee9149 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 19 16:21:32 2023 +0300 Tidy up commit f956b5846451c6b955a150b5d071947037e935f0 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 19 13:30:54 2023 +0300 Add more accepted params. Add data_only option. Add if_modified_since option. commit 588c2425c60dcdd14349b7b346467dba32fda4e9 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Sep 18 18:39:50 2023 +0300 Add timeout to queries commit da0f055fc47a36d9af4b7cc4cefb8eb6630e36d9 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 14 19:17:16 2023 +0300 Fix histogram commit 7149890974e0d26420ec1c5cfe1023801dc973fa Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 14 17:58:52 2023 +0300 Add keyword query using simple patterns and fix descending timestamp values commit 0bd068c5a76e694b876027e9fa5af6f333ab825b Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 14 13:54:05 2023 +0300 Add basename, filename, chartname as facets commit 023c2b5f758b2479a0e48da575cd59500a1373b6 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 14 13:26:06 2023 +0300 Add info and sources functions options commit ab4d555b7d445f7291af474847bd9177d3726a76 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 14 12:54:37 2023 +0300 Fix facet id filter commit a69c9e2732f5a6da1764bb57d1c06d8d65979225 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 14 12:07:13 2023 +0300 WIP: Add facet id filters commit 3c02b5de81fa8a20c712863c347539a52936ddd8 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 12 18:19:17 2023 +0300 Add log source and log type to circ buff query results header commit 8ca98672c4911c126e50f3cbdd69ac363abdb33d Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 12 18:18:13 2023 +0300 Fix logsmanagement facet function after master rebasing commit 3f1517ad56cda2473a279a8d130bec869fc2cbb8 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 12 18:14:25 2023 +0300 Restrict /logsmanagement to ACL_DEV_OPEN_ACCESS only commit 8ca98d69b08d006c682997268d5d2523ddde6be0 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 12 14:40:22 2023 +0300 Fix incorrectly parsed timestamps due to DST commit f9b0848037b29c7fcc46da951ca5cd9eb129066f Author: Dim-P <dimitris1703@gmail.com> Date: Mon Sep 11 13:42:18 2023 +0300 Add logs_management_meta object to facet query results commit babc978f6c97107aaf8b337d8d31735d61761b6a Author: Dim-P <dimitris1703@gmail.com> Date: Mon Sep 11 13:03:52 2023 +0300 Query all sources if no arguments provided commit 486d56de87af56aae6c0dc5d165341418222ce8b Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 7 18:38:04 2023 +0300 Add log_source and log_type (only for DB logs) as facets. Add relative time support commit b564c12843d355c4da6436af358d5f352cb58bfe Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 7 13:47:20 2023 +0300 Working facet with descending timestamps commit 68c6a5c64e8425cf28ec16adfb0c50289caa82a9 Author: Dim-P <dimitris1703@gmail.com> Date: Wed Sep 6 01:55:51 2023 +0300 WIP * Fix linking errors * Convert logs management to external plugin. Squashed commit of the following: commit 16da6ba70ebde0859aed734087f04af497ce3a77 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 24 18:44:12 2023 +0100 Use higher value of update every from netdata.conf or logsmanagement.d.conf commit 88cc3497c403e07686e9fc0876ebb0c610a1404c Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 24 18:43:02 2023 +0100 Tidy up commit c3fca57aac169842637d210269519612b1a91e28 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 24 18:02:04 2023 +0100 Use external update_every from agent, if available commit f7470708ba82495b03297cdf8962a09b16617ddd Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 24 17:40:46 2023 +0100 Re-enable debug logs commit b34f5ac6a2228361ab41df7d7e5e713f724368c0 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 24 15:49:20 2023 +0100 Remove old API calls from web_api_v1.c/h commit 7fbc1e699a7785ec837233b9562199ee6c7684da Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 24 15:32:04 2023 +0100 Add proper termination of stats charts thread commit 4c0fc05c8b14593bd7a0aa68f75a8a1205e04db4 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 24 15:31:36 2023 +0100 Add tests for logsmanag_config functions commit 4dfdacb55707ab46ed6c2d5ce538ac012574b27e Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 23 22:01:19 2023 +0100 Remove unused headers from logsmanagement.c commit b324ef396207c5c32e40ea9ad462bf374470b230 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 23 21:56:26 2023 +0100 Remove inline from get_X_dir() functions commit e9656e8121b66cd7ef8b5daaa5d27a134427aa35 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 23 21:50:32 2023 +0100 Proper termination when a signal is received commit b09eec147bdeffae7b268b6335f6ba89f084e050 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 23 20:12:13 2023 +0100 Refactor logs management config code in separate source files commit 014b46a5008fd296f7d25854079c518d018abdec Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 23 14:54:47 2023 +0100 Fix p_file_info_destroy() crash commit e0bdfd182513bb8d5d4b4b5b8a4cc248ccf2d64e Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 23 14:18:27 2023 +0100 Code refactoring and cleanup commit 6a61cb6e2fd3a535db150b01d9450f44b3e27b30 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Oct 20 14:08:43 2023 +0100 Fix 'source:all' queries commit 45b516aaf819ac142353e323209b7d01e487393f Author: Dim-P <dimitris1703@gmail.com> Date: Thu Oct 19 21:51:05 2023 +0100 Working 'source:...' queries and regular data queries (but not 'source:all') commit 8064b0ee71c63da9803f79424802f860e96326e5 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Oct 19 15:34:23 2023 +0100 Fix issue due to p_file_info_destroy() commit a0aacc9cd00cea60218c9bfd2b9f164918a1e3de Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 17 22:06:34 2023 +0100 Work on facet API changes commit 480584ff9040c07e996b14efb4d21970a347633f Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 16 21:43:06 2023 +0100 Add stats charts, running as separate thread commit 34d582dbe4bf2d8d048afab41681e337705bc611 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 16 16:24:02 2023 +0100 Add SSL cipher charts commit ced27ee4e2c981d291f498244f2eef2556a074fb Author: Dim-P <dimitris1703@gmail.com> Date: Sun Oct 15 21:33:29 2023 +0100 Add Response code family, Response code, Response code type, SSL protocol charts commit 40c4a1d91892d49b1e4e18a1c3c43258ded4014d Author: Dim-P <dimitris1703@gmail.com> Date: Sat Oct 14 00:48:48 2023 +0100 Add more web log charts commit 890ed3ff97153dd18d15df2d1b57a181bc498ca8 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Oct 13 22:14:11 2023 +0100 Add web log vhosts and ports charts commit 84733b6b1d353aff70687603019443610a8500c3 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Oct 12 21:40:16 2023 +0100 Add systemd charts commit 14673501e8f48560956f53d5b670bbe801b8f2ae Author: Dim-P <dimitris1703@gmail.com> Date: Wed Oct 11 00:28:43 2023 +0100 Add MQTT charts commit 366eb63b0a27dde6f0f8ba65120f34c18c1b21fd Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 10 21:46:19 2023 +0100 Complete kmsg changes. Reduce mem usage. Fix a dictionary key size bug commit 3d0216365a526ffbc9ce13a20c45447bfccb47d9 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 10 19:18:41 2023 +0100 Add kmsg Subsystem charts commit e61af4bb130a5cf5a5a78133f1e44b2b4c457b24 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 10 16:21:29 2023 +0100 Fix bug of wrong kmsg timestamps in case of use_log_timestamp == 0 commit 03d22e0b26bddf249aab431a4f977bbd5cde98ca Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 10 16:20:47 2023 +0100 Add kmsg charts, except for Subsystem and Device commit f60b0787537a21ed3c4cea5101fcddc50f3bc55a Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 10 13:12:13 2023 +0100 Initialise all docker events chart dimensions at startup commit 5d873d3439abaf3768530cb5b72c6b4ef6565353 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 10 00:53:35 2023 +0100 WIP: Add Docker events logs commit 2cc3d6d98f58fc3ab67a8da3014210b14d0926a1 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 9 18:52:27 2023 +0100 Use macros for num_of_logs_charts and custom_charts functions commit fbd48ad3c9af674601238990d74192427475f2e3 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 9 18:26:17 2023 +0100 Refactor custom charts code for clarity and speed commit a31d80b5dc91161c0d74b10d00bc4fd1e6da7965 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Oct 5 23:58:27 2023 +0100 Add first working iteration of custom charts commit b1e4ab8a460f4b4c3e2804e2f775787d21fbee45 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Oct 5 23:57:27 2023 +0100 Add more custom charts for Netdata error.log commit f1b7605e564da3e297942f073593cdd4c21f88e1 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Oct 5 20:39:40 2023 +0100 Convert collected_logs_* chart updates to macros commit 1459bc2b8bcd5ba21e024b10a8a5101048938f71 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Oct 5 19:11:54 2023 +0100 Use rrdset_timed_done() instead of duration_since_last_update for correct chart timings commit 876854c6ee7586a3eb9fdbf795bcc17a5fd1e6ad Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 3 21:53:14 2023 +0100 Fix some bugs in chart updates commit ae87508485499984bcb9b72bbc7d249c4168b380 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 3 21:32:55 2023 +0100 Functioning generic_chart_init() and generic_chart_update() commit 982a9c4108dbea9571c785b5ff8a9d1e5472066c Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 28 23:32:52 2023 +0100 Add support for multiple .conf files. Add stock examples. commit 8e8abd0731227eb3fb3c6bcd811349575160799e Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 28 17:38:30 2023 +0100 Add support for logsmanagement.d/default.conf commit 1bf0732217b1d9e9959e1507ea96fc2c92ffb2ff Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 28 14:31:03 2023 +0100 Add capabilities. Fix paths in logsmanagement.d.conf commit a849d5b405bb4e5d770726fe99413a4efa7df274 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 26 23:06:31 2023 +0100 Change logs_manag_config_load() commit b0d1783b996286cd87e0832bfb74c29a845d61fc Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 26 15:35:30 2023 +0100 Working unit tests and argument parsing commit 6da1b4267a4d58d3a7cbcca9507afe8158a2e324 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Sep 22 00:32:47 2023 +0300 Build logs-management.plugin successfully commit 9e30efe0422e4941f99cc66998d9f42e00a24676 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 21 16:13:21 2023 +0300 Fix print format specifier in web_client_api_request_v1_logsmanagement() * Modify CODEOWNERS * Update README.md Fix indentation * Change snprintfz() to stncpyz() in circ_buff_search(). Change remaining 'chart_name' to 'chartname'. * Replace SQLite version function with macro * Fix some codacy warnings * Update README.md * Update Fluent Bit to v2.1.10 * Remove some comments * Fix Fluent Bit shared library linking for armv7l and FreeBSD * Remove compression source files * Add prefix to rrd_api.h functions * Add more unit tests * Fix kmsg capabilities * Separate kmsg and systemd default paths * Fix some memory leaks and better termination of DB * Add iterative queries if quota is exceeded * Fix centos7 builds * Fix issue where SYSTEMD timestamps are not parsed * Fix logs management packaging. * Fix typo in DEB control file. * Fix indentation and missing new line at EOF * Clean up functions and update help * Fix 400 error when no queryable sources are available * Fix if_modified_since. Add FACET_MAX_VALUE_LENGTH * Add delta parameter and use anchor points in queries * Fix CodeQL #182 warning * Fix packaging issues. * Fix postinstall script for DEB packages. * Improve plugin shutdown speed * Fix docker events chart grouping * Fix functions evloop threads not terminating upon shutdown * Fix coverity issues * Fix logging * Replace 'Netdata error.log' with 'Netdata daemon.log' in 'default.conf' * Remove 'enabled = yes/no' config in logsmanagement.d.conf * Remove 'enabled = X' unused config from logsmanagement.d.conf --------- Co-authored-by: Austin S. Hemmelgarn <austin@netdata.cloud>
2023-11-27 17:55:14 +01:00
Recommends: %{name}-plugin-logs-management = %{version}
%else
Requires: %{name}-plugin-systemd-journal = %{version}
Requires: %{name}-plugin-network-viewer = %{version}
%endif
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
# #####################################################################
# Functionality-dependent package dependencies
# #####################################################################
# Note: Some or all of the Packages may be found in the EPEL repo,
# rather than the standard ones
# epbf plugin dependencies
%if %{_have_ebpf}
BuildRequires: pkgconfig(libelf)
%endif
# end ebpf plugin dependencies
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
# nfacct plugin dependencies
%if %{_have_nfacct}
BuildRequires: pkgconfig(libmnl)
BuildRequires: pkgconfig(libnetfilter_acct)
netdata/packaging: Netdata binary packages generation - spec file refinement, support for nightlies (RPM) (#6369) Detailed list of changes: * netdata/packaging: First round of netdata.spec refactoring - package dependencies - Remove freeipmi/nfacct plugin flags. We auto-detect all plugins by decision - Start refactor of package dependencies - Add missing dependencies, with respect to distro peculiarities - Adjust existing dependencies, so that distro-specific package names is applied * netdata/packaging: add packaging trigger mechanism on binary-packages-specfile-cleanup to help testing * netdata/packaging: WIP - Allow building nightly versions for RPM (Still investigating the right version scheme) * netdata/packaging: Attempt to fix syntax errors - wow travis, mercy * netdata/packaging: tiny nits and fixes 1) there was a syntax error in version definition 2) bring default deploy repo name at the top, then overwrite when latest is published 3) Leave a comment * netdata/packaging: Move these core package requirements to the right section * netdata/packaging: libuv requires >= 1, missed to add that on devel libs * netdata/packaging: some comments, also when you put logrotate in our conf directory, link it to actual log rotate * netdata/packaging: Adjust configure options on spec file (align with netdata-installer.sh) * netdata/packaging: In order to properly support packaging both latest and stable releases, you need to star that extraction part, folder name contains the version with the hash that we cant tell * netdata/packaging: until we fix versioning, bring the original unprocessed spec file and pass the version we like in * netdata/packaging: fix version string in the spec file * netdata/packaging: Replace source path, we need to work with whatever we downloaded (to be refined) * netdata/packaging: [ci skip] you mixed the paths, reverse them * netdata/packaging: [ci skip] attempt to fix source path when needed * netdata/packaging: fixes and nits 1) generalize the spec file refinement method 2) Do both replacement that way 3) Adjust file names and paths * netdata/packaging: Replace Source0 explicitly and also make sure you remove extra new lines that may confuse the replacement later * netdata/packaging: [ci skip] move env outside, add some more log * netdata/packaging: [ci skip] adjust logic of replacing tag lines in spec file * netdata/packaging: [ci skip] Alas, fetch the archive, rename the structure to the new version, repack and proceed * netdata/packaging: [ci skip] Extract to specific path * netdata/packaging: [ci skip] replace problematic tar call with the respective pythonized one * netdata/packaging: [ci skip] Add new friendly octal format for chmod * netdata/packaging: [ci skip] more checks * netdata/packaging: [ci skip] dont chmod, chown the whole folder after extraction * netdata/packaging: nit * netdata/packaging: [ci skip] attempt to fix permissions differently * netdata/packaging: [ci skip] Another hack, attempt to fix permissions on the host directly * netdata/packaging: [ci skip] fine, do the move also on the host, pointless to run all through the container * netdata/packaging: [ci skip] Do the move through the container. Also, move a more specific folder * netdata/packaging: [ci skip] move as w00t * netdata/packaging: [ci skip] fix * netdata/packaging: sync permissions handling, round two * netdata/packaging: scratch those hacks, we should do latest differently * netdata/packaging: [ci skip] Set up rpm version string depending on whether we are on latest or not * netdata/packaging: [ci skip] Branch the code here, latest build up should be on the commit rather the tar files * netdata/packaging: Attempt to handle latest version build up * netdata/packaging: [ci skip] Dont continue processing if the file was not generated. Also do the tagging before autoreconf * netdata/packaging: [ci skip] fixes and nits * netdata/packaging: [ci skip] When doing annotated tags, you need to provide a message otherwise an editor pops up and will block the build * netdata/packaging: on the latest code case go all the way host level operations * netdata/packaging: [ci skip] Do not modify version, no longer need it because we properly generated the package with the right version * netdata/packaging: [ci skip] fix sensors line, you missed the Recommends keyword * netdata/packaging: Some code style (remove tabification from some tags) and also remove Recommends, we start with required packages for build and runtime and then we document further needs * netdata/packaging: [ci skip] Make sure you get epel in there, its needed * netdata/packaging: [ci skip] Fix bogus date * netdata/packaging: [ci skip] add these packages to include functionality * netdata/packaging: [ci skip] more fine grained dependency handling * netdata/packaging: [ci skip] Dependency hell - do not depend on libnetacctfilter if on el/7 * netdata/packaging: [ci skip] Be serious, that is not what you do when building the package silly * netdata/packaging: [ci skip] define directory attributes too * netdata/packaging: [ci skip] mystery unfold - comment out as we need to figure out how to handle missing directories that our installer creates if necessary * netdata/packaging: [ci skip] Make sure you properly set deployment repo based on commit message * netdata/packaging: [ci skip] Install these packages for specific versions, remove optimisations for now * netdata/packaging: [ci skip] Make package yanking flexible, so that we can manage both netdata and netdata-edge cleanup properly * netdata/packaging: [ci skip] Actually, set user at travis layer and let the script consume it only. We need to be sure the same user is used on yanking and the deployment process * netdata/packaging: [ci skip] wow pkatsoul * netdata/packaging: Dont forget to install some of the enabled plugins * netdata/packaging: nfacct.plugin not really working on rhel, disable temporarily * netdata/packaging: include installed directories to package * netdata/packaging: [ci skip] nits * netdata/packaging: fixes * netdata/packaging: [ci skip] dont add ghost files * netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there * netdata/packaging: [ci skip] Extreme - override _libexecdir macro * Revert "netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there" This reverts commit 320102c96284e4622266f6f089d6ce87319976f3. That wasnt really the problem here * netdata/packaging: [ci skip] Include contents of dir here * netdata/packaging: fixes * netdata/packaging: [ci skip] Fixes and additions - Tighter permissions for some files - Introduce go.d plugin install (likely broken like this, dont recall if bash style code is fine here) - Raise the path overrides to the spec level, otherwise we build with the overrides and package with the defaults * netdata/packaging: [ci skip] Missed an invalid variable. These files are under our current path, no need for complexity * netdata/packaging: [ci skip] bring sha method onboard * netdata/packaging: [ci skip] Wrong path provided, should be under build root * netdata/packaging: [ci skip] Add registry directory * netdata/packaging: [ci skip] add missing config directory definitions * netdata/packaging: [ci skip] Fix missing dirs * netdata/packaging:[ci fix] hos * netdata/packaging: [ci skip] Fixes and additions - Change versioning to v1.15.0.114 from v1.15.0114 - Add CUPS, Xenstat, json-c * netdata/packaging: [ci skip] fix package dependencies on the builder setup, otherwise spec will fail * netdata/packaging: [ci skip] limit xenstat to suse and fedora for now * netdata/packaging: [ci skip] separate fedora and suse cases, unfortunately suse has different package names.... * netdata/packaging: [ci skip] yajl is not the same package everywhere, of course * netdata/packagin: [ci skip] skip xenstat for now * netdata/packaging: [ci skip] remove the vvvvvvvvv * netdata/packaging: [ci skip] one more fix attempt * netdata/packaging: [ci skip] Spec file extraction is different when building from stable. We *must* fetch it from the tarball rather than the local one * netdata/packaging: [ci skip] spec_file defined on all cases, latest or stable. Also move latest spec file copy after make dist operation, that is where is suppose to be * netdata/packaging: [ci skip] Tag source with the local version, as we build upon the very latest * netdata/packaging: oopsie -- remove json-c from that place, it was forgotten * netdata/packaging: fix packaging, even though devel is consistent between fedora and suse, the binary one is not .... (also fix default perms to be root:netdata rather root:root) * netdata/packaging: Suse love - again, libuuid-devel same, but libuuid is named libuuid1 on suse...... * netdata/packaging: [ci skip] libcap same.... * netdata/packaging: [ci skip] use the noreplace directive for the configuration files * netdata/packaging: [ci skip] Bring back master as the triggering repository * netdata/packaging: [ci skip] attempt to enable/disable service where necessary. Default preset action requires further setup, so we override that * Revert "netdata/packaging: [ci skip] Bring back master as the triggering repository" This reverts commit 9b25a622dc5f12b1539f6863bab52d7bb225fd8d. ** Reverting as we need to test further the service enable action ** * netdata/packaging: [ci skip] revert this change - not the right way, we have empty files * netdata/packaging: [ci skip] Add daemon-reload option, to make sure systemd learns about the newly installed service * netdata/packaging: [ci skip] Attempt to silence codacy by factoring out the few small methods for common usage, then kill directories to reduce complexity adn thats it * netdata/packaging: [ci skip] Just making sure codacy reprocess everything * netdata/packaging: [ci skip] missed one adjustment * netdata/packaging: python style - print shouldnt have space before open parenthesis. Also, add restart on all cases on the spec file * netdata/packaging: [ci skip] fix syntax * netdata/packaging: [ci skip] syntax fixes 2 * netdata/packaging: [ci skip] another miss * netdata/packaging: [ci skip] You need to explicitly trigger a restart, apparently * netdata/packaging: [ci skip] override packaging user definition temporarily, to get things going on testing
2019-07-03 09:18:17 +02:00
%endif
# end nfacct plugin dependencies
# freeipmi plugin dependencies
%if %{_have_freeipmi}
BuildRequires: pkgconfig(libipmimonitoring)
%endif
netdata/packaging: Netdata binary packages generation - spec file refinement, support for nightlies (RPM) (#6369) Detailed list of changes: * netdata/packaging: First round of netdata.spec refactoring - package dependencies - Remove freeipmi/nfacct plugin flags. We auto-detect all plugins by decision - Start refactor of package dependencies - Add missing dependencies, with respect to distro peculiarities - Adjust existing dependencies, so that distro-specific package names is applied * netdata/packaging: add packaging trigger mechanism on binary-packages-specfile-cleanup to help testing * netdata/packaging: WIP - Allow building nightly versions for RPM (Still investigating the right version scheme) * netdata/packaging: Attempt to fix syntax errors - wow travis, mercy * netdata/packaging: tiny nits and fixes 1) there was a syntax error in version definition 2) bring default deploy repo name at the top, then overwrite when latest is published 3) Leave a comment * netdata/packaging: Move these core package requirements to the right section * netdata/packaging: libuv requires >= 1, missed to add that on devel libs * netdata/packaging: some comments, also when you put logrotate in our conf directory, link it to actual log rotate * netdata/packaging: Adjust configure options on spec file (align with netdata-installer.sh) * netdata/packaging: In order to properly support packaging both latest and stable releases, you need to star that extraction part, folder name contains the version with the hash that we cant tell * netdata/packaging: until we fix versioning, bring the original unprocessed spec file and pass the version we like in * netdata/packaging: fix version string in the spec file * netdata/packaging: Replace source path, we need to work with whatever we downloaded (to be refined) * netdata/packaging: [ci skip] you mixed the paths, reverse them * netdata/packaging: [ci skip] attempt to fix source path when needed * netdata/packaging: fixes and nits 1) generalize the spec file refinement method 2) Do both replacement that way 3) Adjust file names and paths * netdata/packaging: Replace Source0 explicitly and also make sure you remove extra new lines that may confuse the replacement later * netdata/packaging: [ci skip] move env outside, add some more log * netdata/packaging: [ci skip] adjust logic of replacing tag lines in spec file * netdata/packaging: [ci skip] Alas, fetch the archive, rename the structure to the new version, repack and proceed * netdata/packaging: [ci skip] Extract to specific path * netdata/packaging: [ci skip] replace problematic tar call with the respective pythonized one * netdata/packaging: [ci skip] Add new friendly octal format for chmod * netdata/packaging: [ci skip] more checks * netdata/packaging: [ci skip] dont chmod, chown the whole folder after extraction * netdata/packaging: nit * netdata/packaging: [ci skip] attempt to fix permissions differently * netdata/packaging: [ci skip] Another hack, attempt to fix permissions on the host directly * netdata/packaging: [ci skip] fine, do the move also on the host, pointless to run all through the container * netdata/packaging: [ci skip] Do the move through the container. Also, move a more specific folder * netdata/packaging: [ci skip] move as w00t * netdata/packaging: [ci skip] fix * netdata/packaging: sync permissions handling, round two * netdata/packaging: scratch those hacks, we should do latest differently * netdata/packaging: [ci skip] Set up rpm version string depending on whether we are on latest or not * netdata/packaging: [ci skip] Branch the code here, latest build up should be on the commit rather the tar files * netdata/packaging: Attempt to handle latest version build up * netdata/packaging: [ci skip] Dont continue processing if the file was not generated. Also do the tagging before autoreconf * netdata/packaging: [ci skip] fixes and nits * netdata/packaging: [ci skip] When doing annotated tags, you need to provide a message otherwise an editor pops up and will block the build * netdata/packaging: on the latest code case go all the way host level operations * netdata/packaging: [ci skip] Do not modify version, no longer need it because we properly generated the package with the right version * netdata/packaging: [ci skip] fix sensors line, you missed the Recommends keyword * netdata/packaging: Some code style (remove tabification from some tags) and also remove Recommends, we start with required packages for build and runtime and then we document further needs * netdata/packaging: [ci skip] Make sure you get epel in there, its needed * netdata/packaging: [ci skip] Fix bogus date * netdata/packaging: [ci skip] add these packages to include functionality * netdata/packaging: [ci skip] more fine grained dependency handling * netdata/packaging: [ci skip] Dependency hell - do not depend on libnetacctfilter if on el/7 * netdata/packaging: [ci skip] Be serious, that is not what you do when building the package silly * netdata/packaging: [ci skip] define directory attributes too * netdata/packaging: [ci skip] mystery unfold - comment out as we need to figure out how to handle missing directories that our installer creates if necessary * netdata/packaging: [ci skip] Make sure you properly set deployment repo based on commit message * netdata/packaging: [ci skip] Install these packages for specific versions, remove optimisations for now * netdata/packaging: [ci skip] Make package yanking flexible, so that we can manage both netdata and netdata-edge cleanup properly * netdata/packaging: [ci skip] Actually, set user at travis layer and let the script consume it only. We need to be sure the same user is used on yanking and the deployment process * netdata/packaging: [ci skip] wow pkatsoul * netdata/packaging: Dont forget to install some of the enabled plugins * netdata/packaging: nfacct.plugin not really working on rhel, disable temporarily * netdata/packaging: include installed directories to package * netdata/packaging: [ci skip] nits * netdata/packaging: fixes * netdata/packaging: [ci skip] dont add ghost files * netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there * netdata/packaging: [ci skip] Extreme - override _libexecdir macro * Revert "netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there" This reverts commit 320102c96284e4622266f6f089d6ce87319976f3. That wasnt really the problem here * netdata/packaging: [ci skip] Include contents of dir here * netdata/packaging: fixes * netdata/packaging: [ci skip] Fixes and additions - Tighter permissions for some files - Introduce go.d plugin install (likely broken like this, dont recall if bash style code is fine here) - Raise the path overrides to the spec level, otherwise we build with the overrides and package with the defaults * netdata/packaging: [ci skip] Missed an invalid variable. These files are under our current path, no need for complexity * netdata/packaging: [ci skip] bring sha method onboard * netdata/packaging: [ci skip] Wrong path provided, should be under build root * netdata/packaging: [ci skip] Add registry directory * netdata/packaging: [ci skip] add missing config directory definitions * netdata/packaging: [ci skip] Fix missing dirs * netdata/packaging:[ci fix] hos * netdata/packaging: [ci skip] Fixes and additions - Change versioning to v1.15.0.114 from v1.15.0114 - Add CUPS, Xenstat, json-c * netdata/packaging: [ci skip] fix package dependencies on the builder setup, otherwise spec will fail * netdata/packaging: [ci skip] limit xenstat to suse and fedora for now * netdata/packaging: [ci skip] separate fedora and suse cases, unfortunately suse has different package names.... * netdata/packaging: [ci skip] yajl is not the same package everywhere, of course * netdata/packagin: [ci skip] skip xenstat for now * netdata/packaging: [ci skip] remove the vvvvvvvvv * netdata/packaging: [ci skip] one more fix attempt * netdata/packaging: [ci skip] Spec file extraction is different when building from stable. We *must* fetch it from the tarball rather than the local one * netdata/packaging: [ci skip] spec_file defined on all cases, latest or stable. Also move latest spec file copy after make dist operation, that is where is suppose to be * netdata/packaging: [ci skip] Tag source with the local version, as we build upon the very latest * netdata/packaging: oopsie -- remove json-c from that place, it was forgotten * netdata/packaging: fix packaging, even though devel is consistent between fedora and suse, the binary one is not .... (also fix default perms to be root:netdata rather root:root) * netdata/packaging: Suse love - again, libuuid-devel same, but libuuid is named libuuid1 on suse...... * netdata/packaging: [ci skip] libcap same.... * netdata/packaging: [ci skip] use the noreplace directive for the configuration files * netdata/packaging: [ci skip] Bring back master as the triggering repository * netdata/packaging: [ci skip] attempt to enable/disable service where necessary. Default preset action requires further setup, so we override that * Revert "netdata/packaging: [ci skip] Bring back master as the triggering repository" This reverts commit 9b25a622dc5f12b1539f6863bab52d7bb225fd8d. ** Reverting as we need to test further the service enable action ** * netdata/packaging: [ci skip] revert this change - not the right way, we have empty files * netdata/packaging: [ci skip] Add daemon-reload option, to make sure systemd learns about the newly installed service * netdata/packaging: [ci skip] Attempt to silence codacy by factoring out the few small methods for common usage, then kill directories to reduce complexity adn thats it * netdata/packaging: [ci skip] Just making sure codacy reprocess everything * netdata/packaging: [ci skip] missed one adjustment * netdata/packaging: python style - print shouldnt have space before open parenthesis. Also, add restart on all cases on the spec file * netdata/packaging: [ci skip] fix syntax * netdata/packaging: [ci skip] syntax fixes 2 * netdata/packaging: [ci skip] another miss * netdata/packaging: [ci skip] You need to explicitly trigger a restart, apparently * netdata/packaging: [ci skip] override packaging user definition temporarily, to get things going on testing
2019-07-03 09:18:17 +02:00
# end - freeipmi plugin dependencies
# CUPS plugin dependencies
%if %{_have_cups}
BuildRequires: cups-devel
%endif
netdata/packaging: Netdata binary packages generation - spec file refinement, support for nightlies (RPM) (#6369) Detailed list of changes: * netdata/packaging: First round of netdata.spec refactoring - package dependencies - Remove freeipmi/nfacct plugin flags. We auto-detect all plugins by decision - Start refactor of package dependencies - Add missing dependencies, with respect to distro peculiarities - Adjust existing dependencies, so that distro-specific package names is applied * netdata/packaging: add packaging trigger mechanism on binary-packages-specfile-cleanup to help testing * netdata/packaging: WIP - Allow building nightly versions for RPM (Still investigating the right version scheme) * netdata/packaging: Attempt to fix syntax errors - wow travis, mercy * netdata/packaging: tiny nits and fixes 1) there was a syntax error in version definition 2) bring default deploy repo name at the top, then overwrite when latest is published 3) Leave a comment * netdata/packaging: Move these core package requirements to the right section * netdata/packaging: libuv requires >= 1, missed to add that on devel libs * netdata/packaging: some comments, also when you put logrotate in our conf directory, link it to actual log rotate * netdata/packaging: Adjust configure options on spec file (align with netdata-installer.sh) * netdata/packaging: In order to properly support packaging both latest and stable releases, you need to star that extraction part, folder name contains the version with the hash that we cant tell * netdata/packaging: until we fix versioning, bring the original unprocessed spec file and pass the version we like in * netdata/packaging: fix version string in the spec file * netdata/packaging: Replace source path, we need to work with whatever we downloaded (to be refined) * netdata/packaging: [ci skip] you mixed the paths, reverse them * netdata/packaging: [ci skip] attempt to fix source path when needed * netdata/packaging: fixes and nits 1) generalize the spec file refinement method 2) Do both replacement that way 3) Adjust file names and paths * netdata/packaging: Replace Source0 explicitly and also make sure you remove extra new lines that may confuse the replacement later * netdata/packaging: [ci skip] move env outside, add some more log * netdata/packaging: [ci skip] adjust logic of replacing tag lines in spec file * netdata/packaging: [ci skip] Alas, fetch the archive, rename the structure to the new version, repack and proceed * netdata/packaging: [ci skip] Extract to specific path * netdata/packaging: [ci skip] replace problematic tar call with the respective pythonized one * netdata/packaging: [ci skip] Add new friendly octal format for chmod * netdata/packaging: [ci skip] more checks * netdata/packaging: [ci skip] dont chmod, chown the whole folder after extraction * netdata/packaging: nit * netdata/packaging: [ci skip] attempt to fix permissions differently * netdata/packaging: [ci skip] Another hack, attempt to fix permissions on the host directly * netdata/packaging: [ci skip] fine, do the move also on the host, pointless to run all through the container * netdata/packaging: [ci skip] Do the move through the container. Also, move a more specific folder * netdata/packaging: [ci skip] move as w00t * netdata/packaging: [ci skip] fix * netdata/packaging: sync permissions handling, round two * netdata/packaging: scratch those hacks, we should do latest differently * netdata/packaging: [ci skip] Set up rpm version string depending on whether we are on latest or not * netdata/packaging: [ci skip] Branch the code here, latest build up should be on the commit rather the tar files * netdata/packaging: Attempt to handle latest version build up * netdata/packaging: [ci skip] Dont continue processing if the file was not generated. Also do the tagging before autoreconf * netdata/packaging: [ci skip] fixes and nits * netdata/packaging: [ci skip] When doing annotated tags, you need to provide a message otherwise an editor pops up and will block the build * netdata/packaging: on the latest code case go all the way host level operations * netdata/packaging: [ci skip] Do not modify version, no longer need it because we properly generated the package with the right version * netdata/packaging: [ci skip] fix sensors line, you missed the Recommends keyword * netdata/packaging: Some code style (remove tabification from some tags) and also remove Recommends, we start with required packages for build and runtime and then we document further needs * netdata/packaging: [ci skip] Make sure you get epel in there, its needed * netdata/packaging: [ci skip] Fix bogus date * netdata/packaging: [ci skip] add these packages to include functionality * netdata/packaging: [ci skip] more fine grained dependency handling * netdata/packaging: [ci skip] Dependency hell - do not depend on libnetacctfilter if on el/7 * netdata/packaging: [ci skip] Be serious, that is not what you do when building the package silly * netdata/packaging: [ci skip] define directory attributes too * netdata/packaging: [ci skip] mystery unfold - comment out as we need to figure out how to handle missing directories that our installer creates if necessary * netdata/packaging: [ci skip] Make sure you properly set deployment repo based on commit message * netdata/packaging: [ci skip] Install these packages for specific versions, remove optimisations for now * netdata/packaging: [ci skip] Make package yanking flexible, so that we can manage both netdata and netdata-edge cleanup properly * netdata/packaging: [ci skip] Actually, set user at travis layer and let the script consume it only. We need to be sure the same user is used on yanking and the deployment process * netdata/packaging: [ci skip] wow pkatsoul * netdata/packaging: Dont forget to install some of the enabled plugins * netdata/packaging: nfacct.plugin not really working on rhel, disable temporarily * netdata/packaging: include installed directories to package * netdata/packaging: [ci skip] nits * netdata/packaging: fixes * netdata/packaging: [ci skip] dont add ghost files * netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there * netdata/packaging: [ci skip] Extreme - override _libexecdir macro * Revert "netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there" This reverts commit 320102c96284e4622266f6f089d6ce87319976f3. That wasnt really the problem here * netdata/packaging: [ci skip] Include contents of dir here * netdata/packaging: fixes * netdata/packaging: [ci skip] Fixes and additions - Tighter permissions for some files - Introduce go.d plugin install (likely broken like this, dont recall if bash style code is fine here) - Raise the path overrides to the spec level, otherwise we build with the overrides and package with the defaults * netdata/packaging: [ci skip] Missed an invalid variable. These files are under our current path, no need for complexity * netdata/packaging: [ci skip] bring sha method onboard * netdata/packaging: [ci skip] Wrong path provided, should be under build root * netdata/packaging: [ci skip] Add registry directory * netdata/packaging: [ci skip] add missing config directory definitions * netdata/packaging: [ci skip] Fix missing dirs * netdata/packaging:[ci fix] hos * netdata/packaging: [ci skip] Fixes and additions - Change versioning to v1.15.0.114 from v1.15.0114 - Add CUPS, Xenstat, json-c * netdata/packaging: [ci skip] fix package dependencies on the builder setup, otherwise spec will fail * netdata/packaging: [ci skip] limit xenstat to suse and fedora for now * netdata/packaging: [ci skip] separate fedora and suse cases, unfortunately suse has different package names.... * netdata/packaging: [ci skip] yajl is not the same package everywhere, of course * netdata/packagin: [ci skip] skip xenstat for now * netdata/packaging: [ci skip] remove the vvvvvvvvv * netdata/packaging: [ci skip] one more fix attempt * netdata/packaging: [ci skip] Spec file extraction is different when building from stable. We *must* fetch it from the tarball rather than the local one * netdata/packaging: [ci skip] spec_file defined on all cases, latest or stable. Also move latest spec file copy after make dist operation, that is where is suppose to be * netdata/packaging: [ci skip] Tag source with the local version, as we build upon the very latest * netdata/packaging: oopsie -- remove json-c from that place, it was forgotten * netdata/packaging: fix packaging, even though devel is consistent between fedora and suse, the binary one is not .... (also fix default perms to be root:netdata rather root:root) * netdata/packaging: Suse love - again, libuuid-devel same, but libuuid is named libuuid1 on suse...... * netdata/packaging: [ci skip] libcap same.... * netdata/packaging: [ci skip] use the noreplace directive for the configuration files * netdata/packaging: [ci skip] Bring back master as the triggering repository * netdata/packaging: [ci skip] attempt to enable/disable service where necessary. Default preset action requires further setup, so we override that * Revert "netdata/packaging: [ci skip] Bring back master as the triggering repository" This reverts commit 9b25a622dc5f12b1539f6863bab52d7bb225fd8d. ** Reverting as we need to test further the service enable action ** * netdata/packaging: [ci skip] revert this change - not the right way, we have empty files * netdata/packaging: [ci skip] Add daemon-reload option, to make sure systemd learns about the newly installed service * netdata/packaging: [ci skip] Attempt to silence codacy by factoring out the few small methods for common usage, then kill directories to reduce complexity adn thats it * netdata/packaging: [ci skip] Just making sure codacy reprocess everything * netdata/packaging: [ci skip] missed one adjustment * netdata/packaging: python style - print shouldnt have space before open parenthesis. Also, add restart on all cases on the spec file * netdata/packaging: [ci skip] fix syntax * netdata/packaging: [ci skip] syntax fixes 2 * netdata/packaging: [ci skip] another miss * netdata/packaging: [ci skip] You need to explicitly trigger a restart, apparently * netdata/packaging: [ci skip] override packaging user definition temporarily, to get things going on testing
2019-07-03 09:18:17 +02:00
# end - cups plugin dependencies
# go.d.plugin dependencies
#
# The conditional here is checking for a macro we define in our package
# builders. If its defined, then weve injected an upstream copy of
# the Go toolchain, so we dont need the package installed (which
# is needed because Gos development model is at odds with enterprise
# distro handling of versioning).
%if %{?_upstream_go_toolchain:0}%{!?_upstream_go_toolchain:1}
%if 0%{?suse_version}
BuildRequires: go >= 1.21
%else
BuildRequires: golang >= 1.21
%endif
%endif
# end - go.d.plugin plugin dependencies
# systemd-journal dependencies
BuildRequires: pkgconfig(libsystemd)
# end - systemd-journal dependencies
# Prometheus remote write dependencies
%if 0%{?suse_version}
BuildRequires: snappy-devel
%else
%if 0%{?centos_ver} != 7
BuildRequires: pkgconfig(snappy)
%else
BuildRequires: snappy-devel
%endif
%endif
# end - prometheus remote write dependencies
# Xenstat dependencies
%if %{_have_xenstat}
BuildRequires: pkgconfig(xenstat)
BuildRequires: pkgconfig(xenlight)
%endif
# end - xenstat dependencies
# MongoDB exporter dependencies
%if %{_have_mongo_exporter}
BuildRequires: pkgconfig(libmongoc-1.0)
%endif
# end - mongodb expoerter dependencies
Logs Management (#13291) This PR adds the logs-management external plugin. See the included README for an extensive list of features. ------------------------------------------------------------------------------------- * Add proper status return in JSON response of functions * Add column info to functions * Escape special characters when returning JSON response * Add proper functions help and defaults. Fix help not working * Add 'logs_management_meta' object in functions results * Fix compiler warnings * Replace tabs with 3 spaces in web_client_api_request_v1_logsmanagement_sources() * Add 'sources' in functions to display list of log sources * Update functions column values for logs * Update chart titles and remove '/s' from units * Add support for compound queries in circular buffers * Refactor circ_buff_search() to get rid of circ_buff_search_compound() * Fix incorrect docker events nano timestamp padding * Fixed botched rebasing * Replace get_unix_time_ms() with now_realtime_msec() * Remove binary generation from Fluent-Bit lib build * Fix compiler warnings due to new timestamp type * Remove STDIN and STDOUT support from Fluent-Bit library * Initial support for FLB_KMSG kernel logs collection * Add kernel logs charts * Add kernel logs subsystem and device charts * Skip collection of pre-existing logs in kmsg ring buffer * Add example of custom kmsg charts * Add extra initialization error logs * Fix bug of Docker Events collector failure disabling whole logs management engine * Remove reduntant FLB output code * Remove some obsolete TODO comments * Remove some commented out error/debug prints * Disable some Fluent-Bit config options not required * Make circular buffer spare items option configurable * Add DB mode configuration option * Replace p_file_infos_arr->data[i] with p_file_info in db_api.c * Remove db_loop due to all function calls being synchronous * Add initial README.md * Add DB mode = none changes * Add a simple webpage to visualize log query results * Add support for source selection to logs_query.html * Add option to query multiple log sources * Mark non-queryable sources as such in logs_query.html * Add option to use either GET or functions request in logs_query.html * Install logs_query.html when running stress tests * Update README.md requirements * Change installer behavior to build logs management by default * Disable logs management at runtime by default * Add global db mode configuration in 'logs management' config section * Split logsmanagement.conf into required & optional sections * Remove --enable-logsmanagement from stress test script * Add global config option for 'circular buffer max size MiB' * Add global config option for 'circular buffer drop logs if full' * Update 'General Configuration' in README.md * Add global config option for remaining optional settings * Add systemd collector requirements to TOC * README: Convert general configuration to table * README: Fix previous botched commit * Enable logs management by default when building for stress testing * Move logging to collector.log from error.log * Fix contenttype compilation errors * Move logging to collector.log in plugin_logsmanagement.c * Rename 'rows' to 'records' in charts * Add Netdata error.log parsing * Add more dashboard descriptions * Sanitize chart ids * Attempt to fix failing CI * Update README.md * Update README.md * Another attempt to fix CI failures * Fix undefined reference to 'uv_sleep' on certain platforms * Support FLB forward input and FLB output plugins. Squashed commit of the following: commit 55e2bf4fb34a2e02ffd0b280790197310a5299f3 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Apr 13 16:41:09 2023 +0300 Remove error.log from stock config commit bbdc62c2c9727359bc3c8ef8c33ee734d0039be7 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Apr 13 16:37:48 2023 +0300 Add cleanup of Fluent Bit outputs in p_file_info_destroy() commit 09b0aa4268ec1ccef160c99c5d5f31b6388edd28 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Apr 13 14:34:17 2023 +0300 Some code and config cleanup commit 030d074667d5ee2cad10f85cd836ca90e29346ad Author: Dim-P <dimitris1703@gmail.com> Date: Thu Apr 13 13:04:08 2023 +0300 Enable additional Fluent Bit output plugins for shared library commit 490aa5d44caa38042521d24c6b886b8b4a59a73c Author: Dim-P <dimitris1703@gmail.com> Date: Thu Apr 13 01:33:19 2023 +0300 Add initialization of Fluent Bit user-configured outputs commit c96e9fe9cea96549aa5eae09d0deeb130da02793 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Apr 4 23:13:16 2023 +0100 Complete read of parameters for FLB outputs config commit 00988897f9b86d1ecc5c141b19df7ad7d74f7e96 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Apr 3 19:43:31 2023 +0100 Update README.md commit 6deea5399c2707942aeaa51408f999ca45dfd351 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Apr 3 16:02:28 2023 +0100 Refactor Syslog_parser_config_t and add Flb_socket_config_t commit 7bf998a4c298bbd489ef735c56a6e85a137772c9 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Apr 3 14:19:57 2023 +0100 Update README.md commit c353d194b12c54f134936072ebaded0424d73cc0 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Mar 31 14:52:57 2023 +0100 Update README.md commit 6be726eaff3738ba7884de799aa52949833af65a Author: Dim-P <dimitris1703@gmail.com> Date: Fri Mar 31 13:06:29 2023 +0100 Update README. Fix docker_events streaming commit 6aabfb0f1ef0529a7a0ecbaf940bc0952bf42518 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Mar 30 21:27:45 2023 +0100 Fix stuck in infinite loop bug for FLB_GENERIC, FLB_WEB_LOG and FLB_SERIAL remote log sources commit eea6346b708cc7a5ce6e2249366870f4924eabae Author: Dim-P <dimitris1703@gmail.com> Date: Thu Mar 30 21:04:12 2023 +0100 Remove callback that searches for streamed p_file_info match commit bc9c5a523b0b0ab5588adbff391a43ba8d9a0cdf Author: Dim-P <dimitris1703@gmail.com> Date: Thu Mar 30 15:51:39 2023 +0100 Basic streaming works commit 4c80f59f0214bc07895f0b2edca47cb02bc06420 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Mar 28 22:05:22 2023 +0100 WIP commit eeb37a71b602fb0738fe8077ccddc0a8ce632304 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Mar 27 22:52:09 2023 +0100 Add generic forward streaming input commit 1459b91847c80c4d97de96b75b00771039458ad6 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Mar 23 18:50:14 2023 +0000 FLB_FORWARD: WIP * Add number of logs per item in DB and in queries response * Fix wrong number of lines stored in DB for web logs * Refactor number of logs parsers and charts code * Add option to toggle number of collected logs metrics and charts * Disable kmsg log collector by default * Fix logs_query.html to work with any server ip * Fix regressed wrong number of web log lines bug * Change query quota type from size_t to long long * Update alpine version when searching for fts-dev requirements * Update query results to return both requested and actual quota * Fix bug of circ buffs not being read if head == read but not empty * Squashed commit of the following: commit 34edb316a737f3edcffcf8fa88a3801599011495 Author: Dim-P <dimitris1703@gmail.com> Date: Thu May 4 20:02:36 2023 +0100 Comment out some debug prints commit 51b9b87a88516186530f5b4b65f785b543fefe8c Author: Dim-P <dimitris1703@gmail.com> Date: Fri Apr 28 19:21:54 2023 +0100 Fix wrong filenames in BLOBS_TABLE after rotation commit 6055fc2893b48661af324f20ee61511a40abbc02 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Apr 28 12:22:04 2023 +0100 Add chart showing number of circular buffer items commit 0bb5210b0847f4b7596f633ec96fc10aa8ebc791 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Apr 25 16:47:29 2023 +0300 Various fixes. Fix num_lines calculation. Add debug prints for circ buffers. Remove circ buff spare items option. Fix calculation of circ buff memory consumption. Add buff_realloc_rwlock for db_mode = none case. Fix circ buff read to be done correctly when buff is full. commit f494af8c95be84404c7d854494d26da3bcbd3ad7 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Apr 21 16:03:50 2023 +0300 Fix freez() on non-malloced address commit cce6d09e9cf9b847aface7309643e2c0a6041390 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Apr 21 15:41:25 2023 +0300 Add option to dynamically expand circ buffs when full * Use log timestamps when possible, instead of collection timestamps. Also, add config options for Fluent Bit engine and remove tail_plugin. Squashed commit of the following: commit b16a02eb6e3a90565c90e0a274b87b123e7b18e5 Author: Dim-P <dimitris1703@gmail.com> Date: Tue May 16 19:38:57 2023 +0100 Add Fluent Bit service config options to netdata.conf. Add monitoring of new log file fluentbit.log commit ab77c286294548ea62a3879ac0f8b8bbfe6a0687 Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 15 21:25:17 2023 +0100 Remove some debug prints commit 46d64ad2434e69b1d20720297aec1ddb869e1f84 Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 15 21:19:32 2023 +0100 Fix null values in charts commit 8ec96821d6a882f28cbd19244ebdfc86c807d2f4 Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 15 17:43:04 2023 +0100 Update README.md to reflect log timestamp changes commit 079a91858cf9db2f74711581235bc17eb97c7dad Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 15 16:23:14 2023 +0100 Add configurable option for 'update timeout' commit 72b5e2505d4657fcbb5ccb6eeee00c45eb0b51ff Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 15 16:05:08 2023 +0100 Revert logsmanagement.conf to logs-manag-master one commit 70d0ea6f8d272fff318aa3095d90a78dcc3411a7 Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 15 16:02:00 2023 +0100 Fix bug of circ buff items not marked as done commit 5716420838771edb7842be4669bf96235b15cf71 Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 15 16:01:41 2023 +0100 Fix do_custom_charts_update() to work for all log sources commit a8def8f53fd25c3efa56ef27e267df3261913a8e Author: Dim-P <dimitris1703@gmail.com> Date: Fri May 12 18:20:20 2023 +0100 Remove GENERIC and WEB_LOG cases. Remove tail_plugin.c/h. Remove generic_parser(). commit 1cf05966e33491dbeb9b877f18d1ea8643aabeba Author: Dim-P <dimitris1703@gmail.com> Date: Fri May 12 16:54:59 2023 +0100 Fix FLB_GENERIC and FLB_SERIAL to work with new timestamp logic commit df3266810531f1af5f99b666fbf44c503b304a39 Author: Dim-P <dimitris1703@gmail.com> Date: Fri May 12 14:55:04 2023 +0100 Get rid of *_collect() functions and restructure plugin_logsmanagement workers commit 3eee069842f3257fffe60dacfc274363bc43491c Author: Dim-P <dimitris1703@gmail.com> Date: Fri May 12 14:28:33 2023 +0100 Fix wrong order of #define _XOPEN_SOURCE 700 in parser.c commit 941aa80cb55d5a7d6fe8926da930d9803be52312 Author: Dim-P <dimitris1703@gmail.com> Date: Thu May 11 22:27:39 2023 +0100 Update plugin_logsmanagement_web_log to use new timestamp logic and to support delayed logs. Refactor req_method metrics code. commit 427a7d0e2366d43cb5eab7daa1ed82dfc3bc8bc8 Author: Dim-P <dimitris1703@gmail.com> Date: Tue May 9 20:26:08 2023 +0100 Update plugin_logsmanagement_kernel to use new timestamp logic and to support delayed charts commit a7e95a6d3e5c8b62531b671fd3ec7b8a3196b5bb Author: Dim-P <dimitris1703@gmail.com> Date: Tue May 9 15:22:14 2023 +0100 Update plugin_logsmanagement_systemd to use new timestamp logic and support delayed charts commit 48237ac2ce49c82abdf2783952fd9f0ef05d72e1 Author: Dim-P <dimitris1703@gmail.com> Date: Tue May 9 13:29:44 2023 +0100 Refactor number of collected logs chart update code commit a933c8fcae61c23fa0ec6d0074526ac5d243cf16 Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 8 22:11:19 2023 +0100 Update plugin_logsmanagement_docker_ev to use new timestamp logic and support delayed charts commit 5d8db057155affd5cb721399a639d75a81801b7f Author: Dim-P <dimitris1703@gmail.com> Date: Fri May 5 15:18:06 2023 +0100 Change some Fluent Bit collectors to use log timestamps instead of collection timestamps * Remove some unused defines and typedefs * Improve flb_init() * Update file-level doxygen. Add SPDX license declaration. * Better handling of termination of Fluent Bit * Better handling of DB errors. Various fixes. Squashed commit of the following: commit f55feea1274c3857eda1e9d899743db6e3eb5bf5 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Jun 6 13:28:00 2023 +0100 Fix web log parsing in case of lines terminated by \r commit 9e05758a4ecfac57a0db14757cff9536deda51d8 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Jun 5 20:42:05 2023 +0100 Fix warnings due to -Wformat-truncation=2 commit 63477666fa42446d74693aae542580d4e1e81f03 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Jun 5 16:48:45 2023 +0100 Autodiscovery of Netdata error.log based on netdata_configured_log_dir commit cab5e6d6061f4259172bbf72666e8b4a3a35dd66 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Jun 5 16:24:39 2023 +0100 Replace Forward config default string literals with macros commit 4213398031dbb53afbc943d76bf7df202d12bf6f Author: Dim-P <dimitris1703@gmail.com> Date: Mon Jun 5 15:56:29 2023 +0100 Proper cleanup of flb_lib_out_cb *callback in case of error commit f76fd7cc7bc2d0241e4d3517f61ae192d4246300 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Jun 5 15:36:07 2023 +0100 Proper termination of Forward input and respective log sources in case of error commit 3739fd96c29e13298eb3a6e943a63172cdf39d5f Author: Dim-P <dimitris1703@gmail.com> Date: Thu Jun 1 21:19:56 2023 +0100 Merge db_search() and db_search_compound() commit fcface90cb0a6df3c3a2de5e1908b1b3467dd579 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Jun 1 19:17:26 2023 +0100 Proper error handling in db_search() and db_search_compound(). Refactor the code too. commit c10667ebee2510a1af77114b3a7e18a0054b5dae Author: Dim-P <dimitris1703@gmail.com> Date: Thu Jun 1 14:23:34 2023 +0100 Update DB mode and dir when switching to db_mode_none commit d37d4c3d79333bb9fa430650c13ad625458620e8 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Jun 1 12:56:13 2023 +0100 Fix flb_stop() SIGSEGV commit 892e231c68775ff1a1f052d292d26384f1ef54b1 Author: Dim-P <dimitris1703@gmail.com> Date: Tue May 30 21:14:58 2023 +0100 Switch to db_writer_db_mode_none if db_writer_db_mode_full encounters error commit f7a0c2135ff61d3a5b0460ec5964eb6bce164bd6 Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 29 21:41:21 2023 +0100 Complete error handling changes to db_init(). Add some const type qualifiers. Refactor some code for readability commit 13dbeac936d22958394cb1aaec394384f5a93fdd Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 29 17:14:17 2023 +0100 More error handling changes in db_init(). Change some global default settings if stress testing. commit eb0691c269cd09054190bf0ee9c4e9247b4a2548 Author: Dim-P <dimitris1703@gmail.com> Date: Fri May 26 23:29:12 2023 +0100 Better handling of db writer threads errors. Add db timings charts * Fix mystrsep() replaced by strsep_skip_consecutive_separators() * Fix older GCC failure due to label before declaration * Fix failed builds when using libuv <= v1.19 * Fix some Codacy warnings * Fix warning: implicit declaration of function ‘strsep’ * Use USEC_PER_SEC instead of 1000000ULL * Use UUID_STR_LEN instead of GUID_LEN + 1 * Combine multiple 'ln -sf' Docker instructions to one * Update README with systemd development libraries requirement * Comment out mallocz() success checkes in parser_csv() * Fix shellcheck warnings * Remove asserts for empty SYSLOG_IDENTIFIER or PID * Fix FreeBSD failing builds * Fix some more shellcheck warnings * Update Alpine fts-dev required packages * First changes to use web log timestamp for correct metrics timings * Initial work to add test_parse_web_log_line() unit test * Complete test_parse_web_log_line() tests * Improve parse_web_log_line() for better handling of \n, \r, double quotes etc. * Fix 'Invalid TIME error when timezone sign is negative * Add more logs to compression unit test case * Misc read_last_line() improvements * Fix failing test_auto_detect_web_log_parser_config() when test case terminated without '\n' * Remove unused preprocessor macro * Factor out setup of parse_config_expected_num_fields * Add test for count_fields() * Add unit test for read_last_line() * Fix a read_last_line() bug * Remove PLUGIN[logsmanagement] static thread and update charts synchronously, right before data buffering * Fix web log parser potential SIGSEGV * Fix web log metrics bug where they could show delayed by 1 collection interval * WIP: Add multiline support to kmsg logs and fix metric timings * Fix kmsg subsystem and device parsing and metrics * Add option 'use log timestamp' to select between log timestamps or collection timestamps * Add 'Getting Started' docs section * Move logs management functions code to separate source files * Add 'Nginx access.log' chart description * Remove logsmanagement.plugin source files * Fix some memory leaks * Improve cleanup of logsmanagement_main() * Fix a potential memory leak of fwd_input_out_cb * Better termination and cleanup of main_loop and its handles * Fix main_db_dir access() check bug * Avoid uv_walk() SIGSEGV * Remove main_db_dir access() check * Better termination and cleanup of DB code * Remove flb_socket_config_destroy() that could cause a segmentation fault * Disable unique client IPs - all-time chart by default * Update README.md * Fix debug() -> netdata_log_debug() * Fix read_last_line() * Fix timestamp sign adjustment and wrong unit tests * Change WEB_CLIENT_ACL_DASHBOARD to WEB_CLIENT_ACL_DASHBOARD_ACLK_WEBRTC * Do not parse web log timestamps if 'use_log_timestamp = no' * Add Logs Management back into buildinfo.c * Update README.md * Do not build Fluent Bit executable binary * Change logs rate chart to RRDSET_TYPE_LINE * Add kludge to prevent metrics breaking due to out of order logs * Fix wrong flb_tmp_buff_cpy_timer expiration * Refactor initialization of input plugin for local log sources. * Rename FLB_GENERIC collector to FLB_TAIL. * Switch 'Netdata fluentbit.log' to disabled by default * Add 'use inotify' configuration option * Update in README.md * Add docker event actions metrics * Update README.md to include event action chart * Remove commented out PLUGIN[logsmanagement] code block * Fix some warnings * Add documentation for outgoing log streaming and exporting * Fix some code block formatting in README.md * Refactor code related to error status of log query results and add new invalid timestamp case * Reduce query mem allocs and fix end timestamp == 0 bug * Add support for duplicate timestamps in db_search() * Add support for duplicate timestamps in circ_buff_search() * Fix docker events contexts * Various query fixes prior to reverse order search. - Add reverse qsort() function in circ buffers. - Fix issues to properly support of duplicate timestamps. - Separate requested from actual timestamps in query parameters. - Rename results buffer variable name to be consistent between DB and buffers. - Remove default start and end timestamp from functions. - Improve handling of invalid quotas provided by users. - Rename 'until' timestamp name to 'to'. - Increase default quota to 10MB from 1MB. - Allow start timestamp to be > than end timestamp. * Complete descending timestamp search for circular buffers * Complete descending timestamp search for DB * Remove MEASURE_QUERY_TIME code block * Complete descending timestamp search when data resides in both DB and circular buffers * Use pointer instead of copying res_hdr in query results * Refactor web log timezone parsing to use static memory allocation * Add stats for CPU user & system time per MiB of query results * Micro-optimization to slightly speed up queries * More micro-optimizations and some code cleanup * Remove LOGS_QUERY_DATA_FORMAT_NEW_LINE option * Escape iscntrl() chars at collection rather at query * Reduce number of buffer_strcat() calls * Complete descending timestamp order queries for web_api_v1 * Complete descending timestamp order queries for functions * Fix functions query timings to match web_api_v1 ones * Add MQTT message collector Squashed commit of the following: commit dbe515372ee04880b1841ef7800abe9385b12e1c Author: Dim-P <dimitris1703@gmail.com> Date: Mon Aug 21 15:18:46 2023 +0100 Update README.md with MQTT information commit c0b5dbcb7cdef8c6fbd5e72e7bdd08957a0fd3de Author: Dim-P <dimitris1703@gmail.com> Date: Mon Aug 21 14:59:36 2023 +0100 Tidy up before merge commit 9a69c4f17eac858532918a8f850a770b12710f80 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Aug 21 12:54:33 2023 +0100 Fix issue with duplicate Log_Source_Path in DB, introduced in commit e417af3 commit 48213e9713216d62fca8a5bc1bbc41a3883fdc14 Author: Dim-P <dimitris1703@gmail.com> Date: Sat Aug 19 05:05:36 2023 +0100 WIP commit e417af3b947f11bd61e3255306bc95953863998d Author: Dim-P <dimitris1703@gmail.com> Date: Thu Aug 17 18:03:39 2023 +0100 Update functions logsmanagement help output * Inhibit Fluent Bit build warnings * Fix missing allow_subpaths value in api_commands_v1[]. * Fix missing HTTP_RESP_BACKEND_FETCH_FAILED error * Fix an enum print warning * Remove systemd-devel requirement from README and fix codacy warnings * Update Alpine versions for musl-fts-dev * Update Fluent Bit to v2.1.8 Squashed commit of the following: commit faf6fc4b7919cc2611124acc67cb1973ce705530 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Aug 25 17:13:30 2023 +0100 Fix wrong default CORE_STACK_SIZE on Alpine commit a810238fe7830ce626f6d57245d68035b29723f7 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Aug 25 00:40:02 2023 +0100 Update Fluent Bit patches for musl commit 8bed3b611dba94a053e22c2b4aa1d46f7787d9b4 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Aug 24 21:54:38 2023 +0100 Fix an edge case crash when web log method is '-' commit b29b48ea230363142697f9749508cd926e18ee19 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Aug 24 16:26:13 2023 +0100 Disable FLB_OUT_CALYPTIA to fix Alpine dlsym() error commit eabe0d0523ffe98ff881675c21b0763a49c05f16 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Aug 22 21:25:54 2023 +0100 Add 'use inotify = no' troubleshooting Q&A in README commit 7f7ae85bdb0def63b4fc05ab88f6572db948e0e7 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Aug 22 18:06:36 2023 +0100 Update README.md links to latest version commit 610c5ac7b920d4a1dfe364ad48f1ca14a0acc346 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Aug 22 16:23:30 2023 +0100 Update flb_parser_create() definition commit f99608ff524b6f3462264e626a1073f9c2fdfdf5 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Aug 22 16:23:04 2023 +0100 Add new config.cmake options commit 446b0d564626055a0a125f525d0bd3754184b830 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Aug 22 12:21:25 2023 +0100 Update Fluent Bit submodule to v2.1.8 * Add logs_management_unittest() to CI 'unittest' * Remove obsolete query testing files * Patch Fluent Bit log format to match netdata's format * Update README with instructions on how to monitor Podman events logs * Fix core dump in case of flb_lib_path dlopen() * Fix some potential compiler warnings * Fix queries crash if logs manag engine not running * Much faster termination of LOGS MANAGEMENT * Add facets support and other minor fixes. logsmanagement_function_execute_cb() is replaced by logsmanagement_function_facets() which adds facets support to logs management queries. Internal query results header now includes additional fields (log_source, log_type, basename, filename, chartname), that are used as facets. Queries now support timeout as a query parameter. A web log timestamp bug is fixed (by using timegm() instead of mktime(). web_api_v1 logsmanagement API is only available in debugging now. Squashed commit of the following: commit 32cf0381283029d793ec3af30d96e6cd77ee9149 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 19 16:21:32 2023 +0300 Tidy up commit f956b5846451c6b955a150b5d071947037e935f0 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 19 13:30:54 2023 +0300 Add more accepted params. Add data_only option. Add if_modified_since option. commit 588c2425c60dcdd14349b7b346467dba32fda4e9 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Sep 18 18:39:50 2023 +0300 Add timeout to queries commit da0f055fc47a36d9af4b7cc4cefb8eb6630e36d9 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 14 19:17:16 2023 +0300 Fix histogram commit 7149890974e0d26420ec1c5cfe1023801dc973fa Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 14 17:58:52 2023 +0300 Add keyword query using simple patterns and fix descending timestamp values commit 0bd068c5a76e694b876027e9fa5af6f333ab825b Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 14 13:54:05 2023 +0300 Add basename, filename, chartname as facets commit 023c2b5f758b2479a0e48da575cd59500a1373b6 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 14 13:26:06 2023 +0300 Add info and sources functions options commit ab4d555b7d445f7291af474847bd9177d3726a76 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 14 12:54:37 2023 +0300 Fix facet id filter commit a69c9e2732f5a6da1764bb57d1c06d8d65979225 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 14 12:07:13 2023 +0300 WIP: Add facet id filters commit 3c02b5de81fa8a20c712863c347539a52936ddd8 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 12 18:19:17 2023 +0300 Add log source and log type to circ buff query results header commit 8ca98672c4911c126e50f3cbdd69ac363abdb33d Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 12 18:18:13 2023 +0300 Fix logsmanagement facet function after master rebasing commit 3f1517ad56cda2473a279a8d130bec869fc2cbb8 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 12 18:14:25 2023 +0300 Restrict /logsmanagement to ACL_DEV_OPEN_ACCESS only commit 8ca98d69b08d006c682997268d5d2523ddde6be0 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 12 14:40:22 2023 +0300 Fix incorrectly parsed timestamps due to DST commit f9b0848037b29c7fcc46da951ca5cd9eb129066f Author: Dim-P <dimitris1703@gmail.com> Date: Mon Sep 11 13:42:18 2023 +0300 Add logs_management_meta object to facet query results commit babc978f6c97107aaf8b337d8d31735d61761b6a Author: Dim-P <dimitris1703@gmail.com> Date: Mon Sep 11 13:03:52 2023 +0300 Query all sources if no arguments provided commit 486d56de87af56aae6c0dc5d165341418222ce8b Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 7 18:38:04 2023 +0300 Add log_source and log_type (only for DB logs) as facets. Add relative time support commit b564c12843d355c4da6436af358d5f352cb58bfe Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 7 13:47:20 2023 +0300 Working facet with descending timestamps commit 68c6a5c64e8425cf28ec16adfb0c50289caa82a9 Author: Dim-P <dimitris1703@gmail.com> Date: Wed Sep 6 01:55:51 2023 +0300 WIP * Fix linking errors * Convert logs management to external plugin. Squashed commit of the following: commit 16da6ba70ebde0859aed734087f04af497ce3a77 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 24 18:44:12 2023 +0100 Use higher value of update every from netdata.conf or logsmanagement.d.conf commit 88cc3497c403e07686e9fc0876ebb0c610a1404c Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 24 18:43:02 2023 +0100 Tidy up commit c3fca57aac169842637d210269519612b1a91e28 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 24 18:02:04 2023 +0100 Use external update_every from agent, if available commit f7470708ba82495b03297cdf8962a09b16617ddd Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 24 17:40:46 2023 +0100 Re-enable debug logs commit b34f5ac6a2228361ab41df7d7e5e713f724368c0 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 24 15:49:20 2023 +0100 Remove old API calls from web_api_v1.c/h commit 7fbc1e699a7785ec837233b9562199ee6c7684da Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 24 15:32:04 2023 +0100 Add proper termination of stats charts thread commit 4c0fc05c8b14593bd7a0aa68f75a8a1205e04db4 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 24 15:31:36 2023 +0100 Add tests for logsmanag_config functions commit 4dfdacb55707ab46ed6c2d5ce538ac012574b27e Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 23 22:01:19 2023 +0100 Remove unused headers from logsmanagement.c commit b324ef396207c5c32e40ea9ad462bf374470b230 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 23 21:56:26 2023 +0100 Remove inline from get_X_dir() functions commit e9656e8121b66cd7ef8b5daaa5d27a134427aa35 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 23 21:50:32 2023 +0100 Proper termination when a signal is received commit b09eec147bdeffae7b268b6335f6ba89f084e050 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 23 20:12:13 2023 +0100 Refactor logs management config code in separate source files commit 014b46a5008fd296f7d25854079c518d018abdec Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 23 14:54:47 2023 +0100 Fix p_file_info_destroy() crash commit e0bdfd182513bb8d5d4b4b5b8a4cc248ccf2d64e Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 23 14:18:27 2023 +0100 Code refactoring and cleanup commit 6a61cb6e2fd3a535db150b01d9450f44b3e27b30 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Oct 20 14:08:43 2023 +0100 Fix 'source:all' queries commit 45b516aaf819ac142353e323209b7d01e487393f Author: Dim-P <dimitris1703@gmail.com> Date: Thu Oct 19 21:51:05 2023 +0100 Working 'source:...' queries and regular data queries (but not 'source:all') commit 8064b0ee71c63da9803f79424802f860e96326e5 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Oct 19 15:34:23 2023 +0100 Fix issue due to p_file_info_destroy() commit a0aacc9cd00cea60218c9bfd2b9f164918a1e3de Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 17 22:06:34 2023 +0100 Work on facet API changes commit 480584ff9040c07e996b14efb4d21970a347633f Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 16 21:43:06 2023 +0100 Add stats charts, running as separate thread commit 34d582dbe4bf2d8d048afab41681e337705bc611 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 16 16:24:02 2023 +0100 Add SSL cipher charts commit ced27ee4e2c981d291f498244f2eef2556a074fb Author: Dim-P <dimitris1703@gmail.com> Date: Sun Oct 15 21:33:29 2023 +0100 Add Response code family, Response code, Response code type, SSL protocol charts commit 40c4a1d91892d49b1e4e18a1c3c43258ded4014d Author: Dim-P <dimitris1703@gmail.com> Date: Sat Oct 14 00:48:48 2023 +0100 Add more web log charts commit 890ed3ff97153dd18d15df2d1b57a181bc498ca8 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Oct 13 22:14:11 2023 +0100 Add web log vhosts and ports charts commit 84733b6b1d353aff70687603019443610a8500c3 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Oct 12 21:40:16 2023 +0100 Add systemd charts commit 14673501e8f48560956f53d5b670bbe801b8f2ae Author: Dim-P <dimitris1703@gmail.com> Date: Wed Oct 11 00:28:43 2023 +0100 Add MQTT charts commit 366eb63b0a27dde6f0f8ba65120f34c18c1b21fd Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 10 21:46:19 2023 +0100 Complete kmsg changes. Reduce mem usage. Fix a dictionary key size bug commit 3d0216365a526ffbc9ce13a20c45447bfccb47d9 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 10 19:18:41 2023 +0100 Add kmsg Subsystem charts commit e61af4bb130a5cf5a5a78133f1e44b2b4c457b24 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 10 16:21:29 2023 +0100 Fix bug of wrong kmsg timestamps in case of use_log_timestamp == 0 commit 03d22e0b26bddf249aab431a4f977bbd5cde98ca Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 10 16:20:47 2023 +0100 Add kmsg charts, except for Subsystem and Device commit f60b0787537a21ed3c4cea5101fcddc50f3bc55a Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 10 13:12:13 2023 +0100 Initialise all docker events chart dimensions at startup commit 5d873d3439abaf3768530cb5b72c6b4ef6565353 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 10 00:53:35 2023 +0100 WIP: Add Docker events logs commit 2cc3d6d98f58fc3ab67a8da3014210b14d0926a1 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 9 18:52:27 2023 +0100 Use macros for num_of_logs_charts and custom_charts functions commit fbd48ad3c9af674601238990d74192427475f2e3 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 9 18:26:17 2023 +0100 Refactor custom charts code for clarity and speed commit a31d80b5dc91161c0d74b10d00bc4fd1e6da7965 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Oct 5 23:58:27 2023 +0100 Add first working iteration of custom charts commit b1e4ab8a460f4b4c3e2804e2f775787d21fbee45 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Oct 5 23:57:27 2023 +0100 Add more custom charts for Netdata error.log commit f1b7605e564da3e297942f073593cdd4c21f88e1 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Oct 5 20:39:40 2023 +0100 Convert collected_logs_* chart updates to macros commit 1459bc2b8bcd5ba21e024b10a8a5101048938f71 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Oct 5 19:11:54 2023 +0100 Use rrdset_timed_done() instead of duration_since_last_update for correct chart timings commit 876854c6ee7586a3eb9fdbf795bcc17a5fd1e6ad Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 3 21:53:14 2023 +0100 Fix some bugs in chart updates commit ae87508485499984bcb9b72bbc7d249c4168b380 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 3 21:32:55 2023 +0100 Functioning generic_chart_init() and generic_chart_update() commit 982a9c4108dbea9571c785b5ff8a9d1e5472066c Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 28 23:32:52 2023 +0100 Add support for multiple .conf files. Add stock examples. commit 8e8abd0731227eb3fb3c6bcd811349575160799e Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 28 17:38:30 2023 +0100 Add support for logsmanagement.d/default.conf commit 1bf0732217b1d9e9959e1507ea96fc2c92ffb2ff Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 28 14:31:03 2023 +0100 Add capabilities. Fix paths in logsmanagement.d.conf commit a849d5b405bb4e5d770726fe99413a4efa7df274 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 26 23:06:31 2023 +0100 Change logs_manag_config_load() commit b0d1783b996286cd87e0832bfb74c29a845d61fc Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 26 15:35:30 2023 +0100 Working unit tests and argument parsing commit 6da1b4267a4d58d3a7cbcca9507afe8158a2e324 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Sep 22 00:32:47 2023 +0300 Build logs-management.plugin successfully commit 9e30efe0422e4941f99cc66998d9f42e00a24676 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 21 16:13:21 2023 +0300 Fix print format specifier in web_client_api_request_v1_logsmanagement() * Modify CODEOWNERS * Update README.md Fix indentation * Change snprintfz() to stncpyz() in circ_buff_search(). Change remaining 'chart_name' to 'chartname'. * Replace SQLite version function with macro * Fix some codacy warnings * Update README.md * Update Fluent Bit to v2.1.10 * Remove some comments * Fix Fluent Bit shared library linking for armv7l and FreeBSD * Remove compression source files * Add prefix to rrd_api.h functions * Add more unit tests * Fix kmsg capabilities * Separate kmsg and systemd default paths * Fix some memory leaks and better termination of DB * Add iterative queries if quota is exceeded * Fix centos7 builds * Fix issue where SYSTEMD timestamps are not parsed * Fix logs management packaging. * Fix typo in DEB control file. * Fix indentation and missing new line at EOF * Clean up functions and update help * Fix 400 error when no queryable sources are available * Fix if_modified_since. Add FACET_MAX_VALUE_LENGTH * Add delta parameter and use anchor points in queries * Fix CodeQL #182 warning * Fix packaging issues. * Fix postinstall script for DEB packages. * Improve plugin shutdown speed * Fix docker events chart grouping * Fix functions evloop threads not terminating upon shutdown * Fix coverity issues * Fix logging * Replace 'Netdata error.log' with 'Netdata daemon.log' in 'default.conf' * Remove 'enabled = yes/no' config in logsmanagement.d.conf * Remove 'enabled = X' unused config from logsmanagement.d.conf --------- Co-authored-by: Austin S. Hemmelgarn <austin@netdata.cloud>
2023-11-27 17:55:14 +01:00
# logs-management dependencies
BuildRequires: bison
BuildRequires: flex
# end - logs-management dependencies
netdata/packaging: Netdata binary packages generation - spec file refinement, support for nightlies (RPM) (#6369) Detailed list of changes: * netdata/packaging: First round of netdata.spec refactoring - package dependencies - Remove freeipmi/nfacct plugin flags. We auto-detect all plugins by decision - Start refactor of package dependencies - Add missing dependencies, with respect to distro peculiarities - Adjust existing dependencies, so that distro-specific package names is applied * netdata/packaging: add packaging trigger mechanism on binary-packages-specfile-cleanup to help testing * netdata/packaging: WIP - Allow building nightly versions for RPM (Still investigating the right version scheme) * netdata/packaging: Attempt to fix syntax errors - wow travis, mercy * netdata/packaging: tiny nits and fixes 1) there was a syntax error in version definition 2) bring default deploy repo name at the top, then overwrite when latest is published 3) Leave a comment * netdata/packaging: Move these core package requirements to the right section * netdata/packaging: libuv requires >= 1, missed to add that on devel libs * netdata/packaging: some comments, also when you put logrotate in our conf directory, link it to actual log rotate * netdata/packaging: Adjust configure options on spec file (align with netdata-installer.sh) * netdata/packaging: In order to properly support packaging both latest and stable releases, you need to star that extraction part, folder name contains the version with the hash that we cant tell * netdata/packaging: until we fix versioning, bring the original unprocessed spec file and pass the version we like in * netdata/packaging: fix version string in the spec file * netdata/packaging: Replace source path, we need to work with whatever we downloaded (to be refined) * netdata/packaging: [ci skip] you mixed the paths, reverse them * netdata/packaging: [ci skip] attempt to fix source path when needed * netdata/packaging: fixes and nits 1) generalize the spec file refinement method 2) Do both replacement that way 3) Adjust file names and paths * netdata/packaging: Replace Source0 explicitly and also make sure you remove extra new lines that may confuse the replacement later * netdata/packaging: [ci skip] move env outside, add some more log * netdata/packaging: [ci skip] adjust logic of replacing tag lines in spec file * netdata/packaging: [ci skip] Alas, fetch the archive, rename the structure to the new version, repack and proceed * netdata/packaging: [ci skip] Extract to specific path * netdata/packaging: [ci skip] replace problematic tar call with the respective pythonized one * netdata/packaging: [ci skip] Add new friendly octal format for chmod * netdata/packaging: [ci skip] more checks * netdata/packaging: [ci skip] dont chmod, chown the whole folder after extraction * netdata/packaging: nit * netdata/packaging: [ci skip] attempt to fix permissions differently * netdata/packaging: [ci skip] Another hack, attempt to fix permissions on the host directly * netdata/packaging: [ci skip] fine, do the move also on the host, pointless to run all through the container * netdata/packaging: [ci skip] Do the move through the container. Also, move a more specific folder * netdata/packaging: [ci skip] move as w00t * netdata/packaging: [ci skip] fix * netdata/packaging: sync permissions handling, round two * netdata/packaging: scratch those hacks, we should do latest differently * netdata/packaging: [ci skip] Set up rpm version string depending on whether we are on latest or not * netdata/packaging: [ci skip] Branch the code here, latest build up should be on the commit rather the tar files * netdata/packaging: Attempt to handle latest version build up * netdata/packaging: [ci skip] Dont continue processing if the file was not generated. Also do the tagging before autoreconf * netdata/packaging: [ci skip] fixes and nits * netdata/packaging: [ci skip] When doing annotated tags, you need to provide a message otherwise an editor pops up and will block the build * netdata/packaging: on the latest code case go all the way host level operations * netdata/packaging: [ci skip] Do not modify version, no longer need it because we properly generated the package with the right version * netdata/packaging: [ci skip] fix sensors line, you missed the Recommends keyword * netdata/packaging: Some code style (remove tabification from some tags) and also remove Recommends, we start with required packages for build and runtime and then we document further needs * netdata/packaging: [ci skip] Make sure you get epel in there, its needed * netdata/packaging: [ci skip] Fix bogus date * netdata/packaging: [ci skip] add these packages to include functionality * netdata/packaging: [ci skip] more fine grained dependency handling * netdata/packaging: [ci skip] Dependency hell - do not depend on libnetacctfilter if on el/7 * netdata/packaging: [ci skip] Be serious, that is not what you do when building the package silly * netdata/packaging: [ci skip] define directory attributes too * netdata/packaging: [ci skip] mystery unfold - comment out as we need to figure out how to handle missing directories that our installer creates if necessary * netdata/packaging: [ci skip] Make sure you properly set deployment repo based on commit message * netdata/packaging: [ci skip] Install these packages for specific versions, remove optimisations for now * netdata/packaging: [ci skip] Make package yanking flexible, so that we can manage both netdata and netdata-edge cleanup properly * netdata/packaging: [ci skip] Actually, set user at travis layer and let the script consume it only. We need to be sure the same user is used on yanking and the deployment process * netdata/packaging: [ci skip] wow pkatsoul * netdata/packaging: Dont forget to install some of the enabled plugins * netdata/packaging: nfacct.plugin not really working on rhel, disable temporarily * netdata/packaging: include installed directories to package * netdata/packaging: [ci skip] nits * netdata/packaging: fixes * netdata/packaging: [ci skip] dont add ghost files * netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there * netdata/packaging: [ci skip] Extreme - override _libexecdir macro * Revert "netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there" This reverts commit 320102c96284e4622266f6f089d6ce87319976f3. That wasnt really the problem here * netdata/packaging: [ci skip] Include contents of dir here * netdata/packaging: fixes * netdata/packaging: [ci skip] Fixes and additions - Tighter permissions for some files - Introduce go.d plugin install (likely broken like this, dont recall if bash style code is fine here) - Raise the path overrides to the spec level, otherwise we build with the overrides and package with the defaults * netdata/packaging: [ci skip] Missed an invalid variable. These files are under our current path, no need for complexity * netdata/packaging: [ci skip] bring sha method onboard * netdata/packaging: [ci skip] Wrong path provided, should be under build root * netdata/packaging: [ci skip] Add registry directory * netdata/packaging: [ci skip] add missing config directory definitions * netdata/packaging: [ci skip] Fix missing dirs * netdata/packaging:[ci fix] hos * netdata/packaging: [ci skip] Fixes and additions - Change versioning to v1.15.0.114 from v1.15.0114 - Add CUPS, Xenstat, json-c * netdata/packaging: [ci skip] fix package dependencies on the builder setup, otherwise spec will fail * netdata/packaging: [ci skip] limit xenstat to suse and fedora for now * netdata/packaging: [ci skip] separate fedora and suse cases, unfortunately suse has different package names.... * netdata/packaging: [ci skip] yajl is not the same package everywhere, of course * netdata/packagin: [ci skip] skip xenstat for now * netdata/packaging: [ci skip] remove the vvvvvvvvv * netdata/packaging: [ci skip] one more fix attempt * netdata/packaging: [ci skip] Spec file extraction is different when building from stable. We *must* fetch it from the tarball rather than the local one * netdata/packaging: [ci skip] spec_file defined on all cases, latest or stable. Also move latest spec file copy after make dist operation, that is where is suppose to be * netdata/packaging: [ci skip] Tag source with the local version, as we build upon the very latest * netdata/packaging: oopsie -- remove json-c from that place, it was forgotten * netdata/packaging: fix packaging, even though devel is consistent between fedora and suse, the binary one is not .... (also fix default perms to be root:netdata rather root:root) * netdata/packaging: Suse love - again, libuuid-devel same, but libuuid is named libuuid1 on suse...... * netdata/packaging: [ci skip] libcap same.... * netdata/packaging: [ci skip] use the noreplace directive for the configuration files * netdata/packaging: [ci skip] Bring back master as the triggering repository * netdata/packaging: [ci skip] attempt to enable/disable service where necessary. Default preset action requires further setup, so we override that * Revert "netdata/packaging: [ci skip] Bring back master as the triggering repository" This reverts commit 9b25a622dc5f12b1539f6863bab52d7bb225fd8d. ** Reverting as we need to test further the service enable action ** * netdata/packaging: [ci skip] revert this change - not the right way, we have empty files * netdata/packaging: [ci skip] Add daemon-reload option, to make sure systemd learns about the newly installed service * netdata/packaging: [ci skip] Attempt to silence codacy by factoring out the few small methods for common usage, then kill directories to reduce complexity adn thats it * netdata/packaging: [ci skip] Just making sure codacy reprocess everything * netdata/packaging: [ci skip] missed one adjustment * netdata/packaging: python style - print shouldnt have space before open parenthesis. Also, add restart on all cases on the spec file * netdata/packaging: [ci skip] fix syntax * netdata/packaging: [ci skip] syntax fixes 2 * netdata/packaging: [ci skip] another miss * netdata/packaging: [ci skip] You need to explicitly trigger a restart, apparently * netdata/packaging: [ci skip] override packaging user definition temporarily, to get things going on testing
2019-07-03 09:18:17 +02:00
# #####################################################################
# End of dependency management configuration
# #####################################################################
%description
netdata/packaging: Netdata binary packages generation - spec file refinement, support for nightlies (RPM) (#6369) Detailed list of changes: * netdata/packaging: First round of netdata.spec refactoring - package dependencies - Remove freeipmi/nfacct plugin flags. We auto-detect all plugins by decision - Start refactor of package dependencies - Add missing dependencies, with respect to distro peculiarities - Adjust existing dependencies, so that distro-specific package names is applied * netdata/packaging: add packaging trigger mechanism on binary-packages-specfile-cleanup to help testing * netdata/packaging: WIP - Allow building nightly versions for RPM (Still investigating the right version scheme) * netdata/packaging: Attempt to fix syntax errors - wow travis, mercy * netdata/packaging: tiny nits and fixes 1) there was a syntax error in version definition 2) bring default deploy repo name at the top, then overwrite when latest is published 3) Leave a comment * netdata/packaging: Move these core package requirements to the right section * netdata/packaging: libuv requires >= 1, missed to add that on devel libs * netdata/packaging: some comments, also when you put logrotate in our conf directory, link it to actual log rotate * netdata/packaging: Adjust configure options on spec file (align with netdata-installer.sh) * netdata/packaging: In order to properly support packaging both latest and stable releases, you need to star that extraction part, folder name contains the version with the hash that we cant tell * netdata/packaging: until we fix versioning, bring the original unprocessed spec file and pass the version we like in * netdata/packaging: fix version string in the spec file * netdata/packaging: Replace source path, we need to work with whatever we downloaded (to be refined) * netdata/packaging: [ci skip] you mixed the paths, reverse them * netdata/packaging: [ci skip] attempt to fix source path when needed * netdata/packaging: fixes and nits 1) generalize the spec file refinement method 2) Do both replacement that way 3) Adjust file names and paths * netdata/packaging: Replace Source0 explicitly and also make sure you remove extra new lines that may confuse the replacement later * netdata/packaging: [ci skip] move env outside, add some more log * netdata/packaging: [ci skip] adjust logic of replacing tag lines in spec file * netdata/packaging: [ci skip] Alas, fetch the archive, rename the structure to the new version, repack and proceed * netdata/packaging: [ci skip] Extract to specific path * netdata/packaging: [ci skip] replace problematic tar call with the respective pythonized one * netdata/packaging: [ci skip] Add new friendly octal format for chmod * netdata/packaging: [ci skip] more checks * netdata/packaging: [ci skip] dont chmod, chown the whole folder after extraction * netdata/packaging: nit * netdata/packaging: [ci skip] attempt to fix permissions differently * netdata/packaging: [ci skip] Another hack, attempt to fix permissions on the host directly * netdata/packaging: [ci skip] fine, do the move also on the host, pointless to run all through the container * netdata/packaging: [ci skip] Do the move through the container. Also, move a more specific folder * netdata/packaging: [ci skip] move as w00t * netdata/packaging: [ci skip] fix * netdata/packaging: sync permissions handling, round two * netdata/packaging: scratch those hacks, we should do latest differently * netdata/packaging: [ci skip] Set up rpm version string depending on whether we are on latest or not * netdata/packaging: [ci skip] Branch the code here, latest build up should be on the commit rather the tar files * netdata/packaging: Attempt to handle latest version build up * netdata/packaging: [ci skip] Dont continue processing if the file was not generated. Also do the tagging before autoreconf * netdata/packaging: [ci skip] fixes and nits * netdata/packaging: [ci skip] When doing annotated tags, you need to provide a message otherwise an editor pops up and will block the build * netdata/packaging: on the latest code case go all the way host level operations * netdata/packaging: [ci skip] Do not modify version, no longer need it because we properly generated the package with the right version * netdata/packaging: [ci skip] fix sensors line, you missed the Recommends keyword * netdata/packaging: Some code style (remove tabification from some tags) and also remove Recommends, we start with required packages for build and runtime and then we document further needs * netdata/packaging: [ci skip] Make sure you get epel in there, its needed * netdata/packaging: [ci skip] Fix bogus date * netdata/packaging: [ci skip] add these packages to include functionality * netdata/packaging: [ci skip] more fine grained dependency handling * netdata/packaging: [ci skip] Dependency hell - do not depend on libnetacctfilter if on el/7 * netdata/packaging: [ci skip] Be serious, that is not what you do when building the package silly * netdata/packaging: [ci skip] define directory attributes too * netdata/packaging: [ci skip] mystery unfold - comment out as we need to figure out how to handle missing directories that our installer creates if necessary * netdata/packaging: [ci skip] Make sure you properly set deployment repo based on commit message * netdata/packaging: [ci skip] Install these packages for specific versions, remove optimisations for now * netdata/packaging: [ci skip] Make package yanking flexible, so that we can manage both netdata and netdata-edge cleanup properly * netdata/packaging: [ci skip] Actually, set user at travis layer and let the script consume it only. We need to be sure the same user is used on yanking and the deployment process * netdata/packaging: [ci skip] wow pkatsoul * netdata/packaging: Dont forget to install some of the enabled plugins * netdata/packaging: nfacct.plugin not really working on rhel, disable temporarily * netdata/packaging: include installed directories to package * netdata/packaging: [ci skip] nits * netdata/packaging: fixes * netdata/packaging: [ci skip] dont add ghost files * netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there * netdata/packaging: [ci skip] Extreme - override _libexecdir macro * Revert "netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there" This reverts commit 320102c96284e4622266f6f089d6ce87319976f3. That wasnt really the problem here * netdata/packaging: [ci skip] Include contents of dir here * netdata/packaging: fixes * netdata/packaging: [ci skip] Fixes and additions - Tighter permissions for some files - Introduce go.d plugin install (likely broken like this, dont recall if bash style code is fine here) - Raise the path overrides to the spec level, otherwise we build with the overrides and package with the defaults * netdata/packaging: [ci skip] Missed an invalid variable. These files are under our current path, no need for complexity * netdata/packaging: [ci skip] bring sha method onboard * netdata/packaging: [ci skip] Wrong path provided, should be under build root * netdata/packaging: [ci skip] Add registry directory * netdata/packaging: [ci skip] add missing config directory definitions * netdata/packaging: [ci skip] Fix missing dirs * netdata/packaging:[ci fix] hos * netdata/packaging: [ci skip] Fixes and additions - Change versioning to v1.15.0.114 from v1.15.0114 - Add CUPS, Xenstat, json-c * netdata/packaging: [ci skip] fix package dependencies on the builder setup, otherwise spec will fail * netdata/packaging: [ci skip] limit xenstat to suse and fedora for now * netdata/packaging: [ci skip] separate fedora and suse cases, unfortunately suse has different package names.... * netdata/packaging: [ci skip] yajl is not the same package everywhere, of course * netdata/packagin: [ci skip] skip xenstat for now * netdata/packaging: [ci skip] remove the vvvvvvvvv * netdata/packaging: [ci skip] one more fix attempt * netdata/packaging: [ci skip] Spec file extraction is different when building from stable. We *must* fetch it from the tarball rather than the local one * netdata/packaging: [ci skip] spec_file defined on all cases, latest or stable. Also move latest spec file copy after make dist operation, that is where is suppose to be * netdata/packaging: [ci skip] Tag source with the local version, as we build upon the very latest * netdata/packaging: oopsie -- remove json-c from that place, it was forgotten * netdata/packaging: fix packaging, even though devel is consistent between fedora and suse, the binary one is not .... (also fix default perms to be root:netdata rather root:root) * netdata/packaging: Suse love - again, libuuid-devel same, but libuuid is named libuuid1 on suse...... * netdata/packaging: [ci skip] libcap same.... * netdata/packaging: [ci skip] use the noreplace directive for the configuration files * netdata/packaging: [ci skip] Bring back master as the triggering repository * netdata/packaging: [ci skip] attempt to enable/disable service where necessary. Default preset action requires further setup, so we override that * Revert "netdata/packaging: [ci skip] Bring back master as the triggering repository" This reverts commit 9b25a622dc5f12b1539f6863bab52d7bb225fd8d. ** Reverting as we need to test further the service enable action ** * netdata/packaging: [ci skip] revert this change - not the right way, we have empty files * netdata/packaging: [ci skip] Add daemon-reload option, to make sure systemd learns about the newly installed service * netdata/packaging: [ci skip] Attempt to silence codacy by factoring out the few small methods for common usage, then kill directories to reduce complexity adn thats it * netdata/packaging: [ci skip] Just making sure codacy reprocess everything * netdata/packaging: [ci skip] missed one adjustment * netdata/packaging: python style - print shouldnt have space before open parenthesis. Also, add restart on all cases on the spec file * netdata/packaging: [ci skip] fix syntax * netdata/packaging: [ci skip] syntax fixes 2 * netdata/packaging: [ci skip] another miss * netdata/packaging: [ci skip] You need to explicitly trigger a restart, apparently * netdata/packaging: [ci skip] override packaging user definition temporarily, to get things going on testing
2019-07-03 09:18:17 +02:00
netdata is the fastest way to visualize metrics. It is a resource
efficient, highly optimized system for collecting and visualizing any
type of realtime timeseries data, from CPU usage, disk activity, SQL
queries, API calls, web site visitors, etc.
netdata/packaging: Netdata binary packages generation - spec file refinement, support for nightlies (RPM) (#6369) Detailed list of changes: * netdata/packaging: First round of netdata.spec refactoring - package dependencies - Remove freeipmi/nfacct plugin flags. We auto-detect all plugins by decision - Start refactor of package dependencies - Add missing dependencies, with respect to distro peculiarities - Adjust existing dependencies, so that distro-specific package names is applied * netdata/packaging: add packaging trigger mechanism on binary-packages-specfile-cleanup to help testing * netdata/packaging: WIP - Allow building nightly versions for RPM (Still investigating the right version scheme) * netdata/packaging: Attempt to fix syntax errors - wow travis, mercy * netdata/packaging: tiny nits and fixes 1) there was a syntax error in version definition 2) bring default deploy repo name at the top, then overwrite when latest is published 3) Leave a comment * netdata/packaging: Move these core package requirements to the right section * netdata/packaging: libuv requires >= 1, missed to add that on devel libs * netdata/packaging: some comments, also when you put logrotate in our conf directory, link it to actual log rotate * netdata/packaging: Adjust configure options on spec file (align with netdata-installer.sh) * netdata/packaging: In order to properly support packaging both latest and stable releases, you need to star that extraction part, folder name contains the version with the hash that we cant tell * netdata/packaging: until we fix versioning, bring the original unprocessed spec file and pass the version we like in * netdata/packaging: fix version string in the spec file * netdata/packaging: Replace source path, we need to work with whatever we downloaded (to be refined) * netdata/packaging: [ci skip] you mixed the paths, reverse them * netdata/packaging: [ci skip] attempt to fix source path when needed * netdata/packaging: fixes and nits 1) generalize the spec file refinement method 2) Do both replacement that way 3) Adjust file names and paths * netdata/packaging: Replace Source0 explicitly and also make sure you remove extra new lines that may confuse the replacement later * netdata/packaging: [ci skip] move env outside, add some more log * netdata/packaging: [ci skip] adjust logic of replacing tag lines in spec file * netdata/packaging: [ci skip] Alas, fetch the archive, rename the structure to the new version, repack and proceed * netdata/packaging: [ci skip] Extract to specific path * netdata/packaging: [ci skip] replace problematic tar call with the respective pythonized one * netdata/packaging: [ci skip] Add new friendly octal format for chmod * netdata/packaging: [ci skip] more checks * netdata/packaging: [ci skip] dont chmod, chown the whole folder after extraction * netdata/packaging: nit * netdata/packaging: [ci skip] attempt to fix permissions differently * netdata/packaging: [ci skip] Another hack, attempt to fix permissions on the host directly * netdata/packaging: [ci skip] fine, do the move also on the host, pointless to run all through the container * netdata/packaging: [ci skip] Do the move through the container. Also, move a more specific folder * netdata/packaging: [ci skip] move as w00t * netdata/packaging: [ci skip] fix * netdata/packaging: sync permissions handling, round two * netdata/packaging: scratch those hacks, we should do latest differently * netdata/packaging: [ci skip] Set up rpm version string depending on whether we are on latest or not * netdata/packaging: [ci skip] Branch the code here, latest build up should be on the commit rather the tar files * netdata/packaging: Attempt to handle latest version build up * netdata/packaging: [ci skip] Dont continue processing if the file was not generated. Also do the tagging before autoreconf * netdata/packaging: [ci skip] fixes and nits * netdata/packaging: [ci skip] When doing annotated tags, you need to provide a message otherwise an editor pops up and will block the build * netdata/packaging: on the latest code case go all the way host level operations * netdata/packaging: [ci skip] Do not modify version, no longer need it because we properly generated the package with the right version * netdata/packaging: [ci skip] fix sensors line, you missed the Recommends keyword * netdata/packaging: Some code style (remove tabification from some tags) and also remove Recommends, we start with required packages for build and runtime and then we document further needs * netdata/packaging: [ci skip] Make sure you get epel in there, its needed * netdata/packaging: [ci skip] Fix bogus date * netdata/packaging: [ci skip] add these packages to include functionality * netdata/packaging: [ci skip] more fine grained dependency handling * netdata/packaging: [ci skip] Dependency hell - do not depend on libnetacctfilter if on el/7 * netdata/packaging: [ci skip] Be serious, that is not what you do when building the package silly * netdata/packaging: [ci skip] define directory attributes too * netdata/packaging: [ci skip] mystery unfold - comment out as we need to figure out how to handle missing directories that our installer creates if necessary * netdata/packaging: [ci skip] Make sure you properly set deployment repo based on commit message * netdata/packaging: [ci skip] Install these packages for specific versions, remove optimisations for now * netdata/packaging: [ci skip] Make package yanking flexible, so that we can manage both netdata and netdata-edge cleanup properly * netdata/packaging: [ci skip] Actually, set user at travis layer and let the script consume it only. We need to be sure the same user is used on yanking and the deployment process * netdata/packaging: [ci skip] wow pkatsoul * netdata/packaging: Dont forget to install some of the enabled plugins * netdata/packaging: nfacct.plugin not really working on rhel, disable temporarily * netdata/packaging: include installed directories to package * netdata/packaging: [ci skip] nits * netdata/packaging: fixes * netdata/packaging: [ci skip] dont add ghost files * netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there * netdata/packaging: [ci skip] Extreme - override _libexecdir macro * Revert "netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there" This reverts commit 320102c96284e4622266f6f089d6ce87319976f3. That wasnt really the problem here * netdata/packaging: [ci skip] Include contents of dir here * netdata/packaging: fixes * netdata/packaging: [ci skip] Fixes and additions - Tighter permissions for some files - Introduce go.d plugin install (likely broken like this, dont recall if bash style code is fine here) - Raise the path overrides to the spec level, otherwise we build with the overrides and package with the defaults * netdata/packaging: [ci skip] Missed an invalid variable. These files are under our current path, no need for complexity * netdata/packaging: [ci skip] bring sha method onboard * netdata/packaging: [ci skip] Wrong path provided, should be under build root * netdata/packaging: [ci skip] Add registry directory * netdata/packaging: [ci skip] add missing config directory definitions * netdata/packaging: [ci skip] Fix missing dirs * netdata/packaging:[ci fix] hos * netdata/packaging: [ci skip] Fixes and additions - Change versioning to v1.15.0.114 from v1.15.0114 - Add CUPS, Xenstat, json-c * netdata/packaging: [ci skip] fix package dependencies on the builder setup, otherwise spec will fail * netdata/packaging: [ci skip] limit xenstat to suse and fedora for now * netdata/packaging: [ci skip] separate fedora and suse cases, unfortunately suse has different package names.... * netdata/packaging: [ci skip] yajl is not the same package everywhere, of course * netdata/packagin: [ci skip] skip xenstat for now * netdata/packaging: [ci skip] remove the vvvvvvvvv * netdata/packaging: [ci skip] one more fix attempt * netdata/packaging: [ci skip] Spec file extraction is different when building from stable. We *must* fetch it from the tarball rather than the local one * netdata/packaging: [ci skip] spec_file defined on all cases, latest or stable. Also move latest spec file copy after make dist operation, that is where is suppose to be * netdata/packaging: [ci skip] Tag source with the local version, as we build upon the very latest * netdata/packaging: oopsie -- remove json-c from that place, it was forgotten * netdata/packaging: fix packaging, even though devel is consistent between fedora and suse, the binary one is not .... (also fix default perms to be root:netdata rather root:root) * netdata/packaging: Suse love - again, libuuid-devel same, but libuuid is named libuuid1 on suse...... * netdata/packaging: [ci skip] libcap same.... * netdata/packaging: [ci skip] use the noreplace directive for the configuration files * netdata/packaging: [ci skip] Bring back master as the triggering repository * netdata/packaging: [ci skip] attempt to enable/disable service where necessary. Default preset action requires further setup, so we override that * Revert "netdata/packaging: [ci skip] Bring back master as the triggering repository" This reverts commit 9b25a622dc5f12b1539f6863bab52d7bb225fd8d. ** Reverting as we need to test further the service enable action ** * netdata/packaging: [ci skip] revert this change - not the right way, we have empty files * netdata/packaging: [ci skip] Add daemon-reload option, to make sure systemd learns about the newly installed service * netdata/packaging: [ci skip] Attempt to silence codacy by factoring out the few small methods for common usage, then kill directories to reduce complexity adn thats it * netdata/packaging: [ci skip] Just making sure codacy reprocess everything * netdata/packaging: [ci skip] missed one adjustment * netdata/packaging: python style - print shouldnt have space before open parenthesis. Also, add restart on all cases on the spec file * netdata/packaging: [ci skip] fix syntax * netdata/packaging: [ci skip] syntax fixes 2 * netdata/packaging: [ci skip] another miss * netdata/packaging: [ci skip] You need to explicitly trigger a restart, apparently * netdata/packaging: [ci skip] override packaging user definition temporarily, to get things going on testing
2019-07-03 09:18:17 +02:00
netdata tries to visualize the truth of now, in its greatest detail,
so that you can get insights of what is happening now and what just
happened, on your systems and applications.
%prep
%setup -q -n "%{name}-%{version}"
%build
netdata/packaging: Netdata binary packages generation - spec file refinement, support for nightlies (RPM) (#6369) Detailed list of changes: * netdata/packaging: First round of netdata.spec refactoring - package dependencies - Remove freeipmi/nfacct plugin flags. We auto-detect all plugins by decision - Start refactor of package dependencies - Add missing dependencies, with respect to distro peculiarities - Adjust existing dependencies, so that distro-specific package names is applied * netdata/packaging: add packaging trigger mechanism on binary-packages-specfile-cleanup to help testing * netdata/packaging: WIP - Allow building nightly versions for RPM (Still investigating the right version scheme) * netdata/packaging: Attempt to fix syntax errors - wow travis, mercy * netdata/packaging: tiny nits and fixes 1) there was a syntax error in version definition 2) bring default deploy repo name at the top, then overwrite when latest is published 3) Leave a comment * netdata/packaging: Move these core package requirements to the right section * netdata/packaging: libuv requires >= 1, missed to add that on devel libs * netdata/packaging: some comments, also when you put logrotate in our conf directory, link it to actual log rotate * netdata/packaging: Adjust configure options on spec file (align with netdata-installer.sh) * netdata/packaging: In order to properly support packaging both latest and stable releases, you need to star that extraction part, folder name contains the version with the hash that we cant tell * netdata/packaging: until we fix versioning, bring the original unprocessed spec file and pass the version we like in * netdata/packaging: fix version string in the spec file * netdata/packaging: Replace source path, we need to work with whatever we downloaded (to be refined) * netdata/packaging: [ci skip] you mixed the paths, reverse them * netdata/packaging: [ci skip] attempt to fix source path when needed * netdata/packaging: fixes and nits 1) generalize the spec file refinement method 2) Do both replacement that way 3) Adjust file names and paths * netdata/packaging: Replace Source0 explicitly and also make sure you remove extra new lines that may confuse the replacement later * netdata/packaging: [ci skip] move env outside, add some more log * netdata/packaging: [ci skip] adjust logic of replacing tag lines in spec file * netdata/packaging: [ci skip] Alas, fetch the archive, rename the structure to the new version, repack and proceed * netdata/packaging: [ci skip] Extract to specific path * netdata/packaging: [ci skip] replace problematic tar call with the respective pythonized one * netdata/packaging: [ci skip] Add new friendly octal format for chmod * netdata/packaging: [ci skip] more checks * netdata/packaging: [ci skip] dont chmod, chown the whole folder after extraction * netdata/packaging: nit * netdata/packaging: [ci skip] attempt to fix permissions differently * netdata/packaging: [ci skip] Another hack, attempt to fix permissions on the host directly * netdata/packaging: [ci skip] fine, do the move also on the host, pointless to run all through the container * netdata/packaging: [ci skip] Do the move through the container. Also, move a more specific folder * netdata/packaging: [ci skip] move as w00t * netdata/packaging: [ci skip] fix * netdata/packaging: sync permissions handling, round two * netdata/packaging: scratch those hacks, we should do latest differently * netdata/packaging: [ci skip] Set up rpm version string depending on whether we are on latest or not * netdata/packaging: [ci skip] Branch the code here, latest build up should be on the commit rather the tar files * netdata/packaging: Attempt to handle latest version build up * netdata/packaging: [ci skip] Dont continue processing if the file was not generated. Also do the tagging before autoreconf * netdata/packaging: [ci skip] fixes and nits * netdata/packaging: [ci skip] When doing annotated tags, you need to provide a message otherwise an editor pops up and will block the build * netdata/packaging: on the latest code case go all the way host level operations * netdata/packaging: [ci skip] Do not modify version, no longer need it because we properly generated the package with the right version * netdata/packaging: [ci skip] fix sensors line, you missed the Recommends keyword * netdata/packaging: Some code style (remove tabification from some tags) and also remove Recommends, we start with required packages for build and runtime and then we document further needs * netdata/packaging: [ci skip] Make sure you get epel in there, its needed * netdata/packaging: [ci skip] Fix bogus date * netdata/packaging: [ci skip] add these packages to include functionality * netdata/packaging: [ci skip] more fine grained dependency handling * netdata/packaging: [ci skip] Dependency hell - do not depend on libnetacctfilter if on el/7 * netdata/packaging: [ci skip] Be serious, that is not what you do when building the package silly * netdata/packaging: [ci skip] define directory attributes too * netdata/packaging: [ci skip] mystery unfold - comment out as we need to figure out how to handle missing directories that our installer creates if necessary * netdata/packaging: [ci skip] Make sure you properly set deployment repo based on commit message * netdata/packaging: [ci skip] Install these packages for specific versions, remove optimisations for now * netdata/packaging: [ci skip] Make package yanking flexible, so that we can manage both netdata and netdata-edge cleanup properly * netdata/packaging: [ci skip] Actually, set user at travis layer and let the script consume it only. We need to be sure the same user is used on yanking and the deployment process * netdata/packaging: [ci skip] wow pkatsoul * netdata/packaging: Dont forget to install some of the enabled plugins * netdata/packaging: nfacct.plugin not really working on rhel, disable temporarily * netdata/packaging: include installed directories to package * netdata/packaging: [ci skip] nits * netdata/packaging: fixes * netdata/packaging: [ci skip] dont add ghost files * netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there * netdata/packaging: [ci skip] Extreme - override _libexecdir macro * Revert "netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there" This reverts commit 320102c96284e4622266f6f089d6ce87319976f3. That wasnt really the problem here * netdata/packaging: [ci skip] Include contents of dir here * netdata/packaging: fixes * netdata/packaging: [ci skip] Fixes and additions - Tighter permissions for some files - Introduce go.d plugin install (likely broken like this, dont recall if bash style code is fine here) - Raise the path overrides to the spec level, otherwise we build with the overrides and package with the defaults * netdata/packaging: [ci skip] Missed an invalid variable. These files are under our current path, no need for complexity * netdata/packaging: [ci skip] bring sha method onboard * netdata/packaging: [ci skip] Wrong path provided, should be under build root * netdata/packaging: [ci skip] Add registry directory * netdata/packaging: [ci skip] add missing config directory definitions * netdata/packaging: [ci skip] Fix missing dirs * netdata/packaging:[ci fix] hos * netdata/packaging: [ci skip] Fixes and additions - Change versioning to v1.15.0.114 from v1.15.0114 - Add CUPS, Xenstat, json-c * netdata/packaging: [ci skip] fix package dependencies on the builder setup, otherwise spec will fail * netdata/packaging: [ci skip] limit xenstat to suse and fedora for now * netdata/packaging: [ci skip] separate fedora and suse cases, unfortunately suse has different package names.... * netdata/packaging: [ci skip] yajl is not the same package everywhere, of course * netdata/packagin: [ci skip] skip xenstat for now * netdata/packaging: [ci skip] remove the vvvvvvvvv * netdata/packaging: [ci skip] one more fix attempt * netdata/packaging: [ci skip] Spec file extraction is different when building from stable. We *must* fetch it from the tarball rather than the local one * netdata/packaging: [ci skip] spec_file defined on all cases, latest or stable. Also move latest spec file copy after make dist operation, that is where is suppose to be * netdata/packaging: [ci skip] Tag source with the local version, as we build upon the very latest * netdata/packaging: oopsie -- remove json-c from that place, it was forgotten * netdata/packaging: fix packaging, even though devel is consistent between fedora and suse, the binary one is not .... (also fix default perms to be root:netdata rather root:root) * netdata/packaging: Suse love - again, libuuid-devel same, but libuuid is named libuuid1 on suse...... * netdata/packaging: [ci skip] libcap same.... * netdata/packaging: [ci skip] use the noreplace directive for the configuration files * netdata/packaging: [ci skip] Bring back master as the triggering repository * netdata/packaging: [ci skip] attempt to enable/disable service where necessary. Default preset action requires further setup, so we override that * Revert "netdata/packaging: [ci skip] Bring back master as the triggering repository" This reverts commit 9b25a622dc5f12b1539f6863bab52d7bb225fd8d. ** Reverting as we need to test further the service enable action ** * netdata/packaging: [ci skip] revert this change - not the right way, we have empty files * netdata/packaging: [ci skip] Add daemon-reload option, to make sure systemd learns about the newly installed service * netdata/packaging: [ci skip] Attempt to silence codacy by factoring out the few small methods for common usage, then kill directories to reduce complexity adn thats it * netdata/packaging: [ci skip] Just making sure codacy reprocess everything * netdata/packaging: [ci skip] missed one adjustment * netdata/packaging: python style - print shouldnt have space before open parenthesis. Also, add restart on all cases on the spec file * netdata/packaging: [ci skip] fix syntax * netdata/packaging: [ci skip] syntax fixes 2 * netdata/packaging: [ci skip] another miss * netdata/packaging: [ci skip] You need to explicitly trigger a restart, apparently * netdata/packaging: [ci skip] override packaging user definition temporarily, to get things going on testing
2019-07-03 09:18:17 +02:00
# Conf step
%cmake -G Ninja \
-DCMAKE_INSTALL_PREFIX=/ \
%if 0%{?centos_ver:1}
%if %{centos_ver} < 8
-DUSE_CXX_11=On \
%endif
%endif
%if %{_have_cups}
-DENABLE_PLUGIN_CUPS=On \
%else
-DENABLE_PLUGIN_CUPS=Off \
%endif
%if %{_have_ebpf}
-DENABLE_PLUGIN_EBPF=On \
%else
-DENABLE_PLUGIN_EBPF=Off \
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%endif
%if %{_have_freeipmi}
-DENABLE_PLUGIN_FREEIPMI=On \
%else
-DENABLE_PLUGIN_FREEIPMI=Off \
%endif
%if %{_have_nfacct}
-DENABLE_PLUGIN_NFACCT=On \
%else
-DENABLE_PLUGIN_NFACCT=Off \
%endif
%if %{_have_xenstat}
-DENABLE_PLUGIN_XENSTAT=On \
%else
-DENABLE_PLUGIN_XENSTAT=Off \
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%endif
%if 0%{?centos_ver:1}
%if %{centos_ver} < 8
-DENABLE_BUNDLED_PROTOBUF=On \
%else
-DENABLE_BUNDLED_PROTOBUF=Off \
%endif
%else
-DENABLE_BUNDLED_PROTOBUF=Off \
%endif
%if %{_have_ml}
-DENABLE_ML=On \
%else
-DENABLE_ML=Off \
%endif
%if %{_have_mongo_exporter}
-DENABLE_EXPORTER_MONGODB=On \
%else
-DENABLE_EXPORTER_MONGODB=Off \
%endif
-DENABLE_ACLK=On \
-DENABLE_CLOUD=On \
-DENABLE_DBENGINE=On \
-DENABLE_H2O=On \
-DENABLE_PLUGIN_APPS=On \
-DENABLE_PLUGIN_CGROUP_NETWORK=On \
-DENABLE_PLUGIN_DEBUGFS=On \
-DENABLE_PLUGIN_GO=On \
-DENABLE_PLUGIN_LOCAL_LISTENERS=On \
-DENABLE_PLUGIN_PERF=On \
-DENABLE_PLUGIN_SLABINFO=On \
-DENABLE_PLUGIN_SYSTEMD_JOURNAL=On \
-DENABLE_PLUGIN_LOGS_MANAGEMENT=On \
-DENABLE_EXPORTER_PROMETHEUS_REMOTE_WRITE=On \
-DENABLE_BUNDLED_JSONC=Off \
-DENABLE_BUNDLED_YAML=Off
netdata/packaging: Netdata binary packages generation - spec file refinement, support for nightlies (RPM) (#6369) Detailed list of changes: * netdata/packaging: First round of netdata.spec refactoring - package dependencies - Remove freeipmi/nfacct plugin flags. We auto-detect all plugins by decision - Start refactor of package dependencies - Add missing dependencies, with respect to distro peculiarities - Adjust existing dependencies, so that distro-specific package names is applied * netdata/packaging: add packaging trigger mechanism on binary-packages-specfile-cleanup to help testing * netdata/packaging: WIP - Allow building nightly versions for RPM (Still investigating the right version scheme) * netdata/packaging: Attempt to fix syntax errors - wow travis, mercy * netdata/packaging: tiny nits and fixes 1) there was a syntax error in version definition 2) bring default deploy repo name at the top, then overwrite when latest is published 3) Leave a comment * netdata/packaging: Move these core package requirements to the right section * netdata/packaging: libuv requires >= 1, missed to add that on devel libs * netdata/packaging: some comments, also when you put logrotate in our conf directory, link it to actual log rotate * netdata/packaging: Adjust configure options on spec file (align with netdata-installer.sh) * netdata/packaging: In order to properly support packaging both latest and stable releases, you need to star that extraction part, folder name contains the version with the hash that we cant tell * netdata/packaging: until we fix versioning, bring the original unprocessed spec file and pass the version we like in * netdata/packaging: fix version string in the spec file * netdata/packaging: Replace source path, we need to work with whatever we downloaded (to be refined) * netdata/packaging: [ci skip] you mixed the paths, reverse them * netdata/packaging: [ci skip] attempt to fix source path when needed * netdata/packaging: fixes and nits 1) generalize the spec file refinement method 2) Do both replacement that way 3) Adjust file names and paths * netdata/packaging: Replace Source0 explicitly and also make sure you remove extra new lines that may confuse the replacement later * netdata/packaging: [ci skip] move env outside, add some more log * netdata/packaging: [ci skip] adjust logic of replacing tag lines in spec file * netdata/packaging: [ci skip] Alas, fetch the archive, rename the structure to the new version, repack and proceed * netdata/packaging: [ci skip] Extract to specific path * netdata/packaging: [ci skip] replace problematic tar call with the respective pythonized one * netdata/packaging: [ci skip] Add new friendly octal format for chmod * netdata/packaging: [ci skip] more checks * netdata/packaging: [ci skip] dont chmod, chown the whole folder after extraction * netdata/packaging: nit * netdata/packaging: [ci skip] attempt to fix permissions differently * netdata/packaging: [ci skip] Another hack, attempt to fix permissions on the host directly * netdata/packaging: [ci skip] fine, do the move also on the host, pointless to run all through the container * netdata/packaging: [ci skip] Do the move through the container. Also, move a more specific folder * netdata/packaging: [ci skip] move as w00t * netdata/packaging: [ci skip] fix * netdata/packaging: sync permissions handling, round two * netdata/packaging: scratch those hacks, we should do latest differently * netdata/packaging: [ci skip] Set up rpm version string depending on whether we are on latest or not * netdata/packaging: [ci skip] Branch the code here, latest build up should be on the commit rather the tar files * netdata/packaging: Attempt to handle latest version build up * netdata/packaging: [ci skip] Dont continue processing if the file was not generated. Also do the tagging before autoreconf * netdata/packaging: [ci skip] fixes and nits * netdata/packaging: [ci skip] When doing annotated tags, you need to provide a message otherwise an editor pops up and will block the build * netdata/packaging: on the latest code case go all the way host level operations * netdata/packaging: [ci skip] Do not modify version, no longer need it because we properly generated the package with the right version * netdata/packaging: [ci skip] fix sensors line, you missed the Recommends keyword * netdata/packaging: Some code style (remove tabification from some tags) and also remove Recommends, we start with required packages for build and runtime and then we document further needs * netdata/packaging: [ci skip] Make sure you get epel in there, its needed * netdata/packaging: [ci skip] Fix bogus date * netdata/packaging: [ci skip] add these packages to include functionality * netdata/packaging: [ci skip] more fine grained dependency handling * netdata/packaging: [ci skip] Dependency hell - do not depend on libnetacctfilter if on el/7 * netdata/packaging: [ci skip] Be serious, that is not what you do when building the package silly * netdata/packaging: [ci skip] define directory attributes too * netdata/packaging: [ci skip] mystery unfold - comment out as we need to figure out how to handle missing directories that our installer creates if necessary * netdata/packaging: [ci skip] Make sure you properly set deployment repo based on commit message * netdata/packaging: [ci skip] Install these packages for specific versions, remove optimisations for now * netdata/packaging: [ci skip] Make package yanking flexible, so that we can manage both netdata and netdata-edge cleanup properly * netdata/packaging: [ci skip] Actually, set user at travis layer and let the script consume it only. We need to be sure the same user is used on yanking and the deployment process * netdata/packaging: [ci skip] wow pkatsoul * netdata/packaging: Dont forget to install some of the enabled plugins * netdata/packaging: nfacct.plugin not really working on rhel, disable temporarily * netdata/packaging: include installed directories to package * netdata/packaging: [ci skip] nits * netdata/packaging: fixes * netdata/packaging: [ci skip] dont add ghost files * netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there * netdata/packaging: [ci skip] Extreme - override _libexecdir macro * Revert "netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there" This reverts commit 320102c96284e4622266f6f089d6ce87319976f3. That wasnt really the problem here * netdata/packaging: [ci skip] Include contents of dir here * netdata/packaging: fixes * netdata/packaging: [ci skip] Fixes and additions - Tighter permissions for some files - Introduce go.d plugin install (likely broken like this, dont recall if bash style code is fine here) - Raise the path overrides to the spec level, otherwise we build with the overrides and package with the defaults * netdata/packaging: [ci skip] Missed an invalid variable. These files are under our current path, no need for complexity * netdata/packaging: [ci skip] bring sha method onboard * netdata/packaging: [ci skip] Wrong path provided, should be under build root * netdata/packaging: [ci skip] Add registry directory * netdata/packaging: [ci skip] add missing config directory definitions * netdata/packaging: [ci skip] Fix missing dirs * netdata/packaging:[ci fix] hos * netdata/packaging: [ci skip] Fixes and additions - Change versioning to v1.15.0.114 from v1.15.0114 - Add CUPS, Xenstat, json-c * netdata/packaging: [ci skip] fix package dependencies on the builder setup, otherwise spec will fail * netdata/packaging: [ci skip] limit xenstat to suse and fedora for now * netdata/packaging: [ci skip] separate fedora and suse cases, unfortunately suse has different package names.... * netdata/packaging: [ci skip] yajl is not the same package everywhere, of course * netdata/packagin: [ci skip] skip xenstat for now * netdata/packaging: [ci skip] remove the vvvvvvvvv * netdata/packaging: [ci skip] one more fix attempt * netdata/packaging: [ci skip] Spec file extraction is different when building from stable. We *must* fetch it from the tarball rather than the local one * netdata/packaging: [ci skip] spec_file defined on all cases, latest or stable. Also move latest spec file copy after make dist operation, that is where is suppose to be * netdata/packaging: [ci skip] Tag source with the local version, as we build upon the very latest * netdata/packaging: oopsie -- remove json-c from that place, it was forgotten * netdata/packaging: fix packaging, even though devel is consistent between fedora and suse, the binary one is not .... (also fix default perms to be root:netdata rather root:root) * netdata/packaging: Suse love - again, libuuid-devel same, but libuuid is named libuuid1 on suse...... * netdata/packaging: [ci skip] libcap same.... * netdata/packaging: [ci skip] use the noreplace directive for the configuration files * netdata/packaging: [ci skip] Bring back master as the triggering repository * netdata/packaging: [ci skip] attempt to enable/disable service where necessary. Default preset action requires further setup, so we override that * Revert "netdata/packaging: [ci skip] Bring back master as the triggering repository" This reverts commit 9b25a622dc5f12b1539f6863bab52d7bb225fd8d. ** Reverting as we need to test further the service enable action ** * netdata/packaging: [ci skip] revert this change - not the right way, we have empty files * netdata/packaging: [ci skip] Add daemon-reload option, to make sure systemd learns about the newly installed service * netdata/packaging: [ci skip] Attempt to silence codacy by factoring out the few small methods for common usage, then kill directories to reduce complexity adn thats it * netdata/packaging: [ci skip] Just making sure codacy reprocess everything * netdata/packaging: [ci skip] missed one adjustment * netdata/packaging: python style - print shouldnt have space before open parenthesis. Also, add restart on all cases on the spec file * netdata/packaging: [ci skip] fix syntax * netdata/packaging: [ci skip] syntax fixes 2 * netdata/packaging: [ci skip] another miss * netdata/packaging: [ci skip] You need to explicitly trigger a restart, apparently * netdata/packaging: [ci skip] override packaging user definition temporarily, to get things going on testing
2019-07-03 09:18:17 +02:00
# Build step
%{cmake_build}
%install
netdata/packaging: Netdata binary packages generation - spec file refinement, support for nightlies (RPM) (#6369) Detailed list of changes: * netdata/packaging: First round of netdata.spec refactoring - package dependencies - Remove freeipmi/nfacct plugin flags. We auto-detect all plugins by decision - Start refactor of package dependencies - Add missing dependencies, with respect to distro peculiarities - Adjust existing dependencies, so that distro-specific package names is applied * netdata/packaging: add packaging trigger mechanism on binary-packages-specfile-cleanup to help testing * netdata/packaging: WIP - Allow building nightly versions for RPM (Still investigating the right version scheme) * netdata/packaging: Attempt to fix syntax errors - wow travis, mercy * netdata/packaging: tiny nits and fixes 1) there was a syntax error in version definition 2) bring default deploy repo name at the top, then overwrite when latest is published 3) Leave a comment * netdata/packaging: Move these core package requirements to the right section * netdata/packaging: libuv requires >= 1, missed to add that on devel libs * netdata/packaging: some comments, also when you put logrotate in our conf directory, link it to actual log rotate * netdata/packaging: Adjust configure options on spec file (align with netdata-installer.sh) * netdata/packaging: In order to properly support packaging both latest and stable releases, you need to star that extraction part, folder name contains the version with the hash that we cant tell * netdata/packaging: until we fix versioning, bring the original unprocessed spec file and pass the version we like in * netdata/packaging: fix version string in the spec file * netdata/packaging: Replace source path, we need to work with whatever we downloaded (to be refined) * netdata/packaging: [ci skip] you mixed the paths, reverse them * netdata/packaging: [ci skip] attempt to fix source path when needed * netdata/packaging: fixes and nits 1) generalize the spec file refinement method 2) Do both replacement that way 3) Adjust file names and paths * netdata/packaging: Replace Source0 explicitly and also make sure you remove extra new lines that may confuse the replacement later * netdata/packaging: [ci skip] move env outside, add some more log * netdata/packaging: [ci skip] adjust logic of replacing tag lines in spec file * netdata/packaging: [ci skip] Alas, fetch the archive, rename the structure to the new version, repack and proceed * netdata/packaging: [ci skip] Extract to specific path * netdata/packaging: [ci skip] replace problematic tar call with the respective pythonized one * netdata/packaging: [ci skip] Add new friendly octal format for chmod * netdata/packaging: [ci skip] more checks * netdata/packaging: [ci skip] dont chmod, chown the whole folder after extraction * netdata/packaging: nit * netdata/packaging: [ci skip] attempt to fix permissions differently * netdata/packaging: [ci skip] Another hack, attempt to fix permissions on the host directly * netdata/packaging: [ci skip] fine, do the move also on the host, pointless to run all through the container * netdata/packaging: [ci skip] Do the move through the container. Also, move a more specific folder * netdata/packaging: [ci skip] move as w00t * netdata/packaging: [ci skip] fix * netdata/packaging: sync permissions handling, round two * netdata/packaging: scratch those hacks, we should do latest differently * netdata/packaging: [ci skip] Set up rpm version string depending on whether we are on latest or not * netdata/packaging: [ci skip] Branch the code here, latest build up should be on the commit rather the tar files * netdata/packaging: Attempt to handle latest version build up * netdata/packaging: [ci skip] Dont continue processing if the file was not generated. Also do the tagging before autoreconf * netdata/packaging: [ci skip] fixes and nits * netdata/packaging: [ci skip] When doing annotated tags, you need to provide a message otherwise an editor pops up and will block the build * netdata/packaging: on the latest code case go all the way host level operations * netdata/packaging: [ci skip] Do not modify version, no longer need it because we properly generated the package with the right version * netdata/packaging: [ci skip] fix sensors line, you missed the Recommends keyword * netdata/packaging: Some code style (remove tabification from some tags) and also remove Recommends, we start with required packages for build and runtime and then we document further needs * netdata/packaging: [ci skip] Make sure you get epel in there, its needed * netdata/packaging: [ci skip] Fix bogus date * netdata/packaging: [ci skip] add these packages to include functionality * netdata/packaging: [ci skip] more fine grained dependency handling * netdata/packaging: [ci skip] Dependency hell - do not depend on libnetacctfilter if on el/7 * netdata/packaging: [ci skip] Be serious, that is not what you do when building the package silly * netdata/packaging: [ci skip] define directory attributes too * netdata/packaging: [ci skip] mystery unfold - comment out as we need to figure out how to handle missing directories that our installer creates if necessary * netdata/packaging: [ci skip] Make sure you properly set deployment repo based on commit message * netdata/packaging: [ci skip] Install these packages for specific versions, remove optimisations for now * netdata/packaging: [ci skip] Make package yanking flexible, so that we can manage both netdata and netdata-edge cleanup properly * netdata/packaging: [ci skip] Actually, set user at travis layer and let the script consume it only. We need to be sure the same user is used on yanking and the deployment process * netdata/packaging: [ci skip] wow pkatsoul * netdata/packaging: Dont forget to install some of the enabled plugins * netdata/packaging: nfacct.plugin not really working on rhel, disable temporarily * netdata/packaging: include installed directories to package * netdata/packaging: [ci skip] nits * netdata/packaging: fixes * netdata/packaging: [ci skip] dont add ghost files * netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there * netdata/packaging: [ci skip] Extreme - override _libexecdir macro * Revert "netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there" This reverts commit 320102c96284e4622266f6f089d6ce87319976f3. That wasnt really the problem here * netdata/packaging: [ci skip] Include contents of dir here * netdata/packaging: fixes * netdata/packaging: [ci skip] Fixes and additions - Tighter permissions for some files - Introduce go.d plugin install (likely broken like this, dont recall if bash style code is fine here) - Raise the path overrides to the spec level, otherwise we build with the overrides and package with the defaults * netdata/packaging: [ci skip] Missed an invalid variable. These files are under our current path, no need for complexity * netdata/packaging: [ci skip] bring sha method onboard * netdata/packaging: [ci skip] Wrong path provided, should be under build root * netdata/packaging: [ci skip] Add registry directory * netdata/packaging: [ci skip] add missing config directory definitions * netdata/packaging: [ci skip] Fix missing dirs * netdata/packaging:[ci fix] hos * netdata/packaging: [ci skip] Fixes and additions - Change versioning to v1.15.0.114 from v1.15.0114 - Add CUPS, Xenstat, json-c * netdata/packaging: [ci skip] fix package dependencies on the builder setup, otherwise spec will fail * netdata/packaging: [ci skip] limit xenstat to suse and fedora for now * netdata/packaging: [ci skip] separate fedora and suse cases, unfortunately suse has different package names.... * netdata/packaging: [ci skip] yajl is not the same package everywhere, of course * netdata/packagin: [ci skip] skip xenstat for now * netdata/packaging: [ci skip] remove the vvvvvvvvv * netdata/packaging: [ci skip] one more fix attempt * netdata/packaging: [ci skip] Spec file extraction is different when building from stable. We *must* fetch it from the tarball rather than the local one * netdata/packaging: [ci skip] spec_file defined on all cases, latest or stable. Also move latest spec file copy after make dist operation, that is where is suppose to be * netdata/packaging: [ci skip] Tag source with the local version, as we build upon the very latest * netdata/packaging: oopsie -- remove json-c from that place, it was forgotten * netdata/packaging: fix packaging, even though devel is consistent between fedora and suse, the binary one is not .... (also fix default perms to be root:netdata rather root:root) * netdata/packaging: Suse love - again, libuuid-devel same, but libuuid is named libuuid1 on suse...... * netdata/packaging: [ci skip] libcap same.... * netdata/packaging: [ci skip] use the noreplace directive for the configuration files * netdata/packaging: [ci skip] Bring back master as the triggering repository * netdata/packaging: [ci skip] attempt to enable/disable service where necessary. Default preset action requires further setup, so we override that * Revert "netdata/packaging: [ci skip] Bring back master as the triggering repository" This reverts commit 9b25a622dc5f12b1539f6863bab52d7bb225fd8d. ** Reverting as we need to test further the service enable action ** * netdata/packaging: [ci skip] revert this change - not the right way, we have empty files * netdata/packaging: [ci skip] Add daemon-reload option, to make sure systemd learns about the newly installed service * netdata/packaging: [ci skip] Attempt to silence codacy by factoring out the few small methods for common usage, then kill directories to reduce complexity adn thats it * netdata/packaging: [ci skip] Just making sure codacy reprocess everything * netdata/packaging: [ci skip] missed one adjustment * netdata/packaging: python style - print shouldnt have space before open parenthesis. Also, add restart on all cases on the spec file * netdata/packaging: [ci skip] fix syntax * netdata/packaging: [ci skip] syntax fixes 2 * netdata/packaging: [ci skip] another miss * netdata/packaging: [ci skip] You need to explicitly trigger a restart, apparently * netdata/packaging: [ci skip] override packaging user definition temporarily, to get things going on testing
2019-07-03 09:18:17 +02:00
# ###########################################################
# Clear the directory, if already exists and install
rm -rf "${RPM_BUILD_ROOT}"
%{cmake_install}
install -m 644 -p "system/%{name}.conf" "${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}"
netdata/packaging: Netdata binary packages generation - spec file refinement, support for nightlies (RPM) (#6369) Detailed list of changes: * netdata/packaging: First round of netdata.spec refactoring - package dependencies - Remove freeipmi/nfacct plugin flags. We auto-detect all plugins by decision - Start refactor of package dependencies - Add missing dependencies, with respect to distro peculiarities - Adjust existing dependencies, so that distro-specific package names is applied * netdata/packaging: add packaging trigger mechanism on binary-packages-specfile-cleanup to help testing * netdata/packaging: WIP - Allow building nightly versions for RPM (Still investigating the right version scheme) * netdata/packaging: Attempt to fix syntax errors - wow travis, mercy * netdata/packaging: tiny nits and fixes 1) there was a syntax error in version definition 2) bring default deploy repo name at the top, then overwrite when latest is published 3) Leave a comment * netdata/packaging: Move these core package requirements to the right section * netdata/packaging: libuv requires >= 1, missed to add that on devel libs * netdata/packaging: some comments, also when you put logrotate in our conf directory, link it to actual log rotate * netdata/packaging: Adjust configure options on spec file (align with netdata-installer.sh) * netdata/packaging: In order to properly support packaging both latest and stable releases, you need to star that extraction part, folder name contains the version with the hash that we cant tell * netdata/packaging: until we fix versioning, bring the original unprocessed spec file and pass the version we like in * netdata/packaging: fix version string in the spec file * netdata/packaging: Replace source path, we need to work with whatever we downloaded (to be refined) * netdata/packaging: [ci skip] you mixed the paths, reverse them * netdata/packaging: [ci skip] attempt to fix source path when needed * netdata/packaging: fixes and nits 1) generalize the spec file refinement method 2) Do both replacement that way 3) Adjust file names and paths * netdata/packaging: Replace Source0 explicitly and also make sure you remove extra new lines that may confuse the replacement later * netdata/packaging: [ci skip] move env outside, add some more log * netdata/packaging: [ci skip] adjust logic of replacing tag lines in spec file * netdata/packaging: [ci skip] Alas, fetch the archive, rename the structure to the new version, repack and proceed * netdata/packaging: [ci skip] Extract to specific path * netdata/packaging: [ci skip] replace problematic tar call with the respective pythonized one * netdata/packaging: [ci skip] Add new friendly octal format for chmod * netdata/packaging: [ci skip] more checks * netdata/packaging: [ci skip] dont chmod, chown the whole folder after extraction * netdata/packaging: nit * netdata/packaging: [ci skip] attempt to fix permissions differently * netdata/packaging: [ci skip] Another hack, attempt to fix permissions on the host directly * netdata/packaging: [ci skip] fine, do the move also on the host, pointless to run all through the container * netdata/packaging: [ci skip] Do the move through the container. Also, move a more specific folder * netdata/packaging: [ci skip] move as w00t * netdata/packaging: [ci skip] fix * netdata/packaging: sync permissions handling, round two * netdata/packaging: scratch those hacks, we should do latest differently * netdata/packaging: [ci skip] Set up rpm version string depending on whether we are on latest or not * netdata/packaging: [ci skip] Branch the code here, latest build up should be on the commit rather the tar files * netdata/packaging: Attempt to handle latest version build up * netdata/packaging: [ci skip] Dont continue processing if the file was not generated. Also do the tagging before autoreconf * netdata/packaging: [ci skip] fixes and nits * netdata/packaging: [ci skip] When doing annotated tags, you need to provide a message otherwise an editor pops up and will block the build * netdata/packaging: on the latest code case go all the way host level operations * netdata/packaging: [ci skip] Do not modify version, no longer need it because we properly generated the package with the right version * netdata/packaging: [ci skip] fix sensors line, you missed the Recommends keyword * netdata/packaging: Some code style (remove tabification from some tags) and also remove Recommends, we start with required packages for build and runtime and then we document further needs * netdata/packaging: [ci skip] Make sure you get epel in there, its needed * netdata/packaging: [ci skip] Fix bogus date * netdata/packaging: [ci skip] add these packages to include functionality * netdata/packaging: [ci skip] more fine grained dependency handling * netdata/packaging: [ci skip] Dependency hell - do not depend on libnetacctfilter if on el/7 * netdata/packaging: [ci skip] Be serious, that is not what you do when building the package silly * netdata/packaging: [ci skip] define directory attributes too * netdata/packaging: [ci skip] mystery unfold - comment out as we need to figure out how to handle missing directories that our installer creates if necessary * netdata/packaging: [ci skip] Make sure you properly set deployment repo based on commit message * netdata/packaging: [ci skip] Install these packages for specific versions, remove optimisations for now * netdata/packaging: [ci skip] Make package yanking flexible, so that we can manage both netdata and netdata-edge cleanup properly * netdata/packaging: [ci skip] Actually, set user at travis layer and let the script consume it only. We need to be sure the same user is used on yanking and the deployment process * netdata/packaging: [ci skip] wow pkatsoul * netdata/packaging: Dont forget to install some of the enabled plugins * netdata/packaging: nfacct.plugin not really working on rhel, disable temporarily * netdata/packaging: include installed directories to package * netdata/packaging: [ci skip] nits * netdata/packaging: fixes * netdata/packaging: [ci skip] dont add ghost files * netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there * netdata/packaging: [ci skip] Extreme - override _libexecdir macro * Revert "netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there" This reverts commit 320102c96284e4622266f6f089d6ce87319976f3. That wasnt really the problem here * netdata/packaging: [ci skip] Include contents of dir here * netdata/packaging: fixes * netdata/packaging: [ci skip] Fixes and additions - Tighter permissions for some files - Introduce go.d plugin install (likely broken like this, dont recall if bash style code is fine here) - Raise the path overrides to the spec level, otherwise we build with the overrides and package with the defaults * netdata/packaging: [ci skip] Missed an invalid variable. These files are under our current path, no need for complexity * netdata/packaging: [ci skip] bring sha method onboard * netdata/packaging: [ci skip] Wrong path provided, should be under build root * netdata/packaging: [ci skip] Add registry directory * netdata/packaging: [ci skip] add missing config directory definitions * netdata/packaging: [ci skip] Fix missing dirs * netdata/packaging:[ci fix] hos * netdata/packaging: [ci skip] Fixes and additions - Change versioning to v1.15.0.114 from v1.15.0114 - Add CUPS, Xenstat, json-c * netdata/packaging: [ci skip] fix package dependencies on the builder setup, otherwise spec will fail * netdata/packaging: [ci skip] limit xenstat to suse and fedora for now * netdata/packaging: [ci skip] separate fedora and suse cases, unfortunately suse has different package names.... * netdata/packaging: [ci skip] yajl is not the same package everywhere, of course * netdata/packagin: [ci skip] skip xenstat for now * netdata/packaging: [ci skip] remove the vvvvvvvvv * netdata/packaging: [ci skip] one more fix attempt * netdata/packaging: [ci skip] Spec file extraction is different when building from stable. We *must* fetch it from the tarball rather than the local one * netdata/packaging: [ci skip] spec_file defined on all cases, latest or stable. Also move latest spec file copy after make dist operation, that is where is suppose to be * netdata/packaging: [ci skip] Tag source with the local version, as we build upon the very latest * netdata/packaging: oopsie -- remove json-c from that place, it was forgotten * netdata/packaging: fix packaging, even though devel is consistent between fedora and suse, the binary one is not .... (also fix default perms to be root:netdata rather root:root) * netdata/packaging: Suse love - again, libuuid-devel same, but libuuid is named libuuid1 on suse...... * netdata/packaging: [ci skip] libcap same.... * netdata/packaging: [ci skip] use the noreplace directive for the configuration files * netdata/packaging: [ci skip] Bring back master as the triggering repository * netdata/packaging: [ci skip] attempt to enable/disable service where necessary. Default preset action requires further setup, so we override that * Revert "netdata/packaging: [ci skip] Bring back master as the triggering repository" This reverts commit 9b25a622dc5f12b1539f6863bab52d7bb225fd8d. ** Reverting as we need to test further the service enable action ** * netdata/packaging: [ci skip] revert this change - not the right way, we have empty files * netdata/packaging: [ci skip] Add daemon-reload option, to make sure systemd learns about the newly installed service * netdata/packaging: [ci skip] Attempt to silence codacy by factoring out the few small methods for common usage, then kill directories to reduce complexity adn thats it * netdata/packaging: [ci skip] Just making sure codacy reprocess everything * netdata/packaging: [ci skip] missed one adjustment * netdata/packaging: python style - print shouldnt have space before open parenthesis. Also, add restart on all cases on the spec file * netdata/packaging: [ci skip] fix syntax * netdata/packaging: [ci skip] syntax fixes 2 * netdata/packaging: [ci skip] another miss * netdata/packaging: [ci skip] You need to explicitly trigger a restart, apparently * netdata/packaging: [ci skip] override packaging user definition temporarily, to get things going on testing
2019-07-03 09:18:17 +02:00
# ###########################################################
# Install updater script
install -m 755 -p packaging/installer/%{name}-updater.sh "${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/%{name}-updater.sh"
netdata/packaging: Netdata binary packages generation - spec file refinement, support for nightlies (RPM) (#6369) Detailed list of changes: * netdata/packaging: First round of netdata.spec refactoring - package dependencies - Remove freeipmi/nfacct plugin flags. We auto-detect all plugins by decision - Start refactor of package dependencies - Add missing dependencies, with respect to distro peculiarities - Adjust existing dependencies, so that distro-specific package names is applied * netdata/packaging: add packaging trigger mechanism on binary-packages-specfile-cleanup to help testing * netdata/packaging: WIP - Allow building nightly versions for RPM (Still investigating the right version scheme) * netdata/packaging: Attempt to fix syntax errors - wow travis, mercy * netdata/packaging: tiny nits and fixes 1) there was a syntax error in version definition 2) bring default deploy repo name at the top, then overwrite when latest is published 3) Leave a comment * netdata/packaging: Move these core package requirements to the right section * netdata/packaging: libuv requires >= 1, missed to add that on devel libs * netdata/packaging: some comments, also when you put logrotate in our conf directory, link it to actual log rotate * netdata/packaging: Adjust configure options on spec file (align with netdata-installer.sh) * netdata/packaging: In order to properly support packaging both latest and stable releases, you need to star that extraction part, folder name contains the version with the hash that we cant tell * netdata/packaging: until we fix versioning, bring the original unprocessed spec file and pass the version we like in * netdata/packaging: fix version string in the spec file * netdata/packaging: Replace source path, we need to work with whatever we downloaded (to be refined) * netdata/packaging: [ci skip] you mixed the paths, reverse them * netdata/packaging: [ci skip] attempt to fix source path when needed * netdata/packaging: fixes and nits 1) generalize the spec file refinement method 2) Do both replacement that way 3) Adjust file names and paths * netdata/packaging: Replace Source0 explicitly and also make sure you remove extra new lines that may confuse the replacement later * netdata/packaging: [ci skip] move env outside, add some more log * netdata/packaging: [ci skip] adjust logic of replacing tag lines in spec file * netdata/packaging: [ci skip] Alas, fetch the archive, rename the structure to the new version, repack and proceed * netdata/packaging: [ci skip] Extract to specific path * netdata/packaging: [ci skip] replace problematic tar call with the respective pythonized one * netdata/packaging: [ci skip] Add new friendly octal format for chmod * netdata/packaging: [ci skip] more checks * netdata/packaging: [ci skip] dont chmod, chown the whole folder after extraction * netdata/packaging: nit * netdata/packaging: [ci skip] attempt to fix permissions differently * netdata/packaging: [ci skip] Another hack, attempt to fix permissions on the host directly * netdata/packaging: [ci skip] fine, do the move also on the host, pointless to run all through the container * netdata/packaging: [ci skip] Do the move through the container. Also, move a more specific folder * netdata/packaging: [ci skip] move as w00t * netdata/packaging: [ci skip] fix * netdata/packaging: sync permissions handling, round two * netdata/packaging: scratch those hacks, we should do latest differently * netdata/packaging: [ci skip] Set up rpm version string depending on whether we are on latest or not * netdata/packaging: [ci skip] Branch the code here, latest build up should be on the commit rather the tar files * netdata/packaging: Attempt to handle latest version build up * netdata/packaging: [ci skip] Dont continue processing if the file was not generated. Also do the tagging before autoreconf * netdata/packaging: [ci skip] fixes and nits * netdata/packaging: [ci skip] When doing annotated tags, you need to provide a message otherwise an editor pops up and will block the build * netdata/packaging: on the latest code case go all the way host level operations * netdata/packaging: [ci skip] Do not modify version, no longer need it because we properly generated the package with the right version * netdata/packaging: [ci skip] fix sensors line, you missed the Recommends keyword * netdata/packaging: Some code style (remove tabification from some tags) and also remove Recommends, we start with required packages for build and runtime and then we document further needs * netdata/packaging: [ci skip] Make sure you get epel in there, its needed * netdata/packaging: [ci skip] Fix bogus date * netdata/packaging: [ci skip] add these packages to include functionality * netdata/packaging: [ci skip] more fine grained dependency handling * netdata/packaging: [ci skip] Dependency hell - do not depend on libnetacctfilter if on el/7 * netdata/packaging: [ci skip] Be serious, that is not what you do when building the package silly * netdata/packaging: [ci skip] define directory attributes too * netdata/packaging: [ci skip] mystery unfold - comment out as we need to figure out how to handle missing directories that our installer creates if necessary * netdata/packaging: [ci skip] Make sure you properly set deployment repo based on commit message * netdata/packaging: [ci skip] Install these packages for specific versions, remove optimisations for now * netdata/packaging: [ci skip] Make package yanking flexible, so that we can manage both netdata and netdata-edge cleanup properly * netdata/packaging: [ci skip] Actually, set user at travis layer and let the script consume it only. We need to be sure the same user is used on yanking and the deployment process * netdata/packaging: [ci skip] wow pkatsoul * netdata/packaging: Dont forget to install some of the enabled plugins * netdata/packaging: nfacct.plugin not really working on rhel, disable temporarily * netdata/packaging: include installed directories to package * netdata/packaging: [ci skip] nits * netdata/packaging: fixes * netdata/packaging: [ci skip] dont add ghost files * netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there * netdata/packaging: [ci skip] Extreme - override _libexecdir macro * Revert "netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there" This reverts commit 320102c96284e4622266f6f089d6ce87319976f3. That wasnt really the problem here * netdata/packaging: [ci skip] Include contents of dir here * netdata/packaging: fixes * netdata/packaging: [ci skip] Fixes and additions - Tighter permissions for some files - Introduce go.d plugin install (likely broken like this, dont recall if bash style code is fine here) - Raise the path overrides to the spec level, otherwise we build with the overrides and package with the defaults * netdata/packaging: [ci skip] Missed an invalid variable. These files are under our current path, no need for complexity * netdata/packaging: [ci skip] bring sha method onboard * netdata/packaging: [ci skip] Wrong path provided, should be under build root * netdata/packaging: [ci skip] Add registry directory * netdata/packaging: [ci skip] add missing config directory definitions * netdata/packaging: [ci skip] Fix missing dirs * netdata/packaging:[ci fix] hos * netdata/packaging: [ci skip] Fixes and additions - Change versioning to v1.15.0.114 from v1.15.0114 - Add CUPS, Xenstat, json-c * netdata/packaging: [ci skip] fix package dependencies on the builder setup, otherwise spec will fail * netdata/packaging: [ci skip] limit xenstat to suse and fedora for now * netdata/packaging: [ci skip] separate fedora and suse cases, unfortunately suse has different package names.... * netdata/packaging: [ci skip] yajl is not the same package everywhere, of course * netdata/packagin: [ci skip] skip xenstat for now * netdata/packaging: [ci skip] remove the vvvvvvvvv * netdata/packaging: [ci skip] one more fix attempt * netdata/packaging: [ci skip] Spec file extraction is different when building from stable. We *must* fetch it from the tarball rather than the local one * netdata/packaging: [ci skip] spec_file defined on all cases, latest or stable. Also move latest spec file copy after make dist operation, that is where is suppose to be * netdata/packaging: [ci skip] Tag source with the local version, as we build upon the very latest * netdata/packaging: oopsie -- remove json-c from that place, it was forgotten * netdata/packaging: fix packaging, even though devel is consistent between fedora and suse, the binary one is not .... (also fix default perms to be root:netdata rather root:root) * netdata/packaging: Suse love - again, libuuid-devel same, but libuuid is named libuuid1 on suse...... * netdata/packaging: [ci skip] libcap same.... * netdata/packaging: [ci skip] use the noreplace directive for the configuration files * netdata/packaging: [ci skip] Bring back master as the triggering repository * netdata/packaging: [ci skip] attempt to enable/disable service where necessary. Default preset action requires further setup, so we override that * Revert "netdata/packaging: [ci skip] Bring back master as the triggering repository" This reverts commit 9b25a622dc5f12b1539f6863bab52d7bb225fd8d. ** Reverting as we need to test further the service enable action ** * netdata/packaging: [ci skip] revert this change - not the right way, we have empty files * netdata/packaging: [ci skip] Add daemon-reload option, to make sure systemd learns about the newly installed service * netdata/packaging: [ci skip] Attempt to silence codacy by factoring out the few small methods for common usage, then kill directories to reduce complexity adn thats it * netdata/packaging: [ci skip] Just making sure codacy reprocess everything * netdata/packaging: [ci skip] missed one adjustment * netdata/packaging: python style - print shouldnt have space before open parenthesis. Also, add restart on all cases on the spec file * netdata/packaging: [ci skip] fix syntax * netdata/packaging: [ci skip] syntax fixes 2 * netdata/packaging: [ci skip] another miss * netdata/packaging: [ci skip] You need to explicitly trigger a restart, apparently * netdata/packaging: [ci skip] override packaging user definition temporarily, to get things going on testing
2019-07-03 09:18:17 +02:00
# ###########################################################
# logrotate settings
install -m 755 -d "${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d"
install -m 644 -p "%{__cmake_builddir}/system/logrotate/%{name}" "${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d/%{name}"
# ###########################################################
# Install cache and log directories
install -m 755 -d "${RPM_BUILD_ROOT}%{_localstatedir}/cache/%{name}"
install -m 755 -d "${RPM_BUILD_ROOT}%{_localstatedir}/log/%{name}"
netdata/packaging: Netdata binary packages generation - spec file refinement, support for nightlies (RPM) (#6369) Detailed list of changes: * netdata/packaging: First round of netdata.spec refactoring - package dependencies - Remove freeipmi/nfacct plugin flags. We auto-detect all plugins by decision - Start refactor of package dependencies - Add missing dependencies, with respect to distro peculiarities - Adjust existing dependencies, so that distro-specific package names is applied * netdata/packaging: add packaging trigger mechanism on binary-packages-specfile-cleanup to help testing * netdata/packaging: WIP - Allow building nightly versions for RPM (Still investigating the right version scheme) * netdata/packaging: Attempt to fix syntax errors - wow travis, mercy * netdata/packaging: tiny nits and fixes 1) there was a syntax error in version definition 2) bring default deploy repo name at the top, then overwrite when latest is published 3) Leave a comment * netdata/packaging: Move these core package requirements to the right section * netdata/packaging: libuv requires >= 1, missed to add that on devel libs * netdata/packaging: some comments, also when you put logrotate in our conf directory, link it to actual log rotate * netdata/packaging: Adjust configure options on spec file (align with netdata-installer.sh) * netdata/packaging: In order to properly support packaging both latest and stable releases, you need to star that extraction part, folder name contains the version with the hash that we cant tell * netdata/packaging: until we fix versioning, bring the original unprocessed spec file and pass the version we like in * netdata/packaging: fix version string in the spec file * netdata/packaging: Replace source path, we need to work with whatever we downloaded (to be refined) * netdata/packaging: [ci skip] you mixed the paths, reverse them * netdata/packaging: [ci skip] attempt to fix source path when needed * netdata/packaging: fixes and nits 1) generalize the spec file refinement method 2) Do both replacement that way 3) Adjust file names and paths * netdata/packaging: Replace Source0 explicitly and also make sure you remove extra new lines that may confuse the replacement later * netdata/packaging: [ci skip] move env outside, add some more log * netdata/packaging: [ci skip] adjust logic of replacing tag lines in spec file * netdata/packaging: [ci skip] Alas, fetch the archive, rename the structure to the new version, repack and proceed * netdata/packaging: [ci skip] Extract to specific path * netdata/packaging: [ci skip] replace problematic tar call with the respective pythonized one * netdata/packaging: [ci skip] Add new friendly octal format for chmod * netdata/packaging: [ci skip] more checks * netdata/packaging: [ci skip] dont chmod, chown the whole folder after extraction * netdata/packaging: nit * netdata/packaging: [ci skip] attempt to fix permissions differently * netdata/packaging: [ci skip] Another hack, attempt to fix permissions on the host directly * netdata/packaging: [ci skip] fine, do the move also on the host, pointless to run all through the container * netdata/packaging: [ci skip] Do the move through the container. Also, move a more specific folder * netdata/packaging: [ci skip] move as w00t * netdata/packaging: [ci skip] fix * netdata/packaging: sync permissions handling, round two * netdata/packaging: scratch those hacks, we should do latest differently * netdata/packaging: [ci skip] Set up rpm version string depending on whether we are on latest or not * netdata/packaging: [ci skip] Branch the code here, latest build up should be on the commit rather the tar files * netdata/packaging: Attempt to handle latest version build up * netdata/packaging: [ci skip] Dont continue processing if the file was not generated. Also do the tagging before autoreconf * netdata/packaging: [ci skip] fixes and nits * netdata/packaging: [ci skip] When doing annotated tags, you need to provide a message otherwise an editor pops up and will block the build * netdata/packaging: on the latest code case go all the way host level operations * netdata/packaging: [ci skip] Do not modify version, no longer need it because we properly generated the package with the right version * netdata/packaging: [ci skip] fix sensors line, you missed the Recommends keyword * netdata/packaging: Some code style (remove tabification from some tags) and also remove Recommends, we start with required packages for build and runtime and then we document further needs * netdata/packaging: [ci skip] Make sure you get epel in there, its needed * netdata/packaging: [ci skip] Fix bogus date * netdata/packaging: [ci skip] add these packages to include functionality * netdata/packaging: [ci skip] more fine grained dependency handling * netdata/packaging: [ci skip] Dependency hell - do not depend on libnetacctfilter if on el/7 * netdata/packaging: [ci skip] Be serious, that is not what you do when building the package silly * netdata/packaging: [ci skip] define directory attributes too * netdata/packaging: [ci skip] mystery unfold - comment out as we need to figure out how to handle missing directories that our installer creates if necessary * netdata/packaging: [ci skip] Make sure you properly set deployment repo based on commit message * netdata/packaging: [ci skip] Install these packages for specific versions, remove optimisations for now * netdata/packaging: [ci skip] Make package yanking flexible, so that we can manage both netdata and netdata-edge cleanup properly * netdata/packaging: [ci skip] Actually, set user at travis layer and let the script consume it only. We need to be sure the same user is used on yanking and the deployment process * netdata/packaging: [ci skip] wow pkatsoul * netdata/packaging: Dont forget to install some of the enabled plugins * netdata/packaging: nfacct.plugin not really working on rhel, disable temporarily * netdata/packaging: include installed directories to package * netdata/packaging: [ci skip] nits * netdata/packaging: fixes * netdata/packaging: [ci skip] dont add ghost files * netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there * netdata/packaging: [ci skip] Extreme - override _libexecdir macro * Revert "netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there" This reverts commit 320102c96284e4622266f6f089d6ce87319976f3. That wasnt really the problem here * netdata/packaging: [ci skip] Include contents of dir here * netdata/packaging: fixes * netdata/packaging: [ci skip] Fixes and additions - Tighter permissions for some files - Introduce go.d plugin install (likely broken like this, dont recall if bash style code is fine here) - Raise the path overrides to the spec level, otherwise we build with the overrides and package with the defaults * netdata/packaging: [ci skip] Missed an invalid variable. These files are under our current path, no need for complexity * netdata/packaging: [ci skip] bring sha method onboard * netdata/packaging: [ci skip] Wrong path provided, should be under build root * netdata/packaging: [ci skip] Add registry directory * netdata/packaging: [ci skip] add missing config directory definitions * netdata/packaging: [ci skip] Fix missing dirs * netdata/packaging:[ci fix] hos * netdata/packaging: [ci skip] Fixes and additions - Change versioning to v1.15.0.114 from v1.15.0114 - Add CUPS, Xenstat, json-c * netdata/packaging: [ci skip] fix package dependencies on the builder setup, otherwise spec will fail * netdata/packaging: [ci skip] limit xenstat to suse and fedora for now * netdata/packaging: [ci skip] separate fedora and suse cases, unfortunately suse has different package names.... * netdata/packaging: [ci skip] yajl is not the same package everywhere, of course * netdata/packagin: [ci skip] skip xenstat for now * netdata/packaging: [ci skip] remove the vvvvvvvvv * netdata/packaging: [ci skip] one more fix attempt * netdata/packaging: [ci skip] Spec file extraction is different when building from stable. We *must* fetch it from the tarball rather than the local one * netdata/packaging: [ci skip] spec_file defined on all cases, latest or stable. Also move latest spec file copy after make dist operation, that is where is suppose to be * netdata/packaging: [ci skip] Tag source with the local version, as we build upon the very latest * netdata/packaging: oopsie -- remove json-c from that place, it was forgotten * netdata/packaging: fix packaging, even though devel is consistent between fedora and suse, the binary one is not .... (also fix default perms to be root:netdata rather root:root) * netdata/packaging: Suse love - again, libuuid-devel same, but libuuid is named libuuid1 on suse...... * netdata/packaging: [ci skip] libcap same.... * netdata/packaging: [ci skip] use the noreplace directive for the configuration files * netdata/packaging: [ci skip] Bring back master as the triggering repository * netdata/packaging: [ci skip] attempt to enable/disable service where necessary. Default preset action requires further setup, so we override that * Revert "netdata/packaging: [ci skip] Bring back master as the triggering repository" This reverts commit 9b25a622dc5f12b1539f6863bab52d7bb225fd8d. ** Reverting as we need to test further the service enable action ** * netdata/packaging: [ci skip] revert this change - not the right way, we have empty files * netdata/packaging: [ci skip] Add daemon-reload option, to make sure systemd learns about the newly installed service * netdata/packaging: [ci skip] Attempt to silence codacy by factoring out the few small methods for common usage, then kill directories to reduce complexity adn thats it * netdata/packaging: [ci skip] Just making sure codacy reprocess everything * netdata/packaging: [ci skip] missed one adjustment * netdata/packaging: python style - print shouldnt have space before open parenthesis. Also, add restart on all cases on the spec file * netdata/packaging: [ci skip] fix syntax * netdata/packaging: [ci skip] syntax fixes 2 * netdata/packaging: [ci skip] another miss * netdata/packaging: [ci skip] You need to explicitly trigger a restart, apparently * netdata/packaging: [ci skip] override packaging user definition temporarily, to get things going on testing
2019-07-03 09:18:17 +02:00
# ###########################################################
# Install registry directory
install -m 755 -d "${RPM_BUILD_ROOT}%{_localstatedir}/lib/%{name}/registry"
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
# ###########################################################
# Install uninstaller script
install -m 750 -p packaging/installer/%{name}-uninstaller.sh \
"${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/%{name}-uninstaller.sh"
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
netdata/packaging: Netdata binary packages generation - spec file refinement, support for nightlies (RPM) (#6369) Detailed list of changes: * netdata/packaging: First round of netdata.spec refactoring - package dependencies - Remove freeipmi/nfacct plugin flags. We auto-detect all plugins by decision - Start refactor of package dependencies - Add missing dependencies, with respect to distro peculiarities - Adjust existing dependencies, so that distro-specific package names is applied * netdata/packaging: add packaging trigger mechanism on binary-packages-specfile-cleanup to help testing * netdata/packaging: WIP - Allow building nightly versions for RPM (Still investigating the right version scheme) * netdata/packaging: Attempt to fix syntax errors - wow travis, mercy * netdata/packaging: tiny nits and fixes 1) there was a syntax error in version definition 2) bring default deploy repo name at the top, then overwrite when latest is published 3) Leave a comment * netdata/packaging: Move these core package requirements to the right section * netdata/packaging: libuv requires >= 1, missed to add that on devel libs * netdata/packaging: some comments, also when you put logrotate in our conf directory, link it to actual log rotate * netdata/packaging: Adjust configure options on spec file (align with netdata-installer.sh) * netdata/packaging: In order to properly support packaging both latest and stable releases, you need to star that extraction part, folder name contains the version with the hash that we cant tell * netdata/packaging: until we fix versioning, bring the original unprocessed spec file and pass the version we like in * netdata/packaging: fix version string in the spec file * netdata/packaging: Replace source path, we need to work with whatever we downloaded (to be refined) * netdata/packaging: [ci skip] you mixed the paths, reverse them * netdata/packaging: [ci skip] attempt to fix source path when needed * netdata/packaging: fixes and nits 1) generalize the spec file refinement method 2) Do both replacement that way 3) Adjust file names and paths * netdata/packaging: Replace Source0 explicitly and also make sure you remove extra new lines that may confuse the replacement later * netdata/packaging: [ci skip] move env outside, add some more log * netdata/packaging: [ci skip] adjust logic of replacing tag lines in spec file * netdata/packaging: [ci skip] Alas, fetch the archive, rename the structure to the new version, repack and proceed * netdata/packaging: [ci skip] Extract to specific path * netdata/packaging: [ci skip] replace problematic tar call with the respective pythonized one * netdata/packaging: [ci skip] Add new friendly octal format for chmod * netdata/packaging: [ci skip] more checks * netdata/packaging: [ci skip] dont chmod, chown the whole folder after extraction * netdata/packaging: nit * netdata/packaging: [ci skip] attempt to fix permissions differently * netdata/packaging: [ci skip] Another hack, attempt to fix permissions on the host directly * netdata/packaging: [ci skip] fine, do the move also on the host, pointless to run all through the container * netdata/packaging: [ci skip] Do the move through the container. Also, move a more specific folder * netdata/packaging: [ci skip] move as w00t * netdata/packaging: [ci skip] fix * netdata/packaging: sync permissions handling, round two * netdata/packaging: scratch those hacks, we should do latest differently * netdata/packaging: [ci skip] Set up rpm version string depending on whether we are on latest or not * netdata/packaging: [ci skip] Branch the code here, latest build up should be on the commit rather the tar files * netdata/packaging: Attempt to handle latest version build up * netdata/packaging: [ci skip] Dont continue processing if the file was not generated. Also do the tagging before autoreconf * netdata/packaging: [ci skip] fixes and nits * netdata/packaging: [ci skip] When doing annotated tags, you need to provide a message otherwise an editor pops up and will block the build * netdata/packaging: on the latest code case go all the way host level operations * netdata/packaging: [ci skip] Do not modify version, no longer need it because we properly generated the package with the right version * netdata/packaging: [ci skip] fix sensors line, you missed the Recommends keyword * netdata/packaging: Some code style (remove tabification from some tags) and also remove Recommends, we start with required packages for build and runtime and then we document further needs * netdata/packaging: [ci skip] Make sure you get epel in there, its needed * netdata/packaging: [ci skip] Fix bogus date * netdata/packaging: [ci skip] add these packages to include functionality * netdata/packaging: [ci skip] more fine grained dependency handling * netdata/packaging: [ci skip] Dependency hell - do not depend on libnetacctfilter if on el/7 * netdata/packaging: [ci skip] Be serious, that is not what you do when building the package silly * netdata/packaging: [ci skip] define directory attributes too * netdata/packaging: [ci skip] mystery unfold - comment out as we need to figure out how to handle missing directories that our installer creates if necessary * netdata/packaging: [ci skip] Make sure you properly set deployment repo based on commit message * netdata/packaging: [ci skip] Install these packages for specific versions, remove optimisations for now * netdata/packaging: [ci skip] Make package yanking flexible, so that we can manage both netdata and netdata-edge cleanup properly * netdata/packaging: [ci skip] Actually, set user at travis layer and let the script consume it only. We need to be sure the same user is used on yanking and the deployment process * netdata/packaging: [ci skip] wow pkatsoul * netdata/packaging: Dont forget to install some of the enabled plugins * netdata/packaging: nfacct.plugin not really working on rhel, disable temporarily * netdata/packaging: include installed directories to package * netdata/packaging: [ci skip] nits * netdata/packaging: fixes * netdata/packaging: [ci skip] dont add ghost files * netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there * netdata/packaging: [ci skip] Extreme - override _libexecdir macro * Revert "netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there" This reverts commit 320102c96284e4622266f6f089d6ce87319976f3. That wasnt really the problem here * netdata/packaging: [ci skip] Include contents of dir here * netdata/packaging: fixes * netdata/packaging: [ci skip] Fixes and additions - Tighter permissions for some files - Introduce go.d plugin install (likely broken like this, dont recall if bash style code is fine here) - Raise the path overrides to the spec level, otherwise we build with the overrides and package with the defaults * netdata/packaging: [ci skip] Missed an invalid variable. These files are under our current path, no need for complexity * netdata/packaging: [ci skip] bring sha method onboard * netdata/packaging: [ci skip] Wrong path provided, should be under build root * netdata/packaging: [ci skip] Add registry directory * netdata/packaging: [ci skip] add missing config directory definitions * netdata/packaging: [ci skip] Fix missing dirs * netdata/packaging:[ci fix] hos * netdata/packaging: [ci skip] Fixes and additions - Change versioning to v1.15.0.114 from v1.15.0114 - Add CUPS, Xenstat, json-c * netdata/packaging: [ci skip] fix package dependencies on the builder setup, otherwise spec will fail * netdata/packaging: [ci skip] limit xenstat to suse and fedora for now * netdata/packaging: [ci skip] separate fedora and suse cases, unfortunately suse has different package names.... * netdata/packaging: [ci skip] yajl is not the same package everywhere, of course * netdata/packagin: [ci skip] skip xenstat for now * netdata/packaging: [ci skip] remove the vvvvvvvvv * netdata/packaging: [ci skip] one more fix attempt * netdata/packaging: [ci skip] Spec file extraction is different when building from stable. We *must* fetch it from the tarball rather than the local one * netdata/packaging: [ci skip] spec_file defined on all cases, latest or stable. Also move latest spec file copy after make dist operation, that is where is suppose to be * netdata/packaging: [ci skip] Tag source with the local version, as we build upon the very latest * netdata/packaging: oopsie -- remove json-c from that place, it was forgotten * netdata/packaging: fix packaging, even though devel is consistent between fedora and suse, the binary one is not .... (also fix default perms to be root:netdata rather root:root) * netdata/packaging: Suse love - again, libuuid-devel same, but libuuid is named libuuid1 on suse...... * netdata/packaging: [ci skip] libcap same.... * netdata/packaging: [ci skip] use the noreplace directive for the configuration files * netdata/packaging: [ci skip] Bring back master as the triggering repository * netdata/packaging: [ci skip] attempt to enable/disable service where necessary. Default preset action requires further setup, so we override that * Revert "netdata/packaging: [ci skip] Bring back master as the triggering repository" This reverts commit 9b25a622dc5f12b1539f6863bab52d7bb225fd8d. ** Reverting as we need to test further the service enable action ** * netdata/packaging: [ci skip] revert this change - not the right way, we have empty files * netdata/packaging: [ci skip] Add daemon-reload option, to make sure systemd learns about the newly installed service * netdata/packaging: [ci skip] Attempt to silence codacy by factoring out the few small methods for common usage, then kill directories to reduce complexity adn thats it * netdata/packaging: [ci skip] Just making sure codacy reprocess everything * netdata/packaging: [ci skip] missed one adjustment * netdata/packaging: python style - print shouldnt have space before open parenthesis. Also, add restart on all cases on the spec file * netdata/packaging: [ci skip] fix syntax * netdata/packaging: [ci skip] syntax fixes 2 * netdata/packaging: [ci skip] another miss * netdata/packaging: [ci skip] You need to explicitly trigger a restart, apparently * netdata/packaging: [ci skip] override packaging user definition temporarily, to get things going on testing
2019-07-03 09:18:17 +02:00
# ###########################################################
# Install netdata service
install -m 755 -d "${RPM_BUILD_ROOT}%{_unitdir}"
%if 0%{?centos_ver} != 7 && 0%{?amazon_linux} != 2
install -m 644 -p "%{__cmake_builddir}/system/systemd/%{name}.service" "${RPM_BUILD_ROOT}%{_unitdir}/%{name}.service"
%else
install -m 644 -p "%{__cmake_builddir}/system/systemd/%{name}.service.v235" "${RPM_BUILD_ROOT}%{_unitdir}/%{name}.service"
%endif
install -m 755 -d "${RPM_BUILD_ROOT}%{_presetdir}"
install -m 644 -p "system/systemd/50-%{name}.preset" "${RPM_BUILD_ROOT}%{_presetdir}/50-%{name}.preset"
2016-07-26 15:30:49 +02:00
%pre
netdata/packaging: Netdata binary packages generation - spec file refinement, support for nightlies (RPM) (#6369) Detailed list of changes: * netdata/packaging: First round of netdata.spec refactoring - package dependencies - Remove freeipmi/nfacct plugin flags. We auto-detect all plugins by decision - Start refactor of package dependencies - Add missing dependencies, with respect to distro peculiarities - Adjust existing dependencies, so that distro-specific package names is applied * netdata/packaging: add packaging trigger mechanism on binary-packages-specfile-cleanup to help testing * netdata/packaging: WIP - Allow building nightly versions for RPM (Still investigating the right version scheme) * netdata/packaging: Attempt to fix syntax errors - wow travis, mercy * netdata/packaging: tiny nits and fixes 1) there was a syntax error in version definition 2) bring default deploy repo name at the top, then overwrite when latest is published 3) Leave a comment * netdata/packaging: Move these core package requirements to the right section * netdata/packaging: libuv requires >= 1, missed to add that on devel libs * netdata/packaging: some comments, also when you put logrotate in our conf directory, link it to actual log rotate * netdata/packaging: Adjust configure options on spec file (align with netdata-installer.sh) * netdata/packaging: In order to properly support packaging both latest and stable releases, you need to star that extraction part, folder name contains the version with the hash that we cant tell * netdata/packaging: until we fix versioning, bring the original unprocessed spec file and pass the version we like in * netdata/packaging: fix version string in the spec file * netdata/packaging: Replace source path, we need to work with whatever we downloaded (to be refined) * netdata/packaging: [ci skip] you mixed the paths, reverse them * netdata/packaging: [ci skip] attempt to fix source path when needed * netdata/packaging: fixes and nits 1) generalize the spec file refinement method 2) Do both replacement that way 3) Adjust file names and paths * netdata/packaging: Replace Source0 explicitly and also make sure you remove extra new lines that may confuse the replacement later * netdata/packaging: [ci skip] move env outside, add some more log * netdata/packaging: [ci skip] adjust logic of replacing tag lines in spec file * netdata/packaging: [ci skip] Alas, fetch the archive, rename the structure to the new version, repack and proceed * netdata/packaging: [ci skip] Extract to specific path * netdata/packaging: [ci skip] replace problematic tar call with the respective pythonized one * netdata/packaging: [ci skip] Add new friendly octal format for chmod * netdata/packaging: [ci skip] more checks * netdata/packaging: [ci skip] dont chmod, chown the whole folder after extraction * netdata/packaging: nit * netdata/packaging: [ci skip] attempt to fix permissions differently * netdata/packaging: [ci skip] Another hack, attempt to fix permissions on the host directly * netdata/packaging: [ci skip] fine, do the move also on the host, pointless to run all through the container * netdata/packaging: [ci skip] Do the move through the container. Also, move a more specific folder * netdata/packaging: [ci skip] move as w00t * netdata/packaging: [ci skip] fix * netdata/packaging: sync permissions handling, round two * netdata/packaging: scratch those hacks, we should do latest differently * netdata/packaging: [ci skip] Set up rpm version string depending on whether we are on latest or not * netdata/packaging: [ci skip] Branch the code here, latest build up should be on the commit rather the tar files * netdata/packaging: Attempt to handle latest version build up * netdata/packaging: [ci skip] Dont continue processing if the file was not generated. Also do the tagging before autoreconf * netdata/packaging: [ci skip] fixes and nits * netdata/packaging: [ci skip] When doing annotated tags, you need to provide a message otherwise an editor pops up and will block the build * netdata/packaging: on the latest code case go all the way host level operations * netdata/packaging: [ci skip] Do not modify version, no longer need it because we properly generated the package with the right version * netdata/packaging: [ci skip] fix sensors line, you missed the Recommends keyword * netdata/packaging: Some code style (remove tabification from some tags) and also remove Recommends, we start with required packages for build and runtime and then we document further needs * netdata/packaging: [ci skip] Make sure you get epel in there, its needed * netdata/packaging: [ci skip] Fix bogus date * netdata/packaging: [ci skip] add these packages to include functionality * netdata/packaging: [ci skip] more fine grained dependency handling * netdata/packaging: [ci skip] Dependency hell - do not depend on libnetacctfilter if on el/7 * netdata/packaging: [ci skip] Be serious, that is not what you do when building the package silly * netdata/packaging: [ci skip] define directory attributes too * netdata/packaging: [ci skip] mystery unfold - comment out as we need to figure out how to handle missing directories that our installer creates if necessary * netdata/packaging: [ci skip] Make sure you properly set deployment repo based on commit message * netdata/packaging: [ci skip] Install these packages for specific versions, remove optimisations for now * netdata/packaging: [ci skip] Make package yanking flexible, so that we can manage both netdata and netdata-edge cleanup properly * netdata/packaging: [ci skip] Actually, set user at travis layer and let the script consume it only. We need to be sure the same user is used on yanking and the deployment process * netdata/packaging: [ci skip] wow pkatsoul * netdata/packaging: Dont forget to install some of the enabled plugins * netdata/packaging: nfacct.plugin not really working on rhel, disable temporarily * netdata/packaging: include installed directories to package * netdata/packaging: [ci skip] nits * netdata/packaging: fixes * netdata/packaging: [ci skip] dont add ghost files * netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there * netdata/packaging: [ci skip] Extreme - override _libexecdir macro * Revert "netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there" This reverts commit 320102c96284e4622266f6f089d6ce87319976f3. That wasnt really the problem here * netdata/packaging: [ci skip] Include contents of dir here * netdata/packaging: fixes * netdata/packaging: [ci skip] Fixes and additions - Tighter permissions for some files - Introduce go.d plugin install (likely broken like this, dont recall if bash style code is fine here) - Raise the path overrides to the spec level, otherwise we build with the overrides and package with the defaults * netdata/packaging: [ci skip] Missed an invalid variable. These files are under our current path, no need for complexity * netdata/packaging: [ci skip] bring sha method onboard * netdata/packaging: [ci skip] Wrong path provided, should be under build root * netdata/packaging: [ci skip] Add registry directory * netdata/packaging: [ci skip] add missing config directory definitions * netdata/packaging: [ci skip] Fix missing dirs * netdata/packaging:[ci fix] hos * netdata/packaging: [ci skip] Fixes and additions - Change versioning to v1.15.0.114 from v1.15.0114 - Add CUPS, Xenstat, json-c * netdata/packaging: [ci skip] fix package dependencies on the builder setup, otherwise spec will fail * netdata/packaging: [ci skip] limit xenstat to suse and fedora for now * netdata/packaging: [ci skip] separate fedora and suse cases, unfortunately suse has different package names.... * netdata/packaging: [ci skip] yajl is not the same package everywhere, of course * netdata/packagin: [ci skip] skip xenstat for now * netdata/packaging: [ci skip] remove the vvvvvvvvv * netdata/packaging: [ci skip] one more fix attempt * netdata/packaging: [ci skip] Spec file extraction is different when building from stable. We *must* fetch it from the tarball rather than the local one * netdata/packaging: [ci skip] spec_file defined on all cases, latest or stable. Also move latest spec file copy after make dist operation, that is where is suppose to be * netdata/packaging: [ci skip] Tag source with the local version, as we build upon the very latest * netdata/packaging: oopsie -- remove json-c from that place, it was forgotten * netdata/packaging: fix packaging, even though devel is consistent between fedora and suse, the binary one is not .... (also fix default perms to be root:netdata rather root:root) * netdata/packaging: Suse love - again, libuuid-devel same, but libuuid is named libuuid1 on suse...... * netdata/packaging: [ci skip] libcap same.... * netdata/packaging: [ci skip] use the noreplace directive for the configuration files * netdata/packaging: [ci skip] Bring back master as the triggering repository * netdata/packaging: [ci skip] attempt to enable/disable service where necessary. Default preset action requires further setup, so we override that * Revert "netdata/packaging: [ci skip] Bring back master as the triggering repository" This reverts commit 9b25a622dc5f12b1539f6863bab52d7bb225fd8d. ** Reverting as we need to test further the service enable action ** * netdata/packaging: [ci skip] revert this change - not the right way, we have empty files * netdata/packaging: [ci skip] Add daemon-reload option, to make sure systemd learns about the newly installed service * netdata/packaging: [ci skip] Attempt to silence codacy by factoring out the few small methods for common usage, then kill directories to reduce complexity adn thats it * netdata/packaging: [ci skip] Just making sure codacy reprocess everything * netdata/packaging: [ci skip] missed one adjustment * netdata/packaging: python style - print shouldnt have space before open parenthesis. Also, add restart on all cases on the spec file * netdata/packaging: [ci skip] fix syntax * netdata/packaging: [ci skip] syntax fixes 2 * netdata/packaging: [ci skip] another miss * netdata/packaging: [ci skip] You need to explicitly trigger a restart, apparently * netdata/packaging: [ci skip] override packaging user definition temporarily, to get things going on testing
2019-07-03 09:18:17 +02:00
if ! getent group %{name} > /dev/null; then
groupadd --system %{name}
2022-07-01 16:37:56 +02:00
fi
if ! getent passwd %{name} > /dev/null; then
useradd --system -g %{name} --home %{contentdir} --no-create-home -s /sbin/nologin -c "Netdata pseudo user" %{name}
2022-07-01 16:37:56 +02:00
fi
# I am not sure that the corresponding group names are exactly the same as in Debian, but we should start somewhere, shouldn't we?
for item in docker nginx varnish haproxy adm nsd proxy squid ceph nobody I2C; do
if getent group $item > /dev/null 2>&1; then
usermod -a -G ${item} %{name}
2022-07-01 16:37:56 +02:00
fi
done
2016-07-26 15:30:49 +02:00
%post
%if 0%{?suse_version}
%service_add_post %{name}.service
%else
%systemd_post %{name}.service
%endif
2016-07-26 15:30:49 +02:00
%preun
%if 0%{?suse_version}
%service_del_preun %{name}.service
%else
%systemd_preun %{name}.service
%endif
2016-07-29 01:30:36 +02:00
%postun
%if 0%{?suse_version}
%service_del_postun %{name}.service
%else
%systemd_postun_with_restart %{name}.service
%endif
%clean
rm -rf "${RPM_BUILD_ROOT}"
%files
%doc README.md
%config(noreplace) %{_sysconfdir}/%{name}/%{name}.conf
%config(noreplace) %{_sysconfdir}/%{name}/%{name}-updater.conf
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%attr(0755,root,netdata) %{_sysconfdir}/%{name}/edit-config
%attr(0644,root,netdata) %{_sysconfdir}/%{name}/.install-type
%dir %{_sysconfdir}/%{name}/health.d
%dir %{_sysconfdir}/%{name}/statsd.d
netdata/packaging: Netdata binary packages generation - spec file refinement, support for nightlies (RPM) (#6369) Detailed list of changes: * netdata/packaging: First round of netdata.spec refactoring - package dependencies - Remove freeipmi/nfacct plugin flags. We auto-detect all plugins by decision - Start refactor of package dependencies - Add missing dependencies, with respect to distro peculiarities - Adjust existing dependencies, so that distro-specific package names is applied * netdata/packaging: add packaging trigger mechanism on binary-packages-specfile-cleanup to help testing * netdata/packaging: WIP - Allow building nightly versions for RPM (Still investigating the right version scheme) * netdata/packaging: Attempt to fix syntax errors - wow travis, mercy * netdata/packaging: tiny nits and fixes 1) there was a syntax error in version definition 2) bring default deploy repo name at the top, then overwrite when latest is published 3) Leave a comment * netdata/packaging: Move these core package requirements to the right section * netdata/packaging: libuv requires >= 1, missed to add that on devel libs * netdata/packaging: some comments, also when you put logrotate in our conf directory, link it to actual log rotate * netdata/packaging: Adjust configure options on spec file (align with netdata-installer.sh) * netdata/packaging: In order to properly support packaging both latest and stable releases, you need to star that extraction part, folder name contains the version with the hash that we cant tell * netdata/packaging: until we fix versioning, bring the original unprocessed spec file and pass the version we like in * netdata/packaging: fix version string in the spec file * netdata/packaging: Replace source path, we need to work with whatever we downloaded (to be refined) * netdata/packaging: [ci skip] you mixed the paths, reverse them * netdata/packaging: [ci skip] attempt to fix source path when needed * netdata/packaging: fixes and nits 1) generalize the spec file refinement method 2) Do both replacement that way 3) Adjust file names and paths * netdata/packaging: Replace Source0 explicitly and also make sure you remove extra new lines that may confuse the replacement later * netdata/packaging: [ci skip] move env outside, add some more log * netdata/packaging: [ci skip] adjust logic of replacing tag lines in spec file * netdata/packaging: [ci skip] Alas, fetch the archive, rename the structure to the new version, repack and proceed * netdata/packaging: [ci skip] Extract to specific path * netdata/packaging: [ci skip] replace problematic tar call with the respective pythonized one * netdata/packaging: [ci skip] Add new friendly octal format for chmod * netdata/packaging: [ci skip] more checks * netdata/packaging: [ci skip] dont chmod, chown the whole folder after extraction * netdata/packaging: nit * netdata/packaging: [ci skip] attempt to fix permissions differently * netdata/packaging: [ci skip] Another hack, attempt to fix permissions on the host directly * netdata/packaging: [ci skip] fine, do the move also on the host, pointless to run all through the container * netdata/packaging: [ci skip] Do the move through the container. Also, move a more specific folder * netdata/packaging: [ci skip] move as w00t * netdata/packaging: [ci skip] fix * netdata/packaging: sync permissions handling, round two * netdata/packaging: scratch those hacks, we should do latest differently * netdata/packaging: [ci skip] Set up rpm version string depending on whether we are on latest or not * netdata/packaging: [ci skip] Branch the code here, latest build up should be on the commit rather the tar files * netdata/packaging: Attempt to handle latest version build up * netdata/packaging: [ci skip] Dont continue processing if the file was not generated. Also do the tagging before autoreconf * netdata/packaging: [ci skip] fixes and nits * netdata/packaging: [ci skip] When doing annotated tags, you need to provide a message otherwise an editor pops up and will block the build * netdata/packaging: on the latest code case go all the way host level operations * netdata/packaging: [ci skip] Do not modify version, no longer need it because we properly generated the package with the right version * netdata/packaging: [ci skip] fix sensors line, you missed the Recommends keyword * netdata/packaging: Some code style (remove tabification from some tags) and also remove Recommends, we start with required packages for build and runtime and then we document further needs * netdata/packaging: [ci skip] Make sure you get epel in there, its needed * netdata/packaging: [ci skip] Fix bogus date * netdata/packaging: [ci skip] add these packages to include functionality * netdata/packaging: [ci skip] more fine grained dependency handling * netdata/packaging: [ci skip] Dependency hell - do not depend on libnetacctfilter if on el/7 * netdata/packaging: [ci skip] Be serious, that is not what you do when building the package silly * netdata/packaging: [ci skip] define directory attributes too * netdata/packaging: [ci skip] mystery unfold - comment out as we need to figure out how to handle missing directories that our installer creates if necessary * netdata/packaging: [ci skip] Make sure you properly set deployment repo based on commit message * netdata/packaging: [ci skip] Install these packages for specific versions, remove optimisations for now * netdata/packaging: [ci skip] Make package yanking flexible, so that we can manage both netdata and netdata-edge cleanup properly * netdata/packaging: [ci skip] Actually, set user at travis layer and let the script consume it only. We need to be sure the same user is used on yanking and the deployment process * netdata/packaging: [ci skip] wow pkatsoul * netdata/packaging: Dont forget to install some of the enabled plugins * netdata/packaging: nfacct.plugin not really working on rhel, disable temporarily * netdata/packaging: include installed directories to package * netdata/packaging: [ci skip] nits * netdata/packaging: fixes * netdata/packaging: [ci skip] dont add ghost files * netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there * netdata/packaging: [ci skip] Extreme - override _libexecdir macro * Revert "netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there" This reverts commit 320102c96284e4622266f6f089d6ce87319976f3. That wasnt really the problem here * netdata/packaging: [ci skip] Include contents of dir here * netdata/packaging: fixes * netdata/packaging: [ci skip] Fixes and additions - Tighter permissions for some files - Introduce go.d plugin install (likely broken like this, dont recall if bash style code is fine here) - Raise the path overrides to the spec level, otherwise we build with the overrides and package with the defaults * netdata/packaging: [ci skip] Missed an invalid variable. These files are under our current path, no need for complexity * netdata/packaging: [ci skip] bring sha method onboard * netdata/packaging: [ci skip] Wrong path provided, should be under build root * netdata/packaging: [ci skip] Add registry directory * netdata/packaging: [ci skip] add missing config directory definitions * netdata/packaging: [ci skip] Fix missing dirs * netdata/packaging:[ci fix] hos * netdata/packaging: [ci skip] Fixes and additions - Change versioning to v1.15.0.114 from v1.15.0114 - Add CUPS, Xenstat, json-c * netdata/packaging: [ci skip] fix package dependencies on the builder setup, otherwise spec will fail * netdata/packaging: [ci skip] limit xenstat to suse and fedora for now * netdata/packaging: [ci skip] separate fedora and suse cases, unfortunately suse has different package names.... * netdata/packaging: [ci skip] yajl is not the same package everywhere, of course * netdata/packagin: [ci skip] skip xenstat for now * netdata/packaging: [ci skip] remove the vvvvvvvvv * netdata/packaging: [ci skip] one more fix attempt * netdata/packaging: [ci skip] Spec file extraction is different when building from stable. We *must* fetch it from the tarball rather than the local one * netdata/packaging: [ci skip] spec_file defined on all cases, latest or stable. Also move latest spec file copy after make dist operation, that is where is suppose to be * netdata/packaging: [ci skip] Tag source with the local version, as we build upon the very latest * netdata/packaging: oopsie -- remove json-c from that place, it was forgotten * netdata/packaging: fix packaging, even though devel is consistent between fedora and suse, the binary one is not .... (also fix default perms to be root:netdata rather root:root) * netdata/packaging: Suse love - again, libuuid-devel same, but libuuid is named libuuid1 on suse...... * netdata/packaging: [ci skip] libcap same.... * netdata/packaging: [ci skip] use the noreplace directive for the configuration files * netdata/packaging: [ci skip] Bring back master as the triggering repository * netdata/packaging: [ci skip] attempt to enable/disable service where necessary. Default preset action requires further setup, so we override that * Revert "netdata/packaging: [ci skip] Bring back master as the triggering repository" This reverts commit 9b25a622dc5f12b1539f6863bab52d7bb225fd8d. ** Reverting as we need to test further the service enable action ** * netdata/packaging: [ci skip] revert this change - not the right way, we have empty files * netdata/packaging: [ci skip] Add daemon-reload option, to make sure systemd learns about the newly installed service * netdata/packaging: [ci skip] Attempt to silence codacy by factoring out the few small methods for common usage, then kill directories to reduce complexity adn thats it * netdata/packaging: [ci skip] Just making sure codacy reprocess everything * netdata/packaging: [ci skip] missed one adjustment * netdata/packaging: python style - print shouldnt have space before open parenthesis. Also, add restart on all cases on the spec file * netdata/packaging: [ci skip] fix syntax * netdata/packaging: [ci skip] syntax fixes 2 * netdata/packaging: [ci skip] another miss * netdata/packaging: [ci skip] You need to explicitly trigger a restart, apparently * netdata/packaging: [ci skip] override packaging user definition temporarily, to get things going on testing
2019-07-03 09:18:17 +02:00
%config(noreplace) %{_sysconfdir}/logrotate.d/%{name}
%{_libdir}/%{name}
%{_sbindir}/%{name}
%{_sbindir}/netdatacli
New logging layer (#16357) * cleanup of logging - wip * first working iteration * add errno annotator * replace old logging functions with netdata_logger() * cleanup * update error_limit * fix remanining error_limit references * work on fatal() * started working on structured logs * full cleanup * default logging to files; fix all plugins initialization * fix formatting of numbers * cleanup and reorg * fix coverity issues * cleanup obsolete code * fix formatting of numbers * fix log rotation * fix for older systems * add detection of systemd journal via stderr * finished on access.log * remove left-over transport * do not add empty fields to the logs * journal get compact uuids; X-Transaction-ID header is added in web responses * allow compiling on systems without memfd sealing * added libnetdata/uuid directory * move datetime formatters to libnetdata * add missing files * link the makefiles in libnetdata * added uuid_parse_flexi() to parse UUIDs with and without hyphens; the web server now read X-Transaction-ID and uses it for functions and web responses * added stream receiver, sender, proc plugin and pluginsd log stack * iso8601 advanced usage; line_splitter module in libnetdata; code cleanup * add message ids to streaming inbound and outbound connections * cleanup line_splitter between lines to avoid logging garbage; when killing children, kill them with SIGABRT if internal checks is enabled * send SIGABRT to external plugins only if we are not shutting down * fix cross cleanup in pluginsd parser * fatal when there is a stack error in logs * compile netdata with -fexceptions * do not kill external plugins with SIGABRT * metasync info logs to debug level * added severity to logs * added json output; added options per log output; added documentation; fixed issues mentioned * allow memfd only on linux * moved journal low level functions to journal.c/h * move health logs to daemon.log with proper priorities * fixed a couple of bugs; health log in journal * updated docs * systemd-cat-native command to push structured logs to journal from the command line * fix makefiles * restored NETDATA_LOG_SEVERITY_LEVEL * fix makefiles * systemd-cat-native can also work as the logger of Netdata scripts * do not require a socket to systemd-journal to log-as-netdata * alarm notify logs in native format * properly compare log ids * fatals log alerts; alarm-notify.sh working * fix overflow warning * alarm-notify.sh now logs the request (command line) * anotate external plugins logs with the function cmd they run * added context, component and type to alarm-notify.sh; shell sanitization removes control character and characters that may be expanded by bash * reformatted alarm-notify logs * unify cgroup-network-helper.sh * added quotes around params * charts.d.plugin switched logging to journal native * quotes for logfmt * unify the status codes of streaming receivers and senders * alarm-notify: dont log anything, if there is nothing to do * all external plugins log to stderr when running outside netdata; alarm-notify now shows an error when notifications menthod are needed but are not available * migrate cgroup-name.sh to new logging * systemd-cat-native now supports messages with newlines * socket.c logs use priority * cleanup log field types * inherit the systemd set INVOCATION_ID if found * allow systemd-cat-native to send messages to a systemd-journal-remote URL * log2journal command that can convert structured logs to journal export format * various fixes and documentation of log2journal * updated log2journal docs * updated log2journal docs * updated documentation of fields * allow compiling without libcurl * do not use socket as format string * added version information to newly added tools * updated documentation and help messages * fix the namespace socket path * print errno with error * do not timeout * updated docs * updated docs * updated docs * log2journal updated docs and params * when talking to a remote journal, systemd-cat-native batches the messages * enable lz4 compression for systemd-cat-native when sending messages to a systemd-journal-remote * Revert "enable lz4 compression for systemd-cat-native when sending messages to a systemd-journal-remote" This reverts commit b079d53c11f6687cd64d804fdd7b24c0492bf245. * note about uncompressed traffic * log2journal: code reorg and cleanup to make modular * finished rewriting log2journal * more comments * rewriting rules support * increased limits * updated docs * updated docs * fix old log call * use journal only when stderr is connected to journal * update netdata.spec for libcurl, libpcre2 and log2journal * pcre2-devel * do not require pcre2 in centos < 8, amazonlinux < 2023, open suse * log2journal only on systems pcre2 is available * ignore log2journal in .gitignore * avoid log2journal on centos 7, amazonlinux 2 and opensuse * add pcre2-8 to static build * undo last commit * Bundle to static Signed-off-by: Tasos Katsoulas <tasos@netdata.cloud> * Add build deps for deb packages Signed-off-by: Tasos Katsoulas <tasos@netdata.cloud> * Add dependencies; build from source Signed-off-by: Tasos Katsoulas <tasos@netdata.cloud> * Test build for amazon linux and centos expect to fail for suse Signed-off-by: Tasos Katsoulas <tasos@netdata.cloud> * fix minor oversight Signed-off-by: Tasos Katsoulas <tasos@netdata.cloud> * Reorg code * Add the install from source (deps) as a TODO * Not enable the build on suse ecosystem Signed-off-by: Tasos Katsoulas <tasos@netdata.cloud> --------- Signed-off-by: Tasos Katsoulas <tasos@netdata.cloud> Co-authored-by: Tasos Katsoulas <tasos@netdata.cloud>
2023-11-22 09:27:25 +01:00
%if 0%{?suse_version}
# log2journal is not available on these systems
%else
%{_sbindir}/log2journal
%endif
%{_sbindir}/systemd-cat-native
%{_sbindir}/%{name}-claim.sh
%{_unitdir}/%{name}.service
%{_presetdir}/50-%{name}.preset
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%dir %{_libexecdir}/%{name}
netdata/packaging: Netdata binary packages generation - spec file refinement, support for nightlies (RPM) (#6369) Detailed list of changes: * netdata/packaging: First round of netdata.spec refactoring - package dependencies - Remove freeipmi/nfacct plugin flags. We auto-detect all plugins by decision - Start refactor of package dependencies - Add missing dependencies, with respect to distro peculiarities - Adjust existing dependencies, so that distro-specific package names is applied * netdata/packaging: add packaging trigger mechanism on binary-packages-specfile-cleanup to help testing * netdata/packaging: WIP - Allow building nightly versions for RPM (Still investigating the right version scheme) * netdata/packaging: Attempt to fix syntax errors - wow travis, mercy * netdata/packaging: tiny nits and fixes 1) there was a syntax error in version definition 2) bring default deploy repo name at the top, then overwrite when latest is published 3) Leave a comment * netdata/packaging: Move these core package requirements to the right section * netdata/packaging: libuv requires >= 1, missed to add that on devel libs * netdata/packaging: some comments, also when you put logrotate in our conf directory, link it to actual log rotate * netdata/packaging: Adjust configure options on spec file (align with netdata-installer.sh) * netdata/packaging: In order to properly support packaging both latest and stable releases, you need to star that extraction part, folder name contains the version with the hash that we cant tell * netdata/packaging: until we fix versioning, bring the original unprocessed spec file and pass the version we like in * netdata/packaging: fix version string in the spec file * netdata/packaging: Replace source path, we need to work with whatever we downloaded (to be refined) * netdata/packaging: [ci skip] you mixed the paths, reverse them * netdata/packaging: [ci skip] attempt to fix source path when needed * netdata/packaging: fixes and nits 1) generalize the spec file refinement method 2) Do both replacement that way 3) Adjust file names and paths * netdata/packaging: Replace Source0 explicitly and also make sure you remove extra new lines that may confuse the replacement later * netdata/packaging: [ci skip] move env outside, add some more log * netdata/packaging: [ci skip] adjust logic of replacing tag lines in spec file * netdata/packaging: [ci skip] Alas, fetch the archive, rename the structure to the new version, repack and proceed * netdata/packaging: [ci skip] Extract to specific path * netdata/packaging: [ci skip] replace problematic tar call with the respective pythonized one * netdata/packaging: [ci skip] Add new friendly octal format for chmod * netdata/packaging: [ci skip] more checks * netdata/packaging: [ci skip] dont chmod, chown the whole folder after extraction * netdata/packaging: nit * netdata/packaging: [ci skip] attempt to fix permissions differently * netdata/packaging: [ci skip] Another hack, attempt to fix permissions on the host directly * netdata/packaging: [ci skip] fine, do the move also on the host, pointless to run all through the container * netdata/packaging: [ci skip] Do the move through the container. Also, move a more specific folder * netdata/packaging: [ci skip] move as w00t * netdata/packaging: [ci skip] fix * netdata/packaging: sync permissions handling, round two * netdata/packaging: scratch those hacks, we should do latest differently * netdata/packaging: [ci skip] Set up rpm version string depending on whether we are on latest or not * netdata/packaging: [ci skip] Branch the code here, latest build up should be on the commit rather the tar files * netdata/packaging: Attempt to handle latest version build up * netdata/packaging: [ci skip] Dont continue processing if the file was not generated. Also do the tagging before autoreconf * netdata/packaging: [ci skip] fixes and nits * netdata/packaging: [ci skip] When doing annotated tags, you need to provide a message otherwise an editor pops up and will block the build * netdata/packaging: on the latest code case go all the way host level operations * netdata/packaging: [ci skip] Do not modify version, no longer need it because we properly generated the package with the right version * netdata/packaging: [ci skip] fix sensors line, you missed the Recommends keyword * netdata/packaging: Some code style (remove tabification from some tags) and also remove Recommends, we start with required packages for build and runtime and then we document further needs * netdata/packaging: [ci skip] Make sure you get epel in there, its needed * netdata/packaging: [ci skip] Fix bogus date * netdata/packaging: [ci skip] add these packages to include functionality * netdata/packaging: [ci skip] more fine grained dependency handling * netdata/packaging: [ci skip] Dependency hell - do not depend on libnetacctfilter if on el/7 * netdata/packaging: [ci skip] Be serious, that is not what you do when building the package silly * netdata/packaging: [ci skip] define directory attributes too * netdata/packaging: [ci skip] mystery unfold - comment out as we need to figure out how to handle missing directories that our installer creates if necessary * netdata/packaging: [ci skip] Make sure you properly set deployment repo based on commit message * netdata/packaging: [ci skip] Install these packages for specific versions, remove optimisations for now * netdata/packaging: [ci skip] Make package yanking flexible, so that we can manage both netdata and netdata-edge cleanup properly * netdata/packaging: [ci skip] Actually, set user at travis layer and let the script consume it only. We need to be sure the same user is used on yanking and the deployment process * netdata/packaging: [ci skip] wow pkatsoul * netdata/packaging: Dont forget to install some of the enabled plugins * netdata/packaging: nfacct.plugin not really working on rhel, disable temporarily * netdata/packaging: include installed directories to package * netdata/packaging: [ci skip] nits * netdata/packaging: fixes * netdata/packaging: [ci skip] dont add ghost files * netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there * netdata/packaging: [ci skip] Extreme - override _libexecdir macro * Revert "netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there" This reverts commit 320102c96284e4622266f6f089d6ce87319976f3. That wasnt really the problem here * netdata/packaging: [ci skip] Include contents of dir here * netdata/packaging: fixes * netdata/packaging: [ci skip] Fixes and additions - Tighter permissions for some files - Introduce go.d plugin install (likely broken like this, dont recall if bash style code is fine here) - Raise the path overrides to the spec level, otherwise we build with the overrides and package with the defaults * netdata/packaging: [ci skip] Missed an invalid variable. These files are under our current path, no need for complexity * netdata/packaging: [ci skip] bring sha method onboard * netdata/packaging: [ci skip] Wrong path provided, should be under build root * netdata/packaging: [ci skip] Add registry directory * netdata/packaging: [ci skip] add missing config directory definitions * netdata/packaging: [ci skip] Fix missing dirs * netdata/packaging:[ci fix] hos * netdata/packaging: [ci skip] Fixes and additions - Change versioning to v1.15.0.114 from v1.15.0114 - Add CUPS, Xenstat, json-c * netdata/packaging: [ci skip] fix package dependencies on the builder setup, otherwise spec will fail * netdata/packaging: [ci skip] limit xenstat to suse and fedora for now * netdata/packaging: [ci skip] separate fedora and suse cases, unfortunately suse has different package names.... * netdata/packaging: [ci skip] yajl is not the same package everywhere, of course * netdata/packagin: [ci skip] skip xenstat for now * netdata/packaging: [ci skip] remove the vvvvvvvvv * netdata/packaging: [ci skip] one more fix attempt * netdata/packaging: [ci skip] Spec file extraction is different when building from stable. We *must* fetch it from the tarball rather than the local one * netdata/packaging: [ci skip] spec_file defined on all cases, latest or stable. Also move latest spec file copy after make dist operation, that is where is suppose to be * netdata/packaging: [ci skip] Tag source with the local version, as we build upon the very latest * netdata/packaging: oopsie -- remove json-c from that place, it was forgotten * netdata/packaging: fix packaging, even though devel is consistent between fedora and suse, the binary one is not .... (also fix default perms to be root:netdata rather root:root) * netdata/packaging: Suse love - again, libuuid-devel same, but libuuid is named libuuid1 on suse...... * netdata/packaging: [ci skip] libcap same.... * netdata/packaging: [ci skip] use the noreplace directive for the configuration files * netdata/packaging: [ci skip] Bring back master as the triggering repository * netdata/packaging: [ci skip] attempt to enable/disable service where necessary. Default preset action requires further setup, so we override that * Revert "netdata/packaging: [ci skip] Bring back master as the triggering repository" This reverts commit 9b25a622dc5f12b1539f6863bab52d7bb225fd8d. ** Reverting as we need to test further the service enable action ** * netdata/packaging: [ci skip] revert this change - not the right way, we have empty files * netdata/packaging: [ci skip] Add daemon-reload option, to make sure systemd learns about the newly installed service * netdata/packaging: [ci skip] Attempt to silence codacy by factoring out the few small methods for common usage, then kill directories to reduce complexity adn thats it * netdata/packaging: [ci skip] Just making sure codacy reprocess everything * netdata/packaging: [ci skip] missed one adjustment * netdata/packaging: python style - print shouldnt have space before open parenthesis. Also, add restart on all cases on the spec file * netdata/packaging: [ci skip] fix syntax * netdata/packaging: [ci skip] syntax fixes 2 * netdata/packaging: [ci skip] another miss * netdata/packaging: [ci skip] You need to explicitly trigger a restart, apparently * netdata/packaging: [ci skip] override packaging user definition temporarily, to get things going on testing
2019-07-03 09:18:17 +02:00
%dir %{_libexecdir}/%{name}/plugins.d
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%defattr(0750,root,netdata,0750)
%{_libexecdir}/%{name}/install-service.sh
%{_libexecdir}/%{name}/%{name}-updater.sh
%{_libexecdir}/%{name}/%{name}-uninstaller.sh
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%{_libexecdir}/%{name}/plugins.d/acl.sh
%{_libexecdir}/%{name}/plugins.d/alarm.sh
%{_libexecdir}/%{name}/plugins.d/alarm-email.sh
%{_libexecdir}/%{name}/plugins.d/alarm-notify.sh
%{_libexecdir}/%{name}/plugins.d/alarm-test.sh
%{_libexecdir}/%{name}/plugins.d/anonymous-statistics.sh
%{_libexecdir}/%{name}/plugins.d/cgroup-name.sh
%{_libexecdir}/%{name}/plugins.d/get-kubernetes-labels.sh
%{_libexecdir}/%{name}/plugins.d/health-cmdapi-test.sh
%{_libexecdir}/%{name}/plugins.d/ioping.plugin
%{_libexecdir}/%{name}/plugins.d/loopsleepms.sh.inc
%{_libexecdir}/%{name}/plugins.d/request.sh
%{_libexecdir}/%{name}/plugins.d/system-info.sh
%{_libexecdir}/%{name}/plugins.d/tc-qos-helper.sh
%{_libexecdir}/%{name}/plugins.d/template_dim.sh
%{_libexecdir}/%{name}/plugins.d/ebpf_thread_function.sh
netdata/packaging: Netdata binary packages generation - spec file refinement, support for nightlies (RPM) (#6369) Detailed list of changes: * netdata/packaging: First round of netdata.spec refactoring - package dependencies - Remove freeipmi/nfacct plugin flags. We auto-detect all plugins by decision - Start refactor of package dependencies - Add missing dependencies, with respect to distro peculiarities - Adjust existing dependencies, so that distro-specific package names is applied * netdata/packaging: add packaging trigger mechanism on binary-packages-specfile-cleanup to help testing * netdata/packaging: WIP - Allow building nightly versions for RPM (Still investigating the right version scheme) * netdata/packaging: Attempt to fix syntax errors - wow travis, mercy * netdata/packaging: tiny nits and fixes 1) there was a syntax error in version definition 2) bring default deploy repo name at the top, then overwrite when latest is published 3) Leave a comment * netdata/packaging: Move these core package requirements to the right section * netdata/packaging: libuv requires >= 1, missed to add that on devel libs * netdata/packaging: some comments, also when you put logrotate in our conf directory, link it to actual log rotate * netdata/packaging: Adjust configure options on spec file (align with netdata-installer.sh) * netdata/packaging: In order to properly support packaging both latest and stable releases, you need to star that extraction part, folder name contains the version with the hash that we cant tell * netdata/packaging: until we fix versioning, bring the original unprocessed spec file and pass the version we like in * netdata/packaging: fix version string in the spec file * netdata/packaging: Replace source path, we need to work with whatever we downloaded (to be refined) * netdata/packaging: [ci skip] you mixed the paths, reverse them * netdata/packaging: [ci skip] attempt to fix source path when needed * netdata/packaging: fixes and nits 1) generalize the spec file refinement method 2) Do both replacement that way 3) Adjust file names and paths * netdata/packaging: Replace Source0 explicitly and also make sure you remove extra new lines that may confuse the replacement later * netdata/packaging: [ci skip] move env outside, add some more log * netdata/packaging: [ci skip] adjust logic of replacing tag lines in spec file * netdata/packaging: [ci skip] Alas, fetch the archive, rename the structure to the new version, repack and proceed * netdata/packaging: [ci skip] Extract to specific path * netdata/packaging: [ci skip] replace problematic tar call with the respective pythonized one * netdata/packaging: [ci skip] Add new friendly octal format for chmod * netdata/packaging: [ci skip] more checks * netdata/packaging: [ci skip] dont chmod, chown the whole folder after extraction * netdata/packaging: nit * netdata/packaging: [ci skip] attempt to fix permissions differently * netdata/packaging: [ci skip] Another hack, attempt to fix permissions on the host directly * netdata/packaging: [ci skip] fine, do the move also on the host, pointless to run all through the container * netdata/packaging: [ci skip] Do the move through the container. Also, move a more specific folder * netdata/packaging: [ci skip] move as w00t * netdata/packaging: [ci skip] fix * netdata/packaging: sync permissions handling, round two * netdata/packaging: scratch those hacks, we should do latest differently * netdata/packaging: [ci skip] Set up rpm version string depending on whether we are on latest or not * netdata/packaging: [ci skip] Branch the code here, latest build up should be on the commit rather the tar files * netdata/packaging: Attempt to handle latest version build up * netdata/packaging: [ci skip] Dont continue processing if the file was not generated. Also do the tagging before autoreconf * netdata/packaging: [ci skip] fixes and nits * netdata/packaging: [ci skip] When doing annotated tags, you need to provide a message otherwise an editor pops up and will block the build * netdata/packaging: on the latest code case go all the way host level operations * netdata/packaging: [ci skip] Do not modify version, no longer need it because we properly generated the package with the right version * netdata/packaging: [ci skip] fix sensors line, you missed the Recommends keyword * netdata/packaging: Some code style (remove tabification from some tags) and also remove Recommends, we start with required packages for build and runtime and then we document further needs * netdata/packaging: [ci skip] Make sure you get epel in there, its needed * netdata/packaging: [ci skip] Fix bogus date * netdata/packaging: [ci skip] add these packages to include functionality * netdata/packaging: [ci skip] more fine grained dependency handling * netdata/packaging: [ci skip] Dependency hell - do not depend on libnetacctfilter if on el/7 * netdata/packaging: [ci skip] Be serious, that is not what you do when building the package silly * netdata/packaging: [ci skip] define directory attributes too * netdata/packaging: [ci skip] mystery unfold - comment out as we need to figure out how to handle missing directories that our installer creates if necessary * netdata/packaging: [ci skip] Make sure you properly set deployment repo based on commit message * netdata/packaging: [ci skip] Install these packages for specific versions, remove optimisations for now * netdata/packaging: [ci skip] Make package yanking flexible, so that we can manage both netdata and netdata-edge cleanup properly * netdata/packaging: [ci skip] Actually, set user at travis layer and let the script consume it only. We need to be sure the same user is used on yanking and the deployment process * netdata/packaging: [ci skip] wow pkatsoul * netdata/packaging: Dont forget to install some of the enabled plugins * netdata/packaging: nfacct.plugin not really working on rhel, disable temporarily * netdata/packaging: include installed directories to package * netdata/packaging: [ci skip] nits * netdata/packaging: fixes * netdata/packaging: [ci skip] dont add ghost files * netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there * netdata/packaging: [ci skip] Extreme - override _libexecdir macro * Revert "netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there" This reverts commit 320102c96284e4622266f6f089d6ce87319976f3. That wasnt really the problem here * netdata/packaging: [ci skip] Include contents of dir here * netdata/packaging: fixes * netdata/packaging: [ci skip] Fixes and additions - Tighter permissions for some files - Introduce go.d plugin install (likely broken like this, dont recall if bash style code is fine here) - Raise the path overrides to the spec level, otherwise we build with the overrides and package with the defaults * netdata/packaging: [ci skip] Missed an invalid variable. These files are under our current path, no need for complexity * netdata/packaging: [ci skip] bring sha method onboard * netdata/packaging: [ci skip] Wrong path provided, should be under build root * netdata/packaging: [ci skip] Add registry directory * netdata/packaging: [ci skip] add missing config directory definitions * netdata/packaging: [ci skip] Fix missing dirs * netdata/packaging:[ci fix] hos * netdata/packaging: [ci skip] Fixes and additions - Change versioning to v1.15.0.114 from v1.15.0114 - Add CUPS, Xenstat, json-c * netdata/packaging: [ci skip] fix package dependencies on the builder setup, otherwise spec will fail * netdata/packaging: [ci skip] limit xenstat to suse and fedora for now * netdata/packaging: [ci skip] separate fedora and suse cases, unfortunately suse has different package names.... * netdata/packaging: [ci skip] yajl is not the same package everywhere, of course * netdata/packagin: [ci skip] skip xenstat for now * netdata/packaging: [ci skip] remove the vvvvvvvvv * netdata/packaging: [ci skip] one more fix attempt * netdata/packaging: [ci skip] Spec file extraction is different when building from stable. We *must* fetch it from the tarball rather than the local one * netdata/packaging: [ci skip] spec_file defined on all cases, latest or stable. Also move latest spec file copy after make dist operation, that is where is suppose to be * netdata/packaging: [ci skip] Tag source with the local version, as we build upon the very latest * netdata/packaging: oopsie -- remove json-c from that place, it was forgotten * netdata/packaging: fix packaging, even though devel is consistent between fedora and suse, the binary one is not .... (also fix default perms to be root:netdata rather root:root) * netdata/packaging: Suse love - again, libuuid-devel same, but libuuid is named libuuid1 on suse...... * netdata/packaging: [ci skip] libcap same.... * netdata/packaging: [ci skip] use the noreplace directive for the configuration files * netdata/packaging: [ci skip] Bring back master as the triggering repository * netdata/packaging: [ci skip] attempt to enable/disable service where necessary. Default preset action requires further setup, so we override that * Revert "netdata/packaging: [ci skip] Bring back master as the triggering repository" This reverts commit 9b25a622dc5f12b1539f6863bab52d7bb225fd8d. ** Reverting as we need to test further the service enable action ** * netdata/packaging: [ci skip] revert this change - not the right way, we have empty files * netdata/packaging: [ci skip] Add daemon-reload option, to make sure systemd learns about the newly installed service * netdata/packaging: [ci skip] Attempt to silence codacy by factoring out the few small methods for common usage, then kill directories to reduce complexity adn thats it * netdata/packaging: [ci skip] Just making sure codacy reprocess everything * netdata/packaging: [ci skip] missed one adjustment * netdata/packaging: python style - print shouldnt have space before open parenthesis. Also, add restart on all cases on the spec file * netdata/packaging: [ci skip] fix syntax * netdata/packaging: [ci skip] syntax fixes 2 * netdata/packaging: [ci skip] another miss * netdata/packaging: [ci skip] You need to explicitly trigger a restart, apparently * netdata/packaging: [ci skip] override packaging user definition temporarily, to get things going on testing
2019-07-03 09:18:17 +02:00
# cgroup-network detects the network interfaces of CGROUPs
# it must be able to use setns() and run cgroup-network-helper.sh as root
# the helper script reads /proc/PID/fdinfo/* files, runs virsh, etc.
%attr(4750,root,netdata) %{_libexecdir}/%{name}/plugins.d/cgroup-network
%attr(0750,root,netdata) %{_libexecdir}/%{name}/plugins.d/cgroup-network-helper.sh
Code reorg and cleanup - enrichment of /api/v2 (#15294) * 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>
2023-07-06 00:49:32 +02:00
# local-listeners detects the local processes that are listening for connections
%attr(4750,root,netdata) %{_libexecdir}/%{name}/plugins.d/local-listeners
# network-viewer.plugin, detects all system sockets and classifies them
%attr(4750,root,netdata) %{_libexecdir}/%{name}/plugins.d/network-viewer.plugin
# ndsudo a helper to run privileged commands
%attr(4750,root,netdata) %{_libexecdir}/%{name}/plugins.d/ndsudo
# Enforce 0644 for files and 0755 for directories
# for the netdata web directory
%defattr(0644,root,root,0755)
%{_datadir}/%{name}/web
netdata/packaging: Netdata binary packages generation - spec file refinement, support for nightlies (RPM) (#6369) Detailed list of changes: * netdata/packaging: First round of netdata.spec refactoring - package dependencies - Remove freeipmi/nfacct plugin flags. We auto-detect all plugins by decision - Start refactor of package dependencies - Add missing dependencies, with respect to distro peculiarities - Adjust existing dependencies, so that distro-specific package names is applied * netdata/packaging: add packaging trigger mechanism on binary-packages-specfile-cleanup to help testing * netdata/packaging: WIP - Allow building nightly versions for RPM (Still investigating the right version scheme) * netdata/packaging: Attempt to fix syntax errors - wow travis, mercy * netdata/packaging: tiny nits and fixes 1) there was a syntax error in version definition 2) bring default deploy repo name at the top, then overwrite when latest is published 3) Leave a comment * netdata/packaging: Move these core package requirements to the right section * netdata/packaging: libuv requires >= 1, missed to add that on devel libs * netdata/packaging: some comments, also when you put logrotate in our conf directory, link it to actual log rotate * netdata/packaging: Adjust configure options on spec file (align with netdata-installer.sh) * netdata/packaging: In order to properly support packaging both latest and stable releases, you need to star that extraction part, folder name contains the version with the hash that we cant tell * netdata/packaging: until we fix versioning, bring the original unprocessed spec file and pass the version we like in * netdata/packaging: fix version string in the spec file * netdata/packaging: Replace source path, we need to work with whatever we downloaded (to be refined) * netdata/packaging: [ci skip] you mixed the paths, reverse them * netdata/packaging: [ci skip] attempt to fix source path when needed * netdata/packaging: fixes and nits 1) generalize the spec file refinement method 2) Do both replacement that way 3) Adjust file names and paths * netdata/packaging: Replace Source0 explicitly and also make sure you remove extra new lines that may confuse the replacement later * netdata/packaging: [ci skip] move env outside, add some more log * netdata/packaging: [ci skip] adjust logic of replacing tag lines in spec file * netdata/packaging: [ci skip] Alas, fetch the archive, rename the structure to the new version, repack and proceed * netdata/packaging: [ci skip] Extract to specific path * netdata/packaging: [ci skip] replace problematic tar call with the respective pythonized one * netdata/packaging: [ci skip] Add new friendly octal format for chmod * netdata/packaging: [ci skip] more checks * netdata/packaging: [ci skip] dont chmod, chown the whole folder after extraction * netdata/packaging: nit * netdata/packaging: [ci skip] attempt to fix permissions differently * netdata/packaging: [ci skip] Another hack, attempt to fix permissions on the host directly * netdata/packaging: [ci skip] fine, do the move also on the host, pointless to run all through the container * netdata/packaging: [ci skip] Do the move through the container. Also, move a more specific folder * netdata/packaging: [ci skip] move as w00t * netdata/packaging: [ci skip] fix * netdata/packaging: sync permissions handling, round two * netdata/packaging: scratch those hacks, we should do latest differently * netdata/packaging: [ci skip] Set up rpm version string depending on whether we are on latest or not * netdata/packaging: [ci skip] Branch the code here, latest build up should be on the commit rather the tar files * netdata/packaging: Attempt to handle latest version build up * netdata/packaging: [ci skip] Dont continue processing if the file was not generated. Also do the tagging before autoreconf * netdata/packaging: [ci skip] fixes and nits * netdata/packaging: [ci skip] When doing annotated tags, you need to provide a message otherwise an editor pops up and will block the build * netdata/packaging: on the latest code case go all the way host level operations * netdata/packaging: [ci skip] Do not modify version, no longer need it because we properly generated the package with the right version * netdata/packaging: [ci skip] fix sensors line, you missed the Recommends keyword * netdata/packaging: Some code style (remove tabification from some tags) and also remove Recommends, we start with required packages for build and runtime and then we document further needs * netdata/packaging: [ci skip] Make sure you get epel in there, its needed * netdata/packaging: [ci skip] Fix bogus date * netdata/packaging: [ci skip] add these packages to include functionality * netdata/packaging: [ci skip] more fine grained dependency handling * netdata/packaging: [ci skip] Dependency hell - do not depend on libnetacctfilter if on el/7 * netdata/packaging: [ci skip] Be serious, that is not what you do when building the package silly * netdata/packaging: [ci skip] define directory attributes too * netdata/packaging: [ci skip] mystery unfold - comment out as we need to figure out how to handle missing directories that our installer creates if necessary * netdata/packaging: [ci skip] Make sure you properly set deployment repo based on commit message * netdata/packaging: [ci skip] Install these packages for specific versions, remove optimisations for now * netdata/packaging: [ci skip] Make package yanking flexible, so that we can manage both netdata and netdata-edge cleanup properly * netdata/packaging: [ci skip] Actually, set user at travis layer and let the script consume it only. We need to be sure the same user is used on yanking and the deployment process * netdata/packaging: [ci skip] wow pkatsoul * netdata/packaging: Dont forget to install some of the enabled plugins * netdata/packaging: nfacct.plugin not really working on rhel, disable temporarily * netdata/packaging: include installed directories to package * netdata/packaging: [ci skip] nits * netdata/packaging: fixes * netdata/packaging: [ci skip] dont add ghost files * netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there * netdata/packaging: [ci skip] Extreme - override _libexecdir macro * Revert "netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there" This reverts commit 320102c96284e4622266f6f089d6ce87319976f3. That wasnt really the problem here * netdata/packaging: [ci skip] Include contents of dir here * netdata/packaging: fixes * netdata/packaging: [ci skip] Fixes and additions - Tighter permissions for some files - Introduce go.d plugin install (likely broken like this, dont recall if bash style code is fine here) - Raise the path overrides to the spec level, otherwise we build with the overrides and package with the defaults * netdata/packaging: [ci skip] Missed an invalid variable. These files are under our current path, no need for complexity * netdata/packaging: [ci skip] bring sha method onboard * netdata/packaging: [ci skip] Wrong path provided, should be under build root * netdata/packaging: [ci skip] Add registry directory * netdata/packaging: [ci skip] add missing config directory definitions * netdata/packaging: [ci skip] Fix missing dirs * netdata/packaging:[ci fix] hos * netdata/packaging: [ci skip] Fixes and additions - Change versioning to v1.15.0.114 from v1.15.0114 - Add CUPS, Xenstat, json-c * netdata/packaging: [ci skip] fix package dependencies on the builder setup, otherwise spec will fail * netdata/packaging: [ci skip] limit xenstat to suse and fedora for now * netdata/packaging: [ci skip] separate fedora and suse cases, unfortunately suse has different package names.... * netdata/packaging: [ci skip] yajl is not the same package everywhere, of course * netdata/packagin: [ci skip] skip xenstat for now * netdata/packaging: [ci skip] remove the vvvvvvvvv * netdata/packaging: [ci skip] one more fix attempt * netdata/packaging: [ci skip] Spec file extraction is different when building from stable. We *must* fetch it from the tarball rather than the local one * netdata/packaging: [ci skip] spec_file defined on all cases, latest or stable. Also move latest spec file copy after make dist operation, that is where is suppose to be * netdata/packaging: [ci skip] Tag source with the local version, as we build upon the very latest * netdata/packaging: oopsie -- remove json-c from that place, it was forgotten * netdata/packaging: fix packaging, even though devel is consistent between fedora and suse, the binary one is not .... (also fix default perms to be root:netdata rather root:root) * netdata/packaging: Suse love - again, libuuid-devel same, but libuuid is named libuuid1 on suse...... * netdata/packaging: [ci skip] libcap same.... * netdata/packaging: [ci skip] use the noreplace directive for the configuration files * netdata/packaging: [ci skip] Bring back master as the triggering repository * netdata/packaging: [ci skip] attempt to enable/disable service where necessary. Default preset action requires further setup, so we override that * Revert "netdata/packaging: [ci skip] Bring back master as the triggering repository" This reverts commit 9b25a622dc5f12b1539f6863bab52d7bb225fd8d. ** Reverting as we need to test further the service enable action ** * netdata/packaging: [ci skip] revert this change - not the right way, we have empty files * netdata/packaging: [ci skip] Add daemon-reload option, to make sure systemd learns about the newly installed service * netdata/packaging: [ci skip] Attempt to silence codacy by factoring out the few small methods for common usage, then kill directories to reduce complexity adn thats it * netdata/packaging: [ci skip] Just making sure codacy reprocess everything * netdata/packaging: [ci skip] missed one adjustment * netdata/packaging: python style - print shouldnt have space before open parenthesis. Also, add restart on all cases on the spec file * netdata/packaging: [ci skip] fix syntax * netdata/packaging: [ci skip] syntax fixes 2 * netdata/packaging: [ci skip] another miss * netdata/packaging: [ci skip] You need to explicitly trigger a restart, apparently * netdata/packaging: [ci skip] override packaging user definition temporarily, to get things going on testing
2019-07-03 09:18:17 +02:00
# Enforce 0660 for files and 0770 for directories
# for the netdata lib, cache and log dirs
%defattr(0660,root,netdata,0770)
%attr(0770,netdata,netdata) %dir %{_localstatedir}/cache/%{name}
%attr(0755,netdata,root) %dir %{_localstatedir}/log/%{name}
%attr(0770,netdata,netdata) %dir %{_localstatedir}/lib/%{name}
%attr(0770,netdata,netdata) %dir %{_localstatedir}/lib/%{name}/registry
%attr(0770,netdata,netdata) %dir %{_localstatedir}/lib/%{name}/cloud.d
netdata/packaging: Netdata binary packages generation - spec file refinement, support for nightlies (RPM) (#6369) Detailed list of changes: * netdata/packaging: First round of netdata.spec refactoring - package dependencies - Remove freeipmi/nfacct plugin flags. We auto-detect all plugins by decision - Start refactor of package dependencies - Add missing dependencies, with respect to distro peculiarities - Adjust existing dependencies, so that distro-specific package names is applied * netdata/packaging: add packaging trigger mechanism on binary-packages-specfile-cleanup to help testing * netdata/packaging: WIP - Allow building nightly versions for RPM (Still investigating the right version scheme) * netdata/packaging: Attempt to fix syntax errors - wow travis, mercy * netdata/packaging: tiny nits and fixes 1) there was a syntax error in version definition 2) bring default deploy repo name at the top, then overwrite when latest is published 3) Leave a comment * netdata/packaging: Move these core package requirements to the right section * netdata/packaging: libuv requires >= 1, missed to add that on devel libs * netdata/packaging: some comments, also when you put logrotate in our conf directory, link it to actual log rotate * netdata/packaging: Adjust configure options on spec file (align with netdata-installer.sh) * netdata/packaging: In order to properly support packaging both latest and stable releases, you need to star that extraction part, folder name contains the version with the hash that we cant tell * netdata/packaging: until we fix versioning, bring the original unprocessed spec file and pass the version we like in * netdata/packaging: fix version string in the spec file * netdata/packaging: Replace source path, we need to work with whatever we downloaded (to be refined) * netdata/packaging: [ci skip] you mixed the paths, reverse them * netdata/packaging: [ci skip] attempt to fix source path when needed * netdata/packaging: fixes and nits 1) generalize the spec file refinement method 2) Do both replacement that way 3) Adjust file names and paths * netdata/packaging: Replace Source0 explicitly and also make sure you remove extra new lines that may confuse the replacement later * netdata/packaging: [ci skip] move env outside, add some more log * netdata/packaging: [ci skip] adjust logic of replacing tag lines in spec file * netdata/packaging: [ci skip] Alas, fetch the archive, rename the structure to the new version, repack and proceed * netdata/packaging: [ci skip] Extract to specific path * netdata/packaging: [ci skip] replace problematic tar call with the respective pythonized one * netdata/packaging: [ci skip] Add new friendly octal format for chmod * netdata/packaging: [ci skip] more checks * netdata/packaging: [ci skip] dont chmod, chown the whole folder after extraction * netdata/packaging: nit * netdata/packaging: [ci skip] attempt to fix permissions differently * netdata/packaging: [ci skip] Another hack, attempt to fix permissions on the host directly * netdata/packaging: [ci skip] fine, do the move also on the host, pointless to run all through the container * netdata/packaging: [ci skip] Do the move through the container. Also, move a more specific folder * netdata/packaging: [ci skip] move as w00t * netdata/packaging: [ci skip] fix * netdata/packaging: sync permissions handling, round two * netdata/packaging: scratch those hacks, we should do latest differently * netdata/packaging: [ci skip] Set up rpm version string depending on whether we are on latest or not * netdata/packaging: [ci skip] Branch the code here, latest build up should be on the commit rather the tar files * netdata/packaging: Attempt to handle latest version build up * netdata/packaging: [ci skip] Dont continue processing if the file was not generated. Also do the tagging before autoreconf * netdata/packaging: [ci skip] fixes and nits * netdata/packaging: [ci skip] When doing annotated tags, you need to provide a message otherwise an editor pops up and will block the build * netdata/packaging: on the latest code case go all the way host level operations * netdata/packaging: [ci skip] Do not modify version, no longer need it because we properly generated the package with the right version * netdata/packaging: [ci skip] fix sensors line, you missed the Recommends keyword * netdata/packaging: Some code style (remove tabification from some tags) and also remove Recommends, we start with required packages for build and runtime and then we document further needs * netdata/packaging: [ci skip] Make sure you get epel in there, its needed * netdata/packaging: [ci skip] Fix bogus date * netdata/packaging: [ci skip] add these packages to include functionality * netdata/packaging: [ci skip] more fine grained dependency handling * netdata/packaging: [ci skip] Dependency hell - do not depend on libnetacctfilter if on el/7 * netdata/packaging: [ci skip] Be serious, that is not what you do when building the package silly * netdata/packaging: [ci skip] define directory attributes too * netdata/packaging: [ci skip] mystery unfold - comment out as we need to figure out how to handle missing directories that our installer creates if necessary * netdata/packaging: [ci skip] Make sure you properly set deployment repo based on commit message * netdata/packaging: [ci skip] Install these packages for specific versions, remove optimisations for now * netdata/packaging: [ci skip] Make package yanking flexible, so that we can manage both netdata and netdata-edge cleanup properly * netdata/packaging: [ci skip] Actually, set user at travis layer and let the script consume it only. We need to be sure the same user is used on yanking and the deployment process * netdata/packaging: [ci skip] wow pkatsoul * netdata/packaging: Dont forget to install some of the enabled plugins * netdata/packaging: nfacct.plugin not really working on rhel, disable temporarily * netdata/packaging: include installed directories to package * netdata/packaging: [ci skip] nits * netdata/packaging: fixes * netdata/packaging: [ci skip] dont add ghost files * netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there * netdata/packaging: [ci skip] Extreme - override _libexecdir macro * Revert "netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there" This reverts commit 320102c96284e4622266f6f089d6ce87319976f3. That wasnt really the problem here * netdata/packaging: [ci skip] Include contents of dir here * netdata/packaging: fixes * netdata/packaging: [ci skip] Fixes and additions - Tighter permissions for some files - Introduce go.d plugin install (likely broken like this, dont recall if bash style code is fine here) - Raise the path overrides to the spec level, otherwise we build with the overrides and package with the defaults * netdata/packaging: [ci skip] Missed an invalid variable. These files are under our current path, no need for complexity * netdata/packaging: [ci skip] bring sha method onboard * netdata/packaging: [ci skip] Wrong path provided, should be under build root * netdata/packaging: [ci skip] Add registry directory * netdata/packaging: [ci skip] add missing config directory definitions * netdata/packaging: [ci skip] Fix missing dirs * netdata/packaging:[ci fix] hos * netdata/packaging: [ci skip] Fixes and additions - Change versioning to v1.15.0.114 from v1.15.0114 - Add CUPS, Xenstat, json-c * netdata/packaging: [ci skip] fix package dependencies on the builder setup, otherwise spec will fail * netdata/packaging: [ci skip] limit xenstat to suse and fedora for now * netdata/packaging: [ci skip] separate fedora and suse cases, unfortunately suse has different package names.... * netdata/packaging: [ci skip] yajl is not the same package everywhere, of course * netdata/packagin: [ci skip] skip xenstat for now * netdata/packaging: [ci skip] remove the vvvvvvvvv * netdata/packaging: [ci skip] one more fix attempt * netdata/packaging: [ci skip] Spec file extraction is different when building from stable. We *must* fetch it from the tarball rather than the local one * netdata/packaging: [ci skip] spec_file defined on all cases, latest or stable. Also move latest spec file copy after make dist operation, that is where is suppose to be * netdata/packaging: [ci skip] Tag source with the local version, as we build upon the very latest * netdata/packaging: oopsie -- remove json-c from that place, it was forgotten * netdata/packaging: fix packaging, even though devel is consistent between fedora and suse, the binary one is not .... (also fix default perms to be root:netdata rather root:root) * netdata/packaging: Suse love - again, libuuid-devel same, but libuuid is named libuuid1 on suse...... * netdata/packaging: [ci skip] libcap same.... * netdata/packaging: [ci skip] use the noreplace directive for the configuration files * netdata/packaging: [ci skip] Bring back master as the triggering repository * netdata/packaging: [ci skip] attempt to enable/disable service where necessary. Default preset action requires further setup, so we override that * Revert "netdata/packaging: [ci skip] Bring back master as the triggering repository" This reverts commit 9b25a622dc5f12b1539f6863bab52d7bb225fd8d. ** Reverting as we need to test further the service enable action ** * netdata/packaging: [ci skip] revert this change - not the right way, we have empty files * netdata/packaging: [ci skip] Add daemon-reload option, to make sure systemd learns about the newly installed service * netdata/packaging: [ci skip] Attempt to silence codacy by factoring out the few small methods for common usage, then kill directories to reduce complexity adn thats it * netdata/packaging: [ci skip] Just making sure codacy reprocess everything * netdata/packaging: [ci skip] missed one adjustment * netdata/packaging: python style - print shouldnt have space before open parenthesis. Also, add restart on all cases on the spec file * netdata/packaging: [ci skip] fix syntax * netdata/packaging: [ci skip] syntax fixes 2 * netdata/packaging: [ci skip] another miss * netdata/packaging: [ci skip] You need to explicitly trigger a restart, apparently * netdata/packaging: [ci skip] override packaging user definition temporarily, to get things going on testing
2019-07-03 09:18:17 +02:00
# Free IPMI belongs to a different sub-package
%if %{_have_freeipmi}
%exclude %{_libexecdir}/%{name}/plugins.d/freeipmi.plugin
%endif
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
# NFACCT belongs to a different sub-package
%if %{_have_nfacct}
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%exclude %{_libexecdir}/%{name}/plugins.d/nfacct.plugin
%endif
# Charts.d belongs to a different sub-package
%exclude %{_libexecdir}/%{name}/plugins.d/charts.d.plugin
%exclude %{_libexecdir}/%{name}/plugins.d/charts.d.dryrun-helper.sh
%exclude %{_libexecdir}/%{name}/charts.d/
%exclude %{_libdir}/%{name}/conf.d/charts.d.conf
%exclude %{_libdir}/%{name}/conf.d/charts.d/
# eBPF belongs to a different sub-package
%if %{_have_ebpf}
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%exclude %{_libexecdir}/%{name}/plugins.d/ebpf.plugin
%exclude %{_libdir}/%{name}/conf.d/ebpf.d.conf
%exclude %{_libdir}/%{name}/conf.d/ebpf.d
%exclude %{_libexecdir}/%{name}/plugins.d/ebpf.d
%endif
# Python.d belongs to a different sub-package
%exclude %{_libexecdir}/%{name}/plugins.d/python.d.plugin
%exclude %{_libexecdir}/%{name}/python.d
%exclude %{_libdir}/%{name}/conf.d/python.d.conf
%exclude %{_libdir}/%{name}/conf.d/python.d
# Go.d belongs to a different sub-package
%exclude %{_libexecdir}/%{name}/plugins.d/go.d.plugin
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%exclude %{_libdir}/%{name}/conf.d/go.d.conf
%exclude %{_libdir}/%{name}/conf.d/go.d
# apps belongs to a different sub-package
%exclude %{_libexecdir}/%{name}/plugins.d/apps.plugin
%exclude %{_libdir}/%{name}/conf.d/apps_groups.conf
# slabinfo belongs to a different sub-package
%exclude %{_libexecdir}/%{name}/plugins.d/slabinfo.plugin
# perf belongs to a different sub-package
%exclude %{_libexecdir}/%{name}/plugins.d/perf.plugin
# systemd-journal belongs to a different sub-package
%exclude %{_libexecdir}/%{name}/plugins.d/systemd-journal.plugin
# xenstat belongs to a different sub-package
%exclude %{_libexecdir}/%{name}/plugins.d/xenstat.plugin
Logs Management (#13291) This PR adds the logs-management external plugin. See the included README for an extensive list of features. ------------------------------------------------------------------------------------- * Add proper status return in JSON response of functions * Add column info to functions * Escape special characters when returning JSON response * Add proper functions help and defaults. Fix help not working * Add 'logs_management_meta' object in functions results * Fix compiler warnings * Replace tabs with 3 spaces in web_client_api_request_v1_logsmanagement_sources() * Add 'sources' in functions to display list of log sources * Update functions column values for logs * Update chart titles and remove '/s' from units * Add support for compound queries in circular buffers * Refactor circ_buff_search() to get rid of circ_buff_search_compound() * Fix incorrect docker events nano timestamp padding * Fixed botched rebasing * Replace get_unix_time_ms() with now_realtime_msec() * Remove binary generation from Fluent-Bit lib build * Fix compiler warnings due to new timestamp type * Remove STDIN and STDOUT support from Fluent-Bit library * Initial support for FLB_KMSG kernel logs collection * Add kernel logs charts * Add kernel logs subsystem and device charts * Skip collection of pre-existing logs in kmsg ring buffer * Add example of custom kmsg charts * Add extra initialization error logs * Fix bug of Docker Events collector failure disabling whole logs management engine * Remove reduntant FLB output code * Remove some obsolete TODO comments * Remove some commented out error/debug prints * Disable some Fluent-Bit config options not required * Make circular buffer spare items option configurable * Add DB mode configuration option * Replace p_file_infos_arr->data[i] with p_file_info in db_api.c * Remove db_loop due to all function calls being synchronous * Add initial README.md * Add DB mode = none changes * Add a simple webpage to visualize log query results * Add support for source selection to logs_query.html * Add option to query multiple log sources * Mark non-queryable sources as such in logs_query.html * Add option to use either GET or functions request in logs_query.html * Install logs_query.html when running stress tests * Update README.md requirements * Change installer behavior to build logs management by default * Disable logs management at runtime by default * Add global db mode configuration in 'logs management' config section * Split logsmanagement.conf into required & optional sections * Remove --enable-logsmanagement from stress test script * Add global config option for 'circular buffer max size MiB' * Add global config option for 'circular buffer drop logs if full' * Update 'General Configuration' in README.md * Add global config option for remaining optional settings * Add systemd collector requirements to TOC * README: Convert general configuration to table * README: Fix previous botched commit * Enable logs management by default when building for stress testing * Move logging to collector.log from error.log * Fix contenttype compilation errors * Move logging to collector.log in plugin_logsmanagement.c * Rename 'rows' to 'records' in charts * Add Netdata error.log parsing * Add more dashboard descriptions * Sanitize chart ids * Attempt to fix failing CI * Update README.md * Update README.md * Another attempt to fix CI failures * Fix undefined reference to 'uv_sleep' on certain platforms * Support FLB forward input and FLB output plugins. Squashed commit of the following: commit 55e2bf4fb34a2e02ffd0b280790197310a5299f3 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Apr 13 16:41:09 2023 +0300 Remove error.log from stock config commit bbdc62c2c9727359bc3c8ef8c33ee734d0039be7 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Apr 13 16:37:48 2023 +0300 Add cleanup of Fluent Bit outputs in p_file_info_destroy() commit 09b0aa4268ec1ccef160c99c5d5f31b6388edd28 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Apr 13 14:34:17 2023 +0300 Some code and config cleanup commit 030d074667d5ee2cad10f85cd836ca90e29346ad Author: Dim-P <dimitris1703@gmail.com> Date: Thu Apr 13 13:04:08 2023 +0300 Enable additional Fluent Bit output plugins for shared library commit 490aa5d44caa38042521d24c6b886b8b4a59a73c Author: Dim-P <dimitris1703@gmail.com> Date: Thu Apr 13 01:33:19 2023 +0300 Add initialization of Fluent Bit user-configured outputs commit c96e9fe9cea96549aa5eae09d0deeb130da02793 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Apr 4 23:13:16 2023 +0100 Complete read of parameters for FLB outputs config commit 00988897f9b86d1ecc5c141b19df7ad7d74f7e96 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Apr 3 19:43:31 2023 +0100 Update README.md commit 6deea5399c2707942aeaa51408f999ca45dfd351 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Apr 3 16:02:28 2023 +0100 Refactor Syslog_parser_config_t and add Flb_socket_config_t commit 7bf998a4c298bbd489ef735c56a6e85a137772c9 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Apr 3 14:19:57 2023 +0100 Update README.md commit c353d194b12c54f134936072ebaded0424d73cc0 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Mar 31 14:52:57 2023 +0100 Update README.md commit 6be726eaff3738ba7884de799aa52949833af65a Author: Dim-P <dimitris1703@gmail.com> Date: Fri Mar 31 13:06:29 2023 +0100 Update README. Fix docker_events streaming commit 6aabfb0f1ef0529a7a0ecbaf940bc0952bf42518 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Mar 30 21:27:45 2023 +0100 Fix stuck in infinite loop bug for FLB_GENERIC, FLB_WEB_LOG and FLB_SERIAL remote log sources commit eea6346b708cc7a5ce6e2249366870f4924eabae Author: Dim-P <dimitris1703@gmail.com> Date: Thu Mar 30 21:04:12 2023 +0100 Remove callback that searches for streamed p_file_info match commit bc9c5a523b0b0ab5588adbff391a43ba8d9a0cdf Author: Dim-P <dimitris1703@gmail.com> Date: Thu Mar 30 15:51:39 2023 +0100 Basic streaming works commit 4c80f59f0214bc07895f0b2edca47cb02bc06420 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Mar 28 22:05:22 2023 +0100 WIP commit eeb37a71b602fb0738fe8077ccddc0a8ce632304 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Mar 27 22:52:09 2023 +0100 Add generic forward streaming input commit 1459b91847c80c4d97de96b75b00771039458ad6 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Mar 23 18:50:14 2023 +0000 FLB_FORWARD: WIP * Add number of logs per item in DB and in queries response * Fix wrong number of lines stored in DB for web logs * Refactor number of logs parsers and charts code * Add option to toggle number of collected logs metrics and charts * Disable kmsg log collector by default * Fix logs_query.html to work with any server ip * Fix regressed wrong number of web log lines bug * Change query quota type from size_t to long long * Update alpine version when searching for fts-dev requirements * Update query results to return both requested and actual quota * Fix bug of circ buffs not being read if head == read but not empty * Squashed commit of the following: commit 34edb316a737f3edcffcf8fa88a3801599011495 Author: Dim-P <dimitris1703@gmail.com> Date: Thu May 4 20:02:36 2023 +0100 Comment out some debug prints commit 51b9b87a88516186530f5b4b65f785b543fefe8c Author: Dim-P <dimitris1703@gmail.com> Date: Fri Apr 28 19:21:54 2023 +0100 Fix wrong filenames in BLOBS_TABLE after rotation commit 6055fc2893b48661af324f20ee61511a40abbc02 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Apr 28 12:22:04 2023 +0100 Add chart showing number of circular buffer items commit 0bb5210b0847f4b7596f633ec96fc10aa8ebc791 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Apr 25 16:47:29 2023 +0300 Various fixes. Fix num_lines calculation. Add debug prints for circ buffers. Remove circ buff spare items option. Fix calculation of circ buff memory consumption. Add buff_realloc_rwlock for db_mode = none case. Fix circ buff read to be done correctly when buff is full. commit f494af8c95be84404c7d854494d26da3bcbd3ad7 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Apr 21 16:03:50 2023 +0300 Fix freez() on non-malloced address commit cce6d09e9cf9b847aface7309643e2c0a6041390 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Apr 21 15:41:25 2023 +0300 Add option to dynamically expand circ buffs when full * Use log timestamps when possible, instead of collection timestamps. Also, add config options for Fluent Bit engine and remove tail_plugin. Squashed commit of the following: commit b16a02eb6e3a90565c90e0a274b87b123e7b18e5 Author: Dim-P <dimitris1703@gmail.com> Date: Tue May 16 19:38:57 2023 +0100 Add Fluent Bit service config options to netdata.conf. Add monitoring of new log file fluentbit.log commit ab77c286294548ea62a3879ac0f8b8bbfe6a0687 Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 15 21:25:17 2023 +0100 Remove some debug prints commit 46d64ad2434e69b1d20720297aec1ddb869e1f84 Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 15 21:19:32 2023 +0100 Fix null values in charts commit 8ec96821d6a882f28cbd19244ebdfc86c807d2f4 Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 15 17:43:04 2023 +0100 Update README.md to reflect log timestamp changes commit 079a91858cf9db2f74711581235bc17eb97c7dad Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 15 16:23:14 2023 +0100 Add configurable option for 'update timeout' commit 72b5e2505d4657fcbb5ccb6eeee00c45eb0b51ff Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 15 16:05:08 2023 +0100 Revert logsmanagement.conf to logs-manag-master one commit 70d0ea6f8d272fff318aa3095d90a78dcc3411a7 Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 15 16:02:00 2023 +0100 Fix bug of circ buff items not marked as done commit 5716420838771edb7842be4669bf96235b15cf71 Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 15 16:01:41 2023 +0100 Fix do_custom_charts_update() to work for all log sources commit a8def8f53fd25c3efa56ef27e267df3261913a8e Author: Dim-P <dimitris1703@gmail.com> Date: Fri May 12 18:20:20 2023 +0100 Remove GENERIC and WEB_LOG cases. Remove tail_plugin.c/h. Remove generic_parser(). commit 1cf05966e33491dbeb9b877f18d1ea8643aabeba Author: Dim-P <dimitris1703@gmail.com> Date: Fri May 12 16:54:59 2023 +0100 Fix FLB_GENERIC and FLB_SERIAL to work with new timestamp logic commit df3266810531f1af5f99b666fbf44c503b304a39 Author: Dim-P <dimitris1703@gmail.com> Date: Fri May 12 14:55:04 2023 +0100 Get rid of *_collect() functions and restructure plugin_logsmanagement workers commit 3eee069842f3257fffe60dacfc274363bc43491c Author: Dim-P <dimitris1703@gmail.com> Date: Fri May 12 14:28:33 2023 +0100 Fix wrong order of #define _XOPEN_SOURCE 700 in parser.c commit 941aa80cb55d5a7d6fe8926da930d9803be52312 Author: Dim-P <dimitris1703@gmail.com> Date: Thu May 11 22:27:39 2023 +0100 Update plugin_logsmanagement_web_log to use new timestamp logic and to support delayed logs. Refactor req_method metrics code. commit 427a7d0e2366d43cb5eab7daa1ed82dfc3bc8bc8 Author: Dim-P <dimitris1703@gmail.com> Date: Tue May 9 20:26:08 2023 +0100 Update plugin_logsmanagement_kernel to use new timestamp logic and to support delayed charts commit a7e95a6d3e5c8b62531b671fd3ec7b8a3196b5bb Author: Dim-P <dimitris1703@gmail.com> Date: Tue May 9 15:22:14 2023 +0100 Update plugin_logsmanagement_systemd to use new timestamp logic and support delayed charts commit 48237ac2ce49c82abdf2783952fd9f0ef05d72e1 Author: Dim-P <dimitris1703@gmail.com> Date: Tue May 9 13:29:44 2023 +0100 Refactor number of collected logs chart update code commit a933c8fcae61c23fa0ec6d0074526ac5d243cf16 Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 8 22:11:19 2023 +0100 Update plugin_logsmanagement_docker_ev to use new timestamp logic and support delayed charts commit 5d8db057155affd5cb721399a639d75a81801b7f Author: Dim-P <dimitris1703@gmail.com> Date: Fri May 5 15:18:06 2023 +0100 Change some Fluent Bit collectors to use log timestamps instead of collection timestamps * Remove some unused defines and typedefs * Improve flb_init() * Update file-level doxygen. Add SPDX license declaration. * Better handling of termination of Fluent Bit * Better handling of DB errors. Various fixes. Squashed commit of the following: commit f55feea1274c3857eda1e9d899743db6e3eb5bf5 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Jun 6 13:28:00 2023 +0100 Fix web log parsing in case of lines terminated by \r commit 9e05758a4ecfac57a0db14757cff9536deda51d8 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Jun 5 20:42:05 2023 +0100 Fix warnings due to -Wformat-truncation=2 commit 63477666fa42446d74693aae542580d4e1e81f03 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Jun 5 16:48:45 2023 +0100 Autodiscovery of Netdata error.log based on netdata_configured_log_dir commit cab5e6d6061f4259172bbf72666e8b4a3a35dd66 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Jun 5 16:24:39 2023 +0100 Replace Forward config default string literals with macros commit 4213398031dbb53afbc943d76bf7df202d12bf6f Author: Dim-P <dimitris1703@gmail.com> Date: Mon Jun 5 15:56:29 2023 +0100 Proper cleanup of flb_lib_out_cb *callback in case of error commit f76fd7cc7bc2d0241e4d3517f61ae192d4246300 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Jun 5 15:36:07 2023 +0100 Proper termination of Forward input and respective log sources in case of error commit 3739fd96c29e13298eb3a6e943a63172cdf39d5f Author: Dim-P <dimitris1703@gmail.com> Date: Thu Jun 1 21:19:56 2023 +0100 Merge db_search() and db_search_compound() commit fcface90cb0a6df3c3a2de5e1908b1b3467dd579 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Jun 1 19:17:26 2023 +0100 Proper error handling in db_search() and db_search_compound(). Refactor the code too. commit c10667ebee2510a1af77114b3a7e18a0054b5dae Author: Dim-P <dimitris1703@gmail.com> Date: Thu Jun 1 14:23:34 2023 +0100 Update DB mode and dir when switching to db_mode_none commit d37d4c3d79333bb9fa430650c13ad625458620e8 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Jun 1 12:56:13 2023 +0100 Fix flb_stop() SIGSEGV commit 892e231c68775ff1a1f052d292d26384f1ef54b1 Author: Dim-P <dimitris1703@gmail.com> Date: Tue May 30 21:14:58 2023 +0100 Switch to db_writer_db_mode_none if db_writer_db_mode_full encounters error commit f7a0c2135ff61d3a5b0460ec5964eb6bce164bd6 Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 29 21:41:21 2023 +0100 Complete error handling changes to db_init(). Add some const type qualifiers. Refactor some code for readability commit 13dbeac936d22958394cb1aaec394384f5a93fdd Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 29 17:14:17 2023 +0100 More error handling changes in db_init(). Change some global default settings if stress testing. commit eb0691c269cd09054190bf0ee9c4e9247b4a2548 Author: Dim-P <dimitris1703@gmail.com> Date: Fri May 26 23:29:12 2023 +0100 Better handling of db writer threads errors. Add db timings charts * Fix mystrsep() replaced by strsep_skip_consecutive_separators() * Fix older GCC failure due to label before declaration * Fix failed builds when using libuv <= v1.19 * Fix some Codacy warnings * Fix warning: implicit declaration of function ‘strsep’ * Use USEC_PER_SEC instead of 1000000ULL * Use UUID_STR_LEN instead of GUID_LEN + 1 * Combine multiple 'ln -sf' Docker instructions to one * Update README with systemd development libraries requirement * Comment out mallocz() success checkes in parser_csv() * Fix shellcheck warnings * Remove asserts for empty SYSLOG_IDENTIFIER or PID * Fix FreeBSD failing builds * Fix some more shellcheck warnings * Update Alpine fts-dev required packages * First changes to use web log timestamp for correct metrics timings * Initial work to add test_parse_web_log_line() unit test * Complete test_parse_web_log_line() tests * Improve parse_web_log_line() for better handling of \n, \r, double quotes etc. * Fix 'Invalid TIME error when timezone sign is negative * Add more logs to compression unit test case * Misc read_last_line() improvements * Fix failing test_auto_detect_web_log_parser_config() when test case terminated without '\n' * Remove unused preprocessor macro * Factor out setup of parse_config_expected_num_fields * Add test for count_fields() * Add unit test for read_last_line() * Fix a read_last_line() bug * Remove PLUGIN[logsmanagement] static thread and update charts synchronously, right before data buffering * Fix web log parser potential SIGSEGV * Fix web log metrics bug where they could show delayed by 1 collection interval * WIP: Add multiline support to kmsg logs and fix metric timings * Fix kmsg subsystem and device parsing and metrics * Add option 'use log timestamp' to select between log timestamps or collection timestamps * Add 'Getting Started' docs section * Move logs management functions code to separate source files * Add 'Nginx access.log' chart description * Remove logsmanagement.plugin source files * Fix some memory leaks * Improve cleanup of logsmanagement_main() * Fix a potential memory leak of fwd_input_out_cb * Better termination and cleanup of main_loop and its handles * Fix main_db_dir access() check bug * Avoid uv_walk() SIGSEGV * Remove main_db_dir access() check * Better termination and cleanup of DB code * Remove flb_socket_config_destroy() that could cause a segmentation fault * Disable unique client IPs - all-time chart by default * Update README.md * Fix debug() -> netdata_log_debug() * Fix read_last_line() * Fix timestamp sign adjustment and wrong unit tests * Change WEB_CLIENT_ACL_DASHBOARD to WEB_CLIENT_ACL_DASHBOARD_ACLK_WEBRTC * Do not parse web log timestamps if 'use_log_timestamp = no' * Add Logs Management back into buildinfo.c * Update README.md * Do not build Fluent Bit executable binary * Change logs rate chart to RRDSET_TYPE_LINE * Add kludge to prevent metrics breaking due to out of order logs * Fix wrong flb_tmp_buff_cpy_timer expiration * Refactor initialization of input plugin for local log sources. * Rename FLB_GENERIC collector to FLB_TAIL. * Switch 'Netdata fluentbit.log' to disabled by default * Add 'use inotify' configuration option * Update in README.md * Add docker event actions metrics * Update README.md to include event action chart * Remove commented out PLUGIN[logsmanagement] code block * Fix some warnings * Add documentation for outgoing log streaming and exporting * Fix some code block formatting in README.md * Refactor code related to error status of log query results and add new invalid timestamp case * Reduce query mem allocs and fix end timestamp == 0 bug * Add support for duplicate timestamps in db_search() * Add support for duplicate timestamps in circ_buff_search() * Fix docker events contexts * Various query fixes prior to reverse order search. - Add reverse qsort() function in circ buffers. - Fix issues to properly support of duplicate timestamps. - Separate requested from actual timestamps in query parameters. - Rename results buffer variable name to be consistent between DB and buffers. - Remove default start and end timestamp from functions. - Improve handling of invalid quotas provided by users. - Rename 'until' timestamp name to 'to'. - Increase default quota to 10MB from 1MB. - Allow start timestamp to be > than end timestamp. * Complete descending timestamp search for circular buffers * Complete descending timestamp search for DB * Remove MEASURE_QUERY_TIME code block * Complete descending timestamp search when data resides in both DB and circular buffers * Use pointer instead of copying res_hdr in query results * Refactor web log timezone parsing to use static memory allocation * Add stats for CPU user & system time per MiB of query results * Micro-optimization to slightly speed up queries * More micro-optimizations and some code cleanup * Remove LOGS_QUERY_DATA_FORMAT_NEW_LINE option * Escape iscntrl() chars at collection rather at query * Reduce number of buffer_strcat() calls * Complete descending timestamp order queries for web_api_v1 * Complete descending timestamp order queries for functions * Fix functions query timings to match web_api_v1 ones * Add MQTT message collector Squashed commit of the following: commit dbe515372ee04880b1841ef7800abe9385b12e1c Author: Dim-P <dimitris1703@gmail.com> Date: Mon Aug 21 15:18:46 2023 +0100 Update README.md with MQTT information commit c0b5dbcb7cdef8c6fbd5e72e7bdd08957a0fd3de Author: Dim-P <dimitris1703@gmail.com> Date: Mon Aug 21 14:59:36 2023 +0100 Tidy up before merge commit 9a69c4f17eac858532918a8f850a770b12710f80 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Aug 21 12:54:33 2023 +0100 Fix issue with duplicate Log_Source_Path in DB, introduced in commit e417af3 commit 48213e9713216d62fca8a5bc1bbc41a3883fdc14 Author: Dim-P <dimitris1703@gmail.com> Date: Sat Aug 19 05:05:36 2023 +0100 WIP commit e417af3b947f11bd61e3255306bc95953863998d Author: Dim-P <dimitris1703@gmail.com> Date: Thu Aug 17 18:03:39 2023 +0100 Update functions logsmanagement help output * Inhibit Fluent Bit build warnings * Fix missing allow_subpaths value in api_commands_v1[]. * Fix missing HTTP_RESP_BACKEND_FETCH_FAILED error * Fix an enum print warning * Remove systemd-devel requirement from README and fix codacy warnings * Update Alpine versions for musl-fts-dev * Update Fluent Bit to v2.1.8 Squashed commit of the following: commit faf6fc4b7919cc2611124acc67cb1973ce705530 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Aug 25 17:13:30 2023 +0100 Fix wrong default CORE_STACK_SIZE on Alpine commit a810238fe7830ce626f6d57245d68035b29723f7 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Aug 25 00:40:02 2023 +0100 Update Fluent Bit patches for musl commit 8bed3b611dba94a053e22c2b4aa1d46f7787d9b4 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Aug 24 21:54:38 2023 +0100 Fix an edge case crash when web log method is '-' commit b29b48ea230363142697f9749508cd926e18ee19 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Aug 24 16:26:13 2023 +0100 Disable FLB_OUT_CALYPTIA to fix Alpine dlsym() error commit eabe0d0523ffe98ff881675c21b0763a49c05f16 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Aug 22 21:25:54 2023 +0100 Add 'use inotify = no' troubleshooting Q&A in README commit 7f7ae85bdb0def63b4fc05ab88f6572db948e0e7 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Aug 22 18:06:36 2023 +0100 Update README.md links to latest version commit 610c5ac7b920d4a1dfe364ad48f1ca14a0acc346 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Aug 22 16:23:30 2023 +0100 Update flb_parser_create() definition commit f99608ff524b6f3462264e626a1073f9c2fdfdf5 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Aug 22 16:23:04 2023 +0100 Add new config.cmake options commit 446b0d564626055a0a125f525d0bd3754184b830 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Aug 22 12:21:25 2023 +0100 Update Fluent Bit submodule to v2.1.8 * Add logs_management_unittest() to CI 'unittest' * Remove obsolete query testing files * Patch Fluent Bit log format to match netdata's format * Update README with instructions on how to monitor Podman events logs * Fix core dump in case of flb_lib_path dlopen() * Fix some potential compiler warnings * Fix queries crash if logs manag engine not running * Much faster termination of LOGS MANAGEMENT * Add facets support and other minor fixes. logsmanagement_function_execute_cb() is replaced by logsmanagement_function_facets() which adds facets support to logs management queries. Internal query results header now includes additional fields (log_source, log_type, basename, filename, chartname), that are used as facets. Queries now support timeout as a query parameter. A web log timestamp bug is fixed (by using timegm() instead of mktime(). web_api_v1 logsmanagement API is only available in debugging now. Squashed commit of the following: commit 32cf0381283029d793ec3af30d96e6cd77ee9149 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 19 16:21:32 2023 +0300 Tidy up commit f956b5846451c6b955a150b5d071947037e935f0 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 19 13:30:54 2023 +0300 Add more accepted params. Add data_only option. Add if_modified_since option. commit 588c2425c60dcdd14349b7b346467dba32fda4e9 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Sep 18 18:39:50 2023 +0300 Add timeout to queries commit da0f055fc47a36d9af4b7cc4cefb8eb6630e36d9 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 14 19:17:16 2023 +0300 Fix histogram commit 7149890974e0d26420ec1c5cfe1023801dc973fa Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 14 17:58:52 2023 +0300 Add keyword query using simple patterns and fix descending timestamp values commit 0bd068c5a76e694b876027e9fa5af6f333ab825b Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 14 13:54:05 2023 +0300 Add basename, filename, chartname as facets commit 023c2b5f758b2479a0e48da575cd59500a1373b6 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 14 13:26:06 2023 +0300 Add info and sources functions options commit ab4d555b7d445f7291af474847bd9177d3726a76 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 14 12:54:37 2023 +0300 Fix facet id filter commit a69c9e2732f5a6da1764bb57d1c06d8d65979225 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 14 12:07:13 2023 +0300 WIP: Add facet id filters commit 3c02b5de81fa8a20c712863c347539a52936ddd8 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 12 18:19:17 2023 +0300 Add log source and log type to circ buff query results header commit 8ca98672c4911c126e50f3cbdd69ac363abdb33d Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 12 18:18:13 2023 +0300 Fix logsmanagement facet function after master rebasing commit 3f1517ad56cda2473a279a8d130bec869fc2cbb8 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 12 18:14:25 2023 +0300 Restrict /logsmanagement to ACL_DEV_OPEN_ACCESS only commit 8ca98d69b08d006c682997268d5d2523ddde6be0 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 12 14:40:22 2023 +0300 Fix incorrectly parsed timestamps due to DST commit f9b0848037b29c7fcc46da951ca5cd9eb129066f Author: Dim-P <dimitris1703@gmail.com> Date: Mon Sep 11 13:42:18 2023 +0300 Add logs_management_meta object to facet query results commit babc978f6c97107aaf8b337d8d31735d61761b6a Author: Dim-P <dimitris1703@gmail.com> Date: Mon Sep 11 13:03:52 2023 +0300 Query all sources if no arguments provided commit 486d56de87af56aae6c0dc5d165341418222ce8b Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 7 18:38:04 2023 +0300 Add log_source and log_type (only for DB logs) as facets. Add relative time support commit b564c12843d355c4da6436af358d5f352cb58bfe Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 7 13:47:20 2023 +0300 Working facet with descending timestamps commit 68c6a5c64e8425cf28ec16adfb0c50289caa82a9 Author: Dim-P <dimitris1703@gmail.com> Date: Wed Sep 6 01:55:51 2023 +0300 WIP * Fix linking errors * Convert logs management to external plugin. Squashed commit of the following: commit 16da6ba70ebde0859aed734087f04af497ce3a77 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 24 18:44:12 2023 +0100 Use higher value of update every from netdata.conf or logsmanagement.d.conf commit 88cc3497c403e07686e9fc0876ebb0c610a1404c Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 24 18:43:02 2023 +0100 Tidy up commit c3fca57aac169842637d210269519612b1a91e28 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 24 18:02:04 2023 +0100 Use external update_every from agent, if available commit f7470708ba82495b03297cdf8962a09b16617ddd Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 24 17:40:46 2023 +0100 Re-enable debug logs commit b34f5ac6a2228361ab41df7d7e5e713f724368c0 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 24 15:49:20 2023 +0100 Remove old API calls from web_api_v1.c/h commit 7fbc1e699a7785ec837233b9562199ee6c7684da Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 24 15:32:04 2023 +0100 Add proper termination of stats charts thread commit 4c0fc05c8b14593bd7a0aa68f75a8a1205e04db4 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 24 15:31:36 2023 +0100 Add tests for logsmanag_config functions commit 4dfdacb55707ab46ed6c2d5ce538ac012574b27e Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 23 22:01:19 2023 +0100 Remove unused headers from logsmanagement.c commit b324ef396207c5c32e40ea9ad462bf374470b230 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 23 21:56:26 2023 +0100 Remove inline from get_X_dir() functions commit e9656e8121b66cd7ef8b5daaa5d27a134427aa35 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 23 21:50:32 2023 +0100 Proper termination when a signal is received commit b09eec147bdeffae7b268b6335f6ba89f084e050 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 23 20:12:13 2023 +0100 Refactor logs management config code in separate source files commit 014b46a5008fd296f7d25854079c518d018abdec Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 23 14:54:47 2023 +0100 Fix p_file_info_destroy() crash commit e0bdfd182513bb8d5d4b4b5b8a4cc248ccf2d64e Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 23 14:18:27 2023 +0100 Code refactoring and cleanup commit 6a61cb6e2fd3a535db150b01d9450f44b3e27b30 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Oct 20 14:08:43 2023 +0100 Fix 'source:all' queries commit 45b516aaf819ac142353e323209b7d01e487393f Author: Dim-P <dimitris1703@gmail.com> Date: Thu Oct 19 21:51:05 2023 +0100 Working 'source:...' queries and regular data queries (but not 'source:all') commit 8064b0ee71c63da9803f79424802f860e96326e5 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Oct 19 15:34:23 2023 +0100 Fix issue due to p_file_info_destroy() commit a0aacc9cd00cea60218c9bfd2b9f164918a1e3de Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 17 22:06:34 2023 +0100 Work on facet API changes commit 480584ff9040c07e996b14efb4d21970a347633f Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 16 21:43:06 2023 +0100 Add stats charts, running as separate thread commit 34d582dbe4bf2d8d048afab41681e337705bc611 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 16 16:24:02 2023 +0100 Add SSL cipher charts commit ced27ee4e2c981d291f498244f2eef2556a074fb Author: Dim-P <dimitris1703@gmail.com> Date: Sun Oct 15 21:33:29 2023 +0100 Add Response code family, Response code, Response code type, SSL protocol charts commit 40c4a1d91892d49b1e4e18a1c3c43258ded4014d Author: Dim-P <dimitris1703@gmail.com> Date: Sat Oct 14 00:48:48 2023 +0100 Add more web log charts commit 890ed3ff97153dd18d15df2d1b57a181bc498ca8 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Oct 13 22:14:11 2023 +0100 Add web log vhosts and ports charts commit 84733b6b1d353aff70687603019443610a8500c3 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Oct 12 21:40:16 2023 +0100 Add systemd charts commit 14673501e8f48560956f53d5b670bbe801b8f2ae Author: Dim-P <dimitris1703@gmail.com> Date: Wed Oct 11 00:28:43 2023 +0100 Add MQTT charts commit 366eb63b0a27dde6f0f8ba65120f34c18c1b21fd Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 10 21:46:19 2023 +0100 Complete kmsg changes. Reduce mem usage. Fix a dictionary key size bug commit 3d0216365a526ffbc9ce13a20c45447bfccb47d9 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 10 19:18:41 2023 +0100 Add kmsg Subsystem charts commit e61af4bb130a5cf5a5a78133f1e44b2b4c457b24 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 10 16:21:29 2023 +0100 Fix bug of wrong kmsg timestamps in case of use_log_timestamp == 0 commit 03d22e0b26bddf249aab431a4f977bbd5cde98ca Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 10 16:20:47 2023 +0100 Add kmsg charts, except for Subsystem and Device commit f60b0787537a21ed3c4cea5101fcddc50f3bc55a Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 10 13:12:13 2023 +0100 Initialise all docker events chart dimensions at startup commit 5d873d3439abaf3768530cb5b72c6b4ef6565353 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 10 00:53:35 2023 +0100 WIP: Add Docker events logs commit 2cc3d6d98f58fc3ab67a8da3014210b14d0926a1 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 9 18:52:27 2023 +0100 Use macros for num_of_logs_charts and custom_charts functions commit fbd48ad3c9af674601238990d74192427475f2e3 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 9 18:26:17 2023 +0100 Refactor custom charts code for clarity and speed commit a31d80b5dc91161c0d74b10d00bc4fd1e6da7965 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Oct 5 23:58:27 2023 +0100 Add first working iteration of custom charts commit b1e4ab8a460f4b4c3e2804e2f775787d21fbee45 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Oct 5 23:57:27 2023 +0100 Add more custom charts for Netdata error.log commit f1b7605e564da3e297942f073593cdd4c21f88e1 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Oct 5 20:39:40 2023 +0100 Convert collected_logs_* chart updates to macros commit 1459bc2b8bcd5ba21e024b10a8a5101048938f71 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Oct 5 19:11:54 2023 +0100 Use rrdset_timed_done() instead of duration_since_last_update for correct chart timings commit 876854c6ee7586a3eb9fdbf795bcc17a5fd1e6ad Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 3 21:53:14 2023 +0100 Fix some bugs in chart updates commit ae87508485499984bcb9b72bbc7d249c4168b380 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 3 21:32:55 2023 +0100 Functioning generic_chart_init() and generic_chart_update() commit 982a9c4108dbea9571c785b5ff8a9d1e5472066c Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 28 23:32:52 2023 +0100 Add support for multiple .conf files. Add stock examples. commit 8e8abd0731227eb3fb3c6bcd811349575160799e Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 28 17:38:30 2023 +0100 Add support for logsmanagement.d/default.conf commit 1bf0732217b1d9e9959e1507ea96fc2c92ffb2ff Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 28 14:31:03 2023 +0100 Add capabilities. Fix paths in logsmanagement.d.conf commit a849d5b405bb4e5d770726fe99413a4efa7df274 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 26 23:06:31 2023 +0100 Change logs_manag_config_load() commit b0d1783b996286cd87e0832bfb74c29a845d61fc Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 26 15:35:30 2023 +0100 Working unit tests and argument parsing commit 6da1b4267a4d58d3a7cbcca9507afe8158a2e324 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Sep 22 00:32:47 2023 +0300 Build logs-management.plugin successfully commit 9e30efe0422e4941f99cc66998d9f42e00a24676 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 21 16:13:21 2023 +0300 Fix print format specifier in web_client_api_request_v1_logsmanagement() * Modify CODEOWNERS * Update README.md Fix indentation * Change snprintfz() to stncpyz() in circ_buff_search(). Change remaining 'chart_name' to 'chartname'. * Replace SQLite version function with macro * Fix some codacy warnings * Update README.md * Update Fluent Bit to v2.1.10 * Remove some comments * Fix Fluent Bit shared library linking for armv7l and FreeBSD * Remove compression source files * Add prefix to rrd_api.h functions * Add more unit tests * Fix kmsg capabilities * Separate kmsg and systemd default paths * Fix some memory leaks and better termination of DB * Add iterative queries if quota is exceeded * Fix centos7 builds * Fix issue where SYSTEMD timestamps are not parsed * Fix logs management packaging. * Fix typo in DEB control file. * Fix indentation and missing new line at EOF * Clean up functions and update help * Fix 400 error when no queryable sources are available * Fix if_modified_since. Add FACET_MAX_VALUE_LENGTH * Add delta parameter and use anchor points in queries * Fix CodeQL #182 warning * Fix packaging issues. * Fix postinstall script for DEB packages. * Improve plugin shutdown speed * Fix docker events chart grouping * Fix functions evloop threads not terminating upon shutdown * Fix coverity issues * Fix logging * Replace 'Netdata error.log' with 'Netdata daemon.log' in 'default.conf' * Remove 'enabled = yes/no' config in logsmanagement.d.conf * Remove 'enabled = X' unused config from logsmanagement.d.conf --------- Co-authored-by: Austin S. Hemmelgarn <austin@netdata.cloud>
2023-11-27 17:55:14 +01:00
# logs management belongs to a different sub-package
%exclude %{_libexecdir}/%{name}/plugins.d/logs-management.plugin
%exclude %{_libdir}/%{name}/conf.d/logsmanagement.d.conf
%exclude %{_libdir}/%{name}/conf.d/logsmanagement.d
# Network viewer belongs to a different sub-package
%exclude %{_libexecdir}/%{name}/plugins.d/network-viewer.plugin
2019-09-16 10:53:06 +02:00
# CUPS belongs to a different sub package
%if %{_have_cups}
2019-09-16 10:53:06 +02:00
%exclude %{_libexecdir}/%{name}/plugins.d/cups.plugin
%package plugin-cups
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
Summary: The CUPS metrics collection plugin for the Netdata Agent
2019-09-16 10:53:06 +02:00
Group: Applications/System
Requires: %{name} = %{version}
2019-09-16 10:53:06 +02:00
%description plugin-cups
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
This plugin allows the Netdata Agent to collect metrics from the Common UNIX Printing System.
2019-09-16 10:53:06 +02:00
%pre plugin-cups
if ! getent group %{name} > /dev/null; then
groupadd --system %{name}
fi
2019-09-16 10:53:06 +02:00
%files plugin-cups
%attr(0750,root,netdata) %{_libexecdir}/%{name}/plugins.d/cups.plugin
%endif
netdata/packaging: Netdata binary packages generation - spec file refinement, support for nightlies (RPM) (#6369) Detailed list of changes: * netdata/packaging: First round of netdata.spec refactoring - package dependencies - Remove freeipmi/nfacct plugin flags. We auto-detect all plugins by decision - Start refactor of package dependencies - Add missing dependencies, with respect to distro peculiarities - Adjust existing dependencies, so that distro-specific package names is applied * netdata/packaging: add packaging trigger mechanism on binary-packages-specfile-cleanup to help testing * netdata/packaging: WIP - Allow building nightly versions for RPM (Still investigating the right version scheme) * netdata/packaging: Attempt to fix syntax errors - wow travis, mercy * netdata/packaging: tiny nits and fixes 1) there was a syntax error in version definition 2) bring default deploy repo name at the top, then overwrite when latest is published 3) Leave a comment * netdata/packaging: Move these core package requirements to the right section * netdata/packaging: libuv requires >= 1, missed to add that on devel libs * netdata/packaging: some comments, also when you put logrotate in our conf directory, link it to actual log rotate * netdata/packaging: Adjust configure options on spec file (align with netdata-installer.sh) * netdata/packaging: In order to properly support packaging both latest and stable releases, you need to star that extraction part, folder name contains the version with the hash that we cant tell * netdata/packaging: until we fix versioning, bring the original unprocessed spec file and pass the version we like in * netdata/packaging: fix version string in the spec file * netdata/packaging: Replace source path, we need to work with whatever we downloaded (to be refined) * netdata/packaging: [ci skip] you mixed the paths, reverse them * netdata/packaging: [ci skip] attempt to fix source path when needed * netdata/packaging: fixes and nits 1) generalize the spec file refinement method 2) Do both replacement that way 3) Adjust file names and paths * netdata/packaging: Replace Source0 explicitly and also make sure you remove extra new lines that may confuse the replacement later * netdata/packaging: [ci skip] move env outside, add some more log * netdata/packaging: [ci skip] adjust logic of replacing tag lines in spec file * netdata/packaging: [ci skip] Alas, fetch the archive, rename the structure to the new version, repack and proceed * netdata/packaging: [ci skip] Extract to specific path * netdata/packaging: [ci skip] replace problematic tar call with the respective pythonized one * netdata/packaging: [ci skip] Add new friendly octal format for chmod * netdata/packaging: [ci skip] more checks * netdata/packaging: [ci skip] dont chmod, chown the whole folder after extraction * netdata/packaging: nit * netdata/packaging: [ci skip] attempt to fix permissions differently * netdata/packaging: [ci skip] Another hack, attempt to fix permissions on the host directly * netdata/packaging: [ci skip] fine, do the move also on the host, pointless to run all through the container * netdata/packaging: [ci skip] Do the move through the container. Also, move a more specific folder * netdata/packaging: [ci skip] move as w00t * netdata/packaging: [ci skip] fix * netdata/packaging: sync permissions handling, round two * netdata/packaging: scratch those hacks, we should do latest differently * netdata/packaging: [ci skip] Set up rpm version string depending on whether we are on latest or not * netdata/packaging: [ci skip] Branch the code here, latest build up should be on the commit rather the tar files * netdata/packaging: Attempt to handle latest version build up * netdata/packaging: [ci skip] Dont continue processing if the file was not generated. Also do the tagging before autoreconf * netdata/packaging: [ci skip] fixes and nits * netdata/packaging: [ci skip] When doing annotated tags, you need to provide a message otherwise an editor pops up and will block the build * netdata/packaging: on the latest code case go all the way host level operations * netdata/packaging: [ci skip] Do not modify version, no longer need it because we properly generated the package with the right version * netdata/packaging: [ci skip] fix sensors line, you missed the Recommends keyword * netdata/packaging: Some code style (remove tabification from some tags) and also remove Recommends, we start with required packages for build and runtime and then we document further needs * netdata/packaging: [ci skip] Make sure you get epel in there, its needed * netdata/packaging: [ci skip] Fix bogus date * netdata/packaging: [ci skip] add these packages to include functionality * netdata/packaging: [ci skip] more fine grained dependency handling * netdata/packaging: [ci skip] Dependency hell - do not depend on libnetacctfilter if on el/7 * netdata/packaging: [ci skip] Be serious, that is not what you do when building the package silly * netdata/packaging: [ci skip] define directory attributes too * netdata/packaging: [ci skip] mystery unfold - comment out as we need to figure out how to handle missing directories that our installer creates if necessary * netdata/packaging: [ci skip] Make sure you properly set deployment repo based on commit message * netdata/packaging: [ci skip] Install these packages for specific versions, remove optimisations for now * netdata/packaging: [ci skip] Make package yanking flexible, so that we can manage both netdata and netdata-edge cleanup properly * netdata/packaging: [ci skip] Actually, set user at travis layer and let the script consume it only. We need to be sure the same user is used on yanking and the deployment process * netdata/packaging: [ci skip] wow pkatsoul * netdata/packaging: Dont forget to install some of the enabled plugins * netdata/packaging: nfacct.plugin not really working on rhel, disable temporarily * netdata/packaging: include installed directories to package * netdata/packaging: [ci skip] nits * netdata/packaging: fixes * netdata/packaging: [ci skip] dont add ghost files * netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there * netdata/packaging: [ci skip] Extreme - override _libexecdir macro * Revert "netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there" This reverts commit 320102c96284e4622266f6f089d6ce87319976f3. That wasnt really the problem here * netdata/packaging: [ci skip] Include contents of dir here * netdata/packaging: fixes * netdata/packaging: [ci skip] Fixes and additions - Tighter permissions for some files - Introduce go.d plugin install (likely broken like this, dont recall if bash style code is fine here) - Raise the path overrides to the spec level, otherwise we build with the overrides and package with the defaults * netdata/packaging: [ci skip] Missed an invalid variable. These files are under our current path, no need for complexity * netdata/packaging: [ci skip] bring sha method onboard * netdata/packaging: [ci skip] Wrong path provided, should be under build root * netdata/packaging: [ci skip] Add registry directory * netdata/packaging: [ci skip] add missing config directory definitions * netdata/packaging: [ci skip] Fix missing dirs * netdata/packaging:[ci fix] hos * netdata/packaging: [ci skip] Fixes and additions - Change versioning to v1.15.0.114 from v1.15.0114 - Add CUPS, Xenstat, json-c * netdata/packaging: [ci skip] fix package dependencies on the builder setup, otherwise spec will fail * netdata/packaging: [ci skip] limit xenstat to suse and fedora for now * netdata/packaging: [ci skip] separate fedora and suse cases, unfortunately suse has different package names.... * netdata/packaging: [ci skip] yajl is not the same package everywhere, of course * netdata/packagin: [ci skip] skip xenstat for now * netdata/packaging: [ci skip] remove the vvvvvvvvv * netdata/packaging: [ci skip] one more fix attempt * netdata/packaging: [ci skip] Spec file extraction is different when building from stable. We *must* fetch it from the tarball rather than the local one * netdata/packaging: [ci skip] spec_file defined on all cases, latest or stable. Also move latest spec file copy after make dist operation, that is where is suppose to be * netdata/packaging: [ci skip] Tag source with the local version, as we build upon the very latest * netdata/packaging: oopsie -- remove json-c from that place, it was forgotten * netdata/packaging: fix packaging, even though devel is consistent between fedora and suse, the binary one is not .... (also fix default perms to be root:netdata rather root:root) * netdata/packaging: Suse love - again, libuuid-devel same, but libuuid is named libuuid1 on suse...... * netdata/packaging: [ci skip] libcap same.... * netdata/packaging: [ci skip] use the noreplace directive for the configuration files * netdata/packaging: [ci skip] Bring back master as the triggering repository * netdata/packaging: [ci skip] attempt to enable/disable service where necessary. Default preset action requires further setup, so we override that * Revert "netdata/packaging: [ci skip] Bring back master as the triggering repository" This reverts commit 9b25a622dc5f12b1539f6863bab52d7bb225fd8d. ** Reverting as we need to test further the service enable action ** * netdata/packaging: [ci skip] revert this change - not the right way, we have empty files * netdata/packaging: [ci skip] Add daemon-reload option, to make sure systemd learns about the newly installed service * netdata/packaging: [ci skip] Attempt to silence codacy by factoring out the few small methods for common usage, then kill directories to reduce complexity adn thats it * netdata/packaging: [ci skip] Just making sure codacy reprocess everything * netdata/packaging: [ci skip] missed one adjustment * netdata/packaging: python style - print shouldnt have space before open parenthesis. Also, add restart on all cases on the spec file * netdata/packaging: [ci skip] fix syntax * netdata/packaging: [ci skip] syntax fixes 2 * netdata/packaging: [ci skip] another miss * netdata/packaging: [ci skip] You need to explicitly trigger a restart, apparently * netdata/packaging: [ci skip] override packaging user definition temporarily, to get things going on testing
2019-07-03 09:18:17 +02:00
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%if 0%{?_have_freeipmi}
%package plugin-freeipmi
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
Summary: The FreeIPMI metrics collection plugin for the Netdata Agent
Group: Applications/System
Requires: freeipmi
Requires: %{name} = %{version}
%description plugin-freeipmi
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
This plugin allows the Netdata Agent to collect metrics from hardware using FreeIPMI.
%pre plugin-freeipmi
if ! getent group %{name} > /dev/null; then
groupadd --system %{name}
fi
%files plugin-freeipmi
%attr(4750,root,netdata) %{_libexecdir}/%{name}/plugins.d/freeipmi.plugin
%endif
%if %{_have_nfacct}
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%package plugin-nfacct
Summary: The NFACCT metrics collection plugin for the Netdata Agent
Group: Applications/System
Requires: %{name} = %{version}
Conflicts: %{name} < %{version}
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%description plugin-nfacct
This plugin allows the Netdata Agent to collect metrics from the firewall using NFACCT objects.
%pre plugin-nfacct
if ! getent group %{name} > /dev/null; then
groupadd --system %{name}
fi
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%files plugin-nfacct
%attr(4750,root,netdata) %{_libexecdir}/%{name}/plugins.d/nfacct.plugin
%endif
%package plugin-chartsd
Summary: The charts.d metrics collection plugin for the Netdata Agent
Group: Applications/System
Requires: bash
Requires: %{name} = %{version}
Conflicts: %{name} < %{version}
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%if 0%{?centos_ver} != 7
Suggests: apcupsd
Suggests: iw
Suggests: sudo
%endif
%description plugin-chartsd
This plugin adds a selection of additional collectors written in shell script to the Netdata Agent.
It includes collectors for APCUPSD, LibreSWAN, OpenSIPS, and Wireless access point statistics.
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%pre plugin-chartsd
if ! getent group %{name} > /dev/null; then
groupadd --system %{name}
fi
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%files plugin-chartsd
%defattr(0750,root,netdata,0750)
%{_libexecdir}/%{name}/plugins.d/charts.d.plugin
%{_libexecdir}/%{name}/plugins.d/charts.d.dryrun-helper.sh
%{_libexecdir}/%{name}/charts.d/
%defattr(0644,root,netdata,0755)
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%{_libdir}/%{name}/conf.d/charts.d.conf
%{_libdir}/%{name}/conf.d/charts.d/
%if 0%{?_have_ebpf}
%package plugin-ebpf
Summary: The eBPF metrics collection plugin for the Netdata Agent
Group: Applications/System
Requires: %{name} = %{version}
Conflicts: %{name} < %{version}
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%if 0%{?centos_ver} != 7
Recommends: %{name}-plugin-apps = %{version}
Recommends: %{name}-ebpf-legacy-code >= %{version}
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%else
Requires: %{name}-plugin-apps = %{version}
Requires: %{name}-ebpf-legacy-code >= %{version}
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%endif
%description plugin-ebpf
This plugin allows the Netdata Agent to use eBPF code to collect more detailed kernel-level metrics for the system.
%pre plugin-ebpf
if ! getent group %{name} > /dev/null; then
groupadd --system %{name}
fi
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%files plugin-ebpf
%defattr(4750,root,netdata,4750)
%{_libexecdir}/%{name}/plugins.d/ebpf.plugin
%defattr(0644,root,netdata,0755)
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%{_libdir}/%{name}/conf.d/ebpf.d.conf
%{_libdir}/%{name}/conf.d/ebpf.d
%package ebpf-legacy-code
Summary: Compiled eBPF legacy code for the Netdata eBPF plugin
Group: Applications/System
Requires: %{name}-plugin-ebpf = %{version}
Conflicts: %{name} < %{version}
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%description ebpf-legacy-code
This package provides the pre-compiled eBPF legacy code for use by the Netdata eBPF plugin.
This code is only needed when using the eBPF plugin with kernel versions before 5.10.
%pre ebpf-legacy-code
if ! getent group %{name} > /dev/null; then
groupadd --system %{name}
fi
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%files ebpf-legacy-code
%defattr(0640,root,netdata,0640)
%{_libexecdir}/%{name}/plugins.d/ebpf.d/*.o
%endif
%package plugin-pythond
Summary: The python.d metrics collection plugin for the Netdata Agent
Group: Applications/System
Requires: %{name} = %{version}
Conflicts: %{name} < %{version}
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%if 0%{?centos_ver} == 7 || 0%{?centos_ver} == 6
Requires: python
%else
Requires: python3
%endif
%if 0%{?centos_ver} != 7
Suggests: sudo
%endif
%description plugin-pythond
This plugin adds a selection of additional collectors written in Python to the Netdata Agent.
Many of the collectors provided by this package are also available in netdata-plugin-go. In msot cases, you probably
want to use those versions instead of the Python versions.
%pre plugin-pythond
if ! getent group %{name} > /dev/null; then
groupadd --system %{name}
fi
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%files plugin-pythond
%defattr(0750,root,netdata,0750)
%{_libexecdir}/%{name}/plugins.d/python.d.plugin
%{_libexecdir}/%{name}/python.d
%defattr(0644,root,netdata,0755)
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%{_libdir}/%{name}/conf.d/python.d.conf
%{_libdir}/%{name}/conf.d/python.d
%package plugin-go
Summary: The go.d metrics collection plugin for the Netdata Agent
Group: Applications/System
Requires: %{name} = %{version}
Conflicts: %{name} < %{version}
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%if 0%{?centos_ver} != 7
Suggests: nvme-cli
Suggests: sudo
%endif
%description plugin-go
This plugin adds a selection of additional collectors written in Go to the Netdata Agent
A significant percentage of the application specific collectors provided by Netdata are part of this plugin,
so most users will want it installed.
%pre plugin-go
if ! getent group %{name} > /dev/null; then
groupadd --system %{name}
fi
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%files plugin-go
%defattr(0750,root,netdata,0750)
# CAP_NET_ADMIN needed for WireGuard collector
# CAP_NET_RAW needed for ping collector
%caps(cap_dac_read_search,cap_net_admin,cap_net_raw=eip) %{_libexecdir}/%{name}/plugins.d/go.d.plugin
%defattr(0644,root,netdata,0755)
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%{_libdir}/%{name}/conf.d/go.d.conf
%{_libdir}/%{name}/conf.d/go.d
%package plugin-apps
Summary: The per-application metrics collection plugin for the Netdata Agent
Group: Applications/System
Requires: %{name} = %{version}
Conflicts: %{name} < %{version}
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%description plugin-apps
This plugin allows the Netdata Agent to collect per-application and per-user metrics without using cgroups.
%pre plugin-apps
if ! getent group %{name} > /dev/null; then
groupadd --system %{name}
fi
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%files plugin-apps
%defattr(0750,root,netdata,0750)
# CAP_DAC_READ_SEARCH and CAP_SYS_PTRACE needed for data collection by the plugin.
%caps(cap_dac_read_search,cap_sys_ptrace=ep) %{_libexecdir}/%{name}/plugins.d/apps.plugin
%defattr(0644,root,netdata,0755)
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%{_libdir}/%{name}/conf.d/apps_groups.conf
%package plugin-slabinfo
Summary: The slabinfo metrics collector for the Netdata Agent
Group: Applications/System
Requires: %{name} = %{version}
Conflicts: %{name} < %{version}
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%description plugin-slabinfo
This plugin allows the Netdata Agent to collect perfromance and utilization metrics for the Linux kernels SLAB allocator.
%pre plugin-slabinfo
if ! getent group %{name} > /dev/null; then
groupadd --system %{name}
fi
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%files plugin-slabinfo
%defattr(0750,root,netdata,0750)
# CAP_DAC_READ_SEARCH needed to access the files the plugin reads to collect data.
%caps(cap_dac_read_search=ep) %{_libexecdir}/%{name}/plugins.d/slabinfo.plugin
%package plugin-perf
Summary: The perf metrics collector for the Netdata Agent
Group: Applications/System
Requires: %{name} = %{version}
Conflicts: %{name} < %{version}
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%description plugin-perf
This plugin allows the Netdata to collect metrics from the Linux perf subsystem.
%pre plugin-perf
if ! getent group %{name} > /dev/null; then
groupadd --system %{name}
fi
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%files plugin-perf
%defattr(0750,root,netdata,0750)
# Either CAP_SYS_ADMIN or CAP_PERFMON needed for data collection
# PERFMON is newer, so only try to use it on platforms which support it.
%if 0%{?centos_ver} >= 9 || 0%{?fedora} >= 36
%caps(cap_perfmon=ep) %{_libexecdir}/%{name}/plugins.d/perf.plugin
%else
%caps(cap_sys_admin=ep) %{_libexecdir}/%{name}/plugins.d/perf.plugin
%endif
%package plugin-debugfs
Summary: The debugfs metrics collector for the Netdata Agent
Group: Applications/System
Requires: %{name} = %{version}
Conflicts: %{name} < %{version}
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%description plugin-debugfs
This plugin allows the Netdata Agent to collect Linux kernel metrics exposed through debugfs.
%pre plugin-debugfs
if ! getent group %{name} > /dev/null; then
groupadd --system %{name}
fi
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
%files plugin-debugfs
%defattr(0750,root,netdata,0750)
# CAP_DAC_READ_SEARCH required for data collection.
%caps(cap_dac_read_search=ep) %attr(0750,root,netdata) %{_libexecdir}/%{name}/plugins.d/debugfs.plugin
%package plugin-systemd-journal
Summary: The systemd-journal plugin for the Netdata Agent
Group: Applications/System
Requires: %{name} = %{version}
Conflicts: %{name} < %{version}
%description plugin-systemd-journal
This plugin allows the Netdata Agent to present entries from the systemd
journal on Netdata Cloud or the local Agent Dashboard.
%pre plugin-systemd-journal
if ! getent group %{name} > /dev/null; then
groupadd --system %{name}
fi
%files plugin-systemd-journal
%defattr(0750,root,netdata,0750)
# CAP_DAC_READ_SEARCH required for data collection.
%caps(cap_dac_read_search=ep) %attr(0750,root,netdata) %{_libexecdir}/%{name}/plugins.d/systemd-journal.plugin
%if %{_have_xenstat}
%package plugin-xenstat
Summary: The xenstat plugin for the Netdata Agent
Group: Applications/System
Requires: %{name} = %{version}
Conflicts: %{name} < %{version}
%description plugin-xenstat
This plugin allows Netdata to collect metrics from the Xen Hypervisor.
%pre plugin-xenstat
if ! getent group %{name} > /dev/null; then
groupadd --system %{name}
fi
%files plugin-xenstat
%defattr(0750,root,netdata,0750)
# SUID needed for data collection
%attr(4750,root,netdata) %{_libexecdir}/%{name}/plugins.d/xenstat.plugin
%endif
Logs Management (#13291) This PR adds the logs-management external plugin. See the included README for an extensive list of features. ------------------------------------------------------------------------------------- * Add proper status return in JSON response of functions * Add column info to functions * Escape special characters when returning JSON response * Add proper functions help and defaults. Fix help not working * Add 'logs_management_meta' object in functions results * Fix compiler warnings * Replace tabs with 3 spaces in web_client_api_request_v1_logsmanagement_sources() * Add 'sources' in functions to display list of log sources * Update functions column values for logs * Update chart titles and remove '/s' from units * Add support for compound queries in circular buffers * Refactor circ_buff_search() to get rid of circ_buff_search_compound() * Fix incorrect docker events nano timestamp padding * Fixed botched rebasing * Replace get_unix_time_ms() with now_realtime_msec() * Remove binary generation from Fluent-Bit lib build * Fix compiler warnings due to new timestamp type * Remove STDIN and STDOUT support from Fluent-Bit library * Initial support for FLB_KMSG kernel logs collection * Add kernel logs charts * Add kernel logs subsystem and device charts * Skip collection of pre-existing logs in kmsg ring buffer * Add example of custom kmsg charts * Add extra initialization error logs * Fix bug of Docker Events collector failure disabling whole logs management engine * Remove reduntant FLB output code * Remove some obsolete TODO comments * Remove some commented out error/debug prints * Disable some Fluent-Bit config options not required * Make circular buffer spare items option configurable * Add DB mode configuration option * Replace p_file_infos_arr->data[i] with p_file_info in db_api.c * Remove db_loop due to all function calls being synchronous * Add initial README.md * Add DB mode = none changes * Add a simple webpage to visualize log query results * Add support for source selection to logs_query.html * Add option to query multiple log sources * Mark non-queryable sources as such in logs_query.html * Add option to use either GET or functions request in logs_query.html * Install logs_query.html when running stress tests * Update README.md requirements * Change installer behavior to build logs management by default * Disable logs management at runtime by default * Add global db mode configuration in 'logs management' config section * Split logsmanagement.conf into required & optional sections * Remove --enable-logsmanagement from stress test script * Add global config option for 'circular buffer max size MiB' * Add global config option for 'circular buffer drop logs if full' * Update 'General Configuration' in README.md * Add global config option for remaining optional settings * Add systemd collector requirements to TOC * README: Convert general configuration to table * README: Fix previous botched commit * Enable logs management by default when building for stress testing * Move logging to collector.log from error.log * Fix contenttype compilation errors * Move logging to collector.log in plugin_logsmanagement.c * Rename 'rows' to 'records' in charts * Add Netdata error.log parsing * Add more dashboard descriptions * Sanitize chart ids * Attempt to fix failing CI * Update README.md * Update README.md * Another attempt to fix CI failures * Fix undefined reference to 'uv_sleep' on certain platforms * Support FLB forward input and FLB output plugins. Squashed commit of the following: commit 55e2bf4fb34a2e02ffd0b280790197310a5299f3 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Apr 13 16:41:09 2023 +0300 Remove error.log from stock config commit bbdc62c2c9727359bc3c8ef8c33ee734d0039be7 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Apr 13 16:37:48 2023 +0300 Add cleanup of Fluent Bit outputs in p_file_info_destroy() commit 09b0aa4268ec1ccef160c99c5d5f31b6388edd28 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Apr 13 14:34:17 2023 +0300 Some code and config cleanup commit 030d074667d5ee2cad10f85cd836ca90e29346ad Author: Dim-P <dimitris1703@gmail.com> Date: Thu Apr 13 13:04:08 2023 +0300 Enable additional Fluent Bit output plugins for shared library commit 490aa5d44caa38042521d24c6b886b8b4a59a73c Author: Dim-P <dimitris1703@gmail.com> Date: Thu Apr 13 01:33:19 2023 +0300 Add initialization of Fluent Bit user-configured outputs commit c96e9fe9cea96549aa5eae09d0deeb130da02793 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Apr 4 23:13:16 2023 +0100 Complete read of parameters for FLB outputs config commit 00988897f9b86d1ecc5c141b19df7ad7d74f7e96 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Apr 3 19:43:31 2023 +0100 Update README.md commit 6deea5399c2707942aeaa51408f999ca45dfd351 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Apr 3 16:02:28 2023 +0100 Refactor Syslog_parser_config_t and add Flb_socket_config_t commit 7bf998a4c298bbd489ef735c56a6e85a137772c9 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Apr 3 14:19:57 2023 +0100 Update README.md commit c353d194b12c54f134936072ebaded0424d73cc0 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Mar 31 14:52:57 2023 +0100 Update README.md commit 6be726eaff3738ba7884de799aa52949833af65a Author: Dim-P <dimitris1703@gmail.com> Date: Fri Mar 31 13:06:29 2023 +0100 Update README. Fix docker_events streaming commit 6aabfb0f1ef0529a7a0ecbaf940bc0952bf42518 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Mar 30 21:27:45 2023 +0100 Fix stuck in infinite loop bug for FLB_GENERIC, FLB_WEB_LOG and FLB_SERIAL remote log sources commit eea6346b708cc7a5ce6e2249366870f4924eabae Author: Dim-P <dimitris1703@gmail.com> Date: Thu Mar 30 21:04:12 2023 +0100 Remove callback that searches for streamed p_file_info match commit bc9c5a523b0b0ab5588adbff391a43ba8d9a0cdf Author: Dim-P <dimitris1703@gmail.com> Date: Thu Mar 30 15:51:39 2023 +0100 Basic streaming works commit 4c80f59f0214bc07895f0b2edca47cb02bc06420 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Mar 28 22:05:22 2023 +0100 WIP commit eeb37a71b602fb0738fe8077ccddc0a8ce632304 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Mar 27 22:52:09 2023 +0100 Add generic forward streaming input commit 1459b91847c80c4d97de96b75b00771039458ad6 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Mar 23 18:50:14 2023 +0000 FLB_FORWARD: WIP * Add number of logs per item in DB and in queries response * Fix wrong number of lines stored in DB for web logs * Refactor number of logs parsers and charts code * Add option to toggle number of collected logs metrics and charts * Disable kmsg log collector by default * Fix logs_query.html to work with any server ip * Fix regressed wrong number of web log lines bug * Change query quota type from size_t to long long * Update alpine version when searching for fts-dev requirements * Update query results to return both requested and actual quota * Fix bug of circ buffs not being read if head == read but not empty * Squashed commit of the following: commit 34edb316a737f3edcffcf8fa88a3801599011495 Author: Dim-P <dimitris1703@gmail.com> Date: Thu May 4 20:02:36 2023 +0100 Comment out some debug prints commit 51b9b87a88516186530f5b4b65f785b543fefe8c Author: Dim-P <dimitris1703@gmail.com> Date: Fri Apr 28 19:21:54 2023 +0100 Fix wrong filenames in BLOBS_TABLE after rotation commit 6055fc2893b48661af324f20ee61511a40abbc02 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Apr 28 12:22:04 2023 +0100 Add chart showing number of circular buffer items commit 0bb5210b0847f4b7596f633ec96fc10aa8ebc791 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Apr 25 16:47:29 2023 +0300 Various fixes. Fix num_lines calculation. Add debug prints for circ buffers. Remove circ buff spare items option. Fix calculation of circ buff memory consumption. Add buff_realloc_rwlock for db_mode = none case. Fix circ buff read to be done correctly when buff is full. commit f494af8c95be84404c7d854494d26da3bcbd3ad7 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Apr 21 16:03:50 2023 +0300 Fix freez() on non-malloced address commit cce6d09e9cf9b847aface7309643e2c0a6041390 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Apr 21 15:41:25 2023 +0300 Add option to dynamically expand circ buffs when full * Use log timestamps when possible, instead of collection timestamps. Also, add config options for Fluent Bit engine and remove tail_plugin. Squashed commit of the following: commit b16a02eb6e3a90565c90e0a274b87b123e7b18e5 Author: Dim-P <dimitris1703@gmail.com> Date: Tue May 16 19:38:57 2023 +0100 Add Fluent Bit service config options to netdata.conf. Add monitoring of new log file fluentbit.log commit ab77c286294548ea62a3879ac0f8b8bbfe6a0687 Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 15 21:25:17 2023 +0100 Remove some debug prints commit 46d64ad2434e69b1d20720297aec1ddb869e1f84 Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 15 21:19:32 2023 +0100 Fix null values in charts commit 8ec96821d6a882f28cbd19244ebdfc86c807d2f4 Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 15 17:43:04 2023 +0100 Update README.md to reflect log timestamp changes commit 079a91858cf9db2f74711581235bc17eb97c7dad Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 15 16:23:14 2023 +0100 Add configurable option for 'update timeout' commit 72b5e2505d4657fcbb5ccb6eeee00c45eb0b51ff Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 15 16:05:08 2023 +0100 Revert logsmanagement.conf to logs-manag-master one commit 70d0ea6f8d272fff318aa3095d90a78dcc3411a7 Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 15 16:02:00 2023 +0100 Fix bug of circ buff items not marked as done commit 5716420838771edb7842be4669bf96235b15cf71 Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 15 16:01:41 2023 +0100 Fix do_custom_charts_update() to work for all log sources commit a8def8f53fd25c3efa56ef27e267df3261913a8e Author: Dim-P <dimitris1703@gmail.com> Date: Fri May 12 18:20:20 2023 +0100 Remove GENERIC and WEB_LOG cases. Remove tail_plugin.c/h. Remove generic_parser(). commit 1cf05966e33491dbeb9b877f18d1ea8643aabeba Author: Dim-P <dimitris1703@gmail.com> Date: Fri May 12 16:54:59 2023 +0100 Fix FLB_GENERIC and FLB_SERIAL to work with new timestamp logic commit df3266810531f1af5f99b666fbf44c503b304a39 Author: Dim-P <dimitris1703@gmail.com> Date: Fri May 12 14:55:04 2023 +0100 Get rid of *_collect() functions and restructure plugin_logsmanagement workers commit 3eee069842f3257fffe60dacfc274363bc43491c Author: Dim-P <dimitris1703@gmail.com> Date: Fri May 12 14:28:33 2023 +0100 Fix wrong order of #define _XOPEN_SOURCE 700 in parser.c commit 941aa80cb55d5a7d6fe8926da930d9803be52312 Author: Dim-P <dimitris1703@gmail.com> Date: Thu May 11 22:27:39 2023 +0100 Update plugin_logsmanagement_web_log to use new timestamp logic and to support delayed logs. Refactor req_method metrics code. commit 427a7d0e2366d43cb5eab7daa1ed82dfc3bc8bc8 Author: Dim-P <dimitris1703@gmail.com> Date: Tue May 9 20:26:08 2023 +0100 Update plugin_logsmanagement_kernel to use new timestamp logic and to support delayed charts commit a7e95a6d3e5c8b62531b671fd3ec7b8a3196b5bb Author: Dim-P <dimitris1703@gmail.com> Date: Tue May 9 15:22:14 2023 +0100 Update plugin_logsmanagement_systemd to use new timestamp logic and support delayed charts commit 48237ac2ce49c82abdf2783952fd9f0ef05d72e1 Author: Dim-P <dimitris1703@gmail.com> Date: Tue May 9 13:29:44 2023 +0100 Refactor number of collected logs chart update code commit a933c8fcae61c23fa0ec6d0074526ac5d243cf16 Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 8 22:11:19 2023 +0100 Update plugin_logsmanagement_docker_ev to use new timestamp logic and support delayed charts commit 5d8db057155affd5cb721399a639d75a81801b7f Author: Dim-P <dimitris1703@gmail.com> Date: Fri May 5 15:18:06 2023 +0100 Change some Fluent Bit collectors to use log timestamps instead of collection timestamps * Remove some unused defines and typedefs * Improve flb_init() * Update file-level doxygen. Add SPDX license declaration. * Better handling of termination of Fluent Bit * Better handling of DB errors. Various fixes. Squashed commit of the following: commit f55feea1274c3857eda1e9d899743db6e3eb5bf5 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Jun 6 13:28:00 2023 +0100 Fix web log parsing in case of lines terminated by \r commit 9e05758a4ecfac57a0db14757cff9536deda51d8 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Jun 5 20:42:05 2023 +0100 Fix warnings due to -Wformat-truncation=2 commit 63477666fa42446d74693aae542580d4e1e81f03 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Jun 5 16:48:45 2023 +0100 Autodiscovery of Netdata error.log based on netdata_configured_log_dir commit cab5e6d6061f4259172bbf72666e8b4a3a35dd66 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Jun 5 16:24:39 2023 +0100 Replace Forward config default string literals with macros commit 4213398031dbb53afbc943d76bf7df202d12bf6f Author: Dim-P <dimitris1703@gmail.com> Date: Mon Jun 5 15:56:29 2023 +0100 Proper cleanup of flb_lib_out_cb *callback in case of error commit f76fd7cc7bc2d0241e4d3517f61ae192d4246300 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Jun 5 15:36:07 2023 +0100 Proper termination of Forward input and respective log sources in case of error commit 3739fd96c29e13298eb3a6e943a63172cdf39d5f Author: Dim-P <dimitris1703@gmail.com> Date: Thu Jun 1 21:19:56 2023 +0100 Merge db_search() and db_search_compound() commit fcface90cb0a6df3c3a2de5e1908b1b3467dd579 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Jun 1 19:17:26 2023 +0100 Proper error handling in db_search() and db_search_compound(). Refactor the code too. commit c10667ebee2510a1af77114b3a7e18a0054b5dae Author: Dim-P <dimitris1703@gmail.com> Date: Thu Jun 1 14:23:34 2023 +0100 Update DB mode and dir when switching to db_mode_none commit d37d4c3d79333bb9fa430650c13ad625458620e8 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Jun 1 12:56:13 2023 +0100 Fix flb_stop() SIGSEGV commit 892e231c68775ff1a1f052d292d26384f1ef54b1 Author: Dim-P <dimitris1703@gmail.com> Date: Tue May 30 21:14:58 2023 +0100 Switch to db_writer_db_mode_none if db_writer_db_mode_full encounters error commit f7a0c2135ff61d3a5b0460ec5964eb6bce164bd6 Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 29 21:41:21 2023 +0100 Complete error handling changes to db_init(). Add some const type qualifiers. Refactor some code for readability commit 13dbeac936d22958394cb1aaec394384f5a93fdd Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 29 17:14:17 2023 +0100 More error handling changes in db_init(). Change some global default settings if stress testing. commit eb0691c269cd09054190bf0ee9c4e9247b4a2548 Author: Dim-P <dimitris1703@gmail.com> Date: Fri May 26 23:29:12 2023 +0100 Better handling of db writer threads errors. Add db timings charts * Fix mystrsep() replaced by strsep_skip_consecutive_separators() * Fix older GCC failure due to label before declaration * Fix failed builds when using libuv <= v1.19 * Fix some Codacy warnings * Fix warning: implicit declaration of function ‘strsep’ * Use USEC_PER_SEC instead of 1000000ULL * Use UUID_STR_LEN instead of GUID_LEN + 1 * Combine multiple 'ln -sf' Docker instructions to one * Update README with systemd development libraries requirement * Comment out mallocz() success checkes in parser_csv() * Fix shellcheck warnings * Remove asserts for empty SYSLOG_IDENTIFIER or PID * Fix FreeBSD failing builds * Fix some more shellcheck warnings * Update Alpine fts-dev required packages * First changes to use web log timestamp for correct metrics timings * Initial work to add test_parse_web_log_line() unit test * Complete test_parse_web_log_line() tests * Improve parse_web_log_line() for better handling of \n, \r, double quotes etc. * Fix 'Invalid TIME error when timezone sign is negative * Add more logs to compression unit test case * Misc read_last_line() improvements * Fix failing test_auto_detect_web_log_parser_config() when test case terminated without '\n' * Remove unused preprocessor macro * Factor out setup of parse_config_expected_num_fields * Add test for count_fields() * Add unit test for read_last_line() * Fix a read_last_line() bug * Remove PLUGIN[logsmanagement] static thread and update charts synchronously, right before data buffering * Fix web log parser potential SIGSEGV * Fix web log metrics bug where they could show delayed by 1 collection interval * WIP: Add multiline support to kmsg logs and fix metric timings * Fix kmsg subsystem and device parsing and metrics * Add option 'use log timestamp' to select between log timestamps or collection timestamps * Add 'Getting Started' docs section * Move logs management functions code to separate source files * Add 'Nginx access.log' chart description * Remove logsmanagement.plugin source files * Fix some memory leaks * Improve cleanup of logsmanagement_main() * Fix a potential memory leak of fwd_input_out_cb * Better termination and cleanup of main_loop and its handles * Fix main_db_dir access() check bug * Avoid uv_walk() SIGSEGV * Remove main_db_dir access() check * Better termination and cleanup of DB code * Remove flb_socket_config_destroy() that could cause a segmentation fault * Disable unique client IPs - all-time chart by default * Update README.md * Fix debug() -> netdata_log_debug() * Fix read_last_line() * Fix timestamp sign adjustment and wrong unit tests * Change WEB_CLIENT_ACL_DASHBOARD to WEB_CLIENT_ACL_DASHBOARD_ACLK_WEBRTC * Do not parse web log timestamps if 'use_log_timestamp = no' * Add Logs Management back into buildinfo.c * Update README.md * Do not build Fluent Bit executable binary * Change logs rate chart to RRDSET_TYPE_LINE * Add kludge to prevent metrics breaking due to out of order logs * Fix wrong flb_tmp_buff_cpy_timer expiration * Refactor initialization of input plugin for local log sources. * Rename FLB_GENERIC collector to FLB_TAIL. * Switch 'Netdata fluentbit.log' to disabled by default * Add 'use inotify' configuration option * Update in README.md * Add docker event actions metrics * Update README.md to include event action chart * Remove commented out PLUGIN[logsmanagement] code block * Fix some warnings * Add documentation for outgoing log streaming and exporting * Fix some code block formatting in README.md * Refactor code related to error status of log query results and add new invalid timestamp case * Reduce query mem allocs and fix end timestamp == 0 bug * Add support for duplicate timestamps in db_search() * Add support for duplicate timestamps in circ_buff_search() * Fix docker events contexts * Various query fixes prior to reverse order search. - Add reverse qsort() function in circ buffers. - Fix issues to properly support of duplicate timestamps. - Separate requested from actual timestamps in query parameters. - Rename results buffer variable name to be consistent between DB and buffers. - Remove default start and end timestamp from functions. - Improve handling of invalid quotas provided by users. - Rename 'until' timestamp name to 'to'. - Increase default quota to 10MB from 1MB. - Allow start timestamp to be > than end timestamp. * Complete descending timestamp search for circular buffers * Complete descending timestamp search for DB * Remove MEASURE_QUERY_TIME code block * Complete descending timestamp search when data resides in both DB and circular buffers * Use pointer instead of copying res_hdr in query results * Refactor web log timezone parsing to use static memory allocation * Add stats for CPU user & system time per MiB of query results * Micro-optimization to slightly speed up queries * More micro-optimizations and some code cleanup * Remove LOGS_QUERY_DATA_FORMAT_NEW_LINE option * Escape iscntrl() chars at collection rather at query * Reduce number of buffer_strcat() calls * Complete descending timestamp order queries for web_api_v1 * Complete descending timestamp order queries for functions * Fix functions query timings to match web_api_v1 ones * Add MQTT message collector Squashed commit of the following: commit dbe515372ee04880b1841ef7800abe9385b12e1c Author: Dim-P <dimitris1703@gmail.com> Date: Mon Aug 21 15:18:46 2023 +0100 Update README.md with MQTT information commit c0b5dbcb7cdef8c6fbd5e72e7bdd08957a0fd3de Author: Dim-P <dimitris1703@gmail.com> Date: Mon Aug 21 14:59:36 2023 +0100 Tidy up before merge commit 9a69c4f17eac858532918a8f850a770b12710f80 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Aug 21 12:54:33 2023 +0100 Fix issue with duplicate Log_Source_Path in DB, introduced in commit e417af3 commit 48213e9713216d62fca8a5bc1bbc41a3883fdc14 Author: Dim-P <dimitris1703@gmail.com> Date: Sat Aug 19 05:05:36 2023 +0100 WIP commit e417af3b947f11bd61e3255306bc95953863998d Author: Dim-P <dimitris1703@gmail.com> Date: Thu Aug 17 18:03:39 2023 +0100 Update functions logsmanagement help output * Inhibit Fluent Bit build warnings * Fix missing allow_subpaths value in api_commands_v1[]. * Fix missing HTTP_RESP_BACKEND_FETCH_FAILED error * Fix an enum print warning * Remove systemd-devel requirement from README and fix codacy warnings * Update Alpine versions for musl-fts-dev * Update Fluent Bit to v2.1.8 Squashed commit of the following: commit faf6fc4b7919cc2611124acc67cb1973ce705530 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Aug 25 17:13:30 2023 +0100 Fix wrong default CORE_STACK_SIZE on Alpine commit a810238fe7830ce626f6d57245d68035b29723f7 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Aug 25 00:40:02 2023 +0100 Update Fluent Bit patches for musl commit 8bed3b611dba94a053e22c2b4aa1d46f7787d9b4 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Aug 24 21:54:38 2023 +0100 Fix an edge case crash when web log method is '-' commit b29b48ea230363142697f9749508cd926e18ee19 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Aug 24 16:26:13 2023 +0100 Disable FLB_OUT_CALYPTIA to fix Alpine dlsym() error commit eabe0d0523ffe98ff881675c21b0763a49c05f16 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Aug 22 21:25:54 2023 +0100 Add 'use inotify = no' troubleshooting Q&A in README commit 7f7ae85bdb0def63b4fc05ab88f6572db948e0e7 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Aug 22 18:06:36 2023 +0100 Update README.md links to latest version commit 610c5ac7b920d4a1dfe364ad48f1ca14a0acc346 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Aug 22 16:23:30 2023 +0100 Update flb_parser_create() definition commit f99608ff524b6f3462264e626a1073f9c2fdfdf5 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Aug 22 16:23:04 2023 +0100 Add new config.cmake options commit 446b0d564626055a0a125f525d0bd3754184b830 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Aug 22 12:21:25 2023 +0100 Update Fluent Bit submodule to v2.1.8 * Add logs_management_unittest() to CI 'unittest' * Remove obsolete query testing files * Patch Fluent Bit log format to match netdata's format * Update README with instructions on how to monitor Podman events logs * Fix core dump in case of flb_lib_path dlopen() * Fix some potential compiler warnings * Fix queries crash if logs manag engine not running * Much faster termination of LOGS MANAGEMENT * Add facets support and other minor fixes. logsmanagement_function_execute_cb() is replaced by logsmanagement_function_facets() which adds facets support to logs management queries. Internal query results header now includes additional fields (log_source, log_type, basename, filename, chartname), that are used as facets. Queries now support timeout as a query parameter. A web log timestamp bug is fixed (by using timegm() instead of mktime(). web_api_v1 logsmanagement API is only available in debugging now. Squashed commit of the following: commit 32cf0381283029d793ec3af30d96e6cd77ee9149 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 19 16:21:32 2023 +0300 Tidy up commit f956b5846451c6b955a150b5d071947037e935f0 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 19 13:30:54 2023 +0300 Add more accepted params. Add data_only option. Add if_modified_since option. commit 588c2425c60dcdd14349b7b346467dba32fda4e9 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Sep 18 18:39:50 2023 +0300 Add timeout to queries commit da0f055fc47a36d9af4b7cc4cefb8eb6630e36d9 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 14 19:17:16 2023 +0300 Fix histogram commit 7149890974e0d26420ec1c5cfe1023801dc973fa Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 14 17:58:52 2023 +0300 Add keyword query using simple patterns and fix descending timestamp values commit 0bd068c5a76e694b876027e9fa5af6f333ab825b Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 14 13:54:05 2023 +0300 Add basename, filename, chartname as facets commit 023c2b5f758b2479a0e48da575cd59500a1373b6 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 14 13:26:06 2023 +0300 Add info and sources functions options commit ab4d555b7d445f7291af474847bd9177d3726a76 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 14 12:54:37 2023 +0300 Fix facet id filter commit a69c9e2732f5a6da1764bb57d1c06d8d65979225 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 14 12:07:13 2023 +0300 WIP: Add facet id filters commit 3c02b5de81fa8a20c712863c347539a52936ddd8 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 12 18:19:17 2023 +0300 Add log source and log type to circ buff query results header commit 8ca98672c4911c126e50f3cbdd69ac363abdb33d Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 12 18:18:13 2023 +0300 Fix logsmanagement facet function after master rebasing commit 3f1517ad56cda2473a279a8d130bec869fc2cbb8 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 12 18:14:25 2023 +0300 Restrict /logsmanagement to ACL_DEV_OPEN_ACCESS only commit 8ca98d69b08d006c682997268d5d2523ddde6be0 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 12 14:40:22 2023 +0300 Fix incorrectly parsed timestamps due to DST commit f9b0848037b29c7fcc46da951ca5cd9eb129066f Author: Dim-P <dimitris1703@gmail.com> Date: Mon Sep 11 13:42:18 2023 +0300 Add logs_management_meta object to facet query results commit babc978f6c97107aaf8b337d8d31735d61761b6a Author: Dim-P <dimitris1703@gmail.com> Date: Mon Sep 11 13:03:52 2023 +0300 Query all sources if no arguments provided commit 486d56de87af56aae6c0dc5d165341418222ce8b Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 7 18:38:04 2023 +0300 Add log_source and log_type (only for DB logs) as facets. Add relative time support commit b564c12843d355c4da6436af358d5f352cb58bfe Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 7 13:47:20 2023 +0300 Working facet with descending timestamps commit 68c6a5c64e8425cf28ec16adfb0c50289caa82a9 Author: Dim-P <dimitris1703@gmail.com> Date: Wed Sep 6 01:55:51 2023 +0300 WIP * Fix linking errors * Convert logs management to external plugin. Squashed commit of the following: commit 16da6ba70ebde0859aed734087f04af497ce3a77 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 24 18:44:12 2023 +0100 Use higher value of update every from netdata.conf or logsmanagement.d.conf commit 88cc3497c403e07686e9fc0876ebb0c610a1404c Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 24 18:43:02 2023 +0100 Tidy up commit c3fca57aac169842637d210269519612b1a91e28 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 24 18:02:04 2023 +0100 Use external update_every from agent, if available commit f7470708ba82495b03297cdf8962a09b16617ddd Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 24 17:40:46 2023 +0100 Re-enable debug logs commit b34f5ac6a2228361ab41df7d7e5e713f724368c0 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 24 15:49:20 2023 +0100 Remove old API calls from web_api_v1.c/h commit 7fbc1e699a7785ec837233b9562199ee6c7684da Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 24 15:32:04 2023 +0100 Add proper termination of stats charts thread commit 4c0fc05c8b14593bd7a0aa68f75a8a1205e04db4 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 24 15:31:36 2023 +0100 Add tests for logsmanag_config functions commit 4dfdacb55707ab46ed6c2d5ce538ac012574b27e Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 23 22:01:19 2023 +0100 Remove unused headers from logsmanagement.c commit b324ef396207c5c32e40ea9ad462bf374470b230 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 23 21:56:26 2023 +0100 Remove inline from get_X_dir() functions commit e9656e8121b66cd7ef8b5daaa5d27a134427aa35 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 23 21:50:32 2023 +0100 Proper termination when a signal is received commit b09eec147bdeffae7b268b6335f6ba89f084e050 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 23 20:12:13 2023 +0100 Refactor logs management config code in separate source files commit 014b46a5008fd296f7d25854079c518d018abdec Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 23 14:54:47 2023 +0100 Fix p_file_info_destroy() crash commit e0bdfd182513bb8d5d4b4b5b8a4cc248ccf2d64e Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 23 14:18:27 2023 +0100 Code refactoring and cleanup commit 6a61cb6e2fd3a535db150b01d9450f44b3e27b30 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Oct 20 14:08:43 2023 +0100 Fix 'source:all' queries commit 45b516aaf819ac142353e323209b7d01e487393f Author: Dim-P <dimitris1703@gmail.com> Date: Thu Oct 19 21:51:05 2023 +0100 Working 'source:...' queries and regular data queries (but not 'source:all') commit 8064b0ee71c63da9803f79424802f860e96326e5 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Oct 19 15:34:23 2023 +0100 Fix issue due to p_file_info_destroy() commit a0aacc9cd00cea60218c9bfd2b9f164918a1e3de Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 17 22:06:34 2023 +0100 Work on facet API changes commit 480584ff9040c07e996b14efb4d21970a347633f Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 16 21:43:06 2023 +0100 Add stats charts, running as separate thread commit 34d582dbe4bf2d8d048afab41681e337705bc611 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 16 16:24:02 2023 +0100 Add SSL cipher charts commit ced27ee4e2c981d291f498244f2eef2556a074fb Author: Dim-P <dimitris1703@gmail.com> Date: Sun Oct 15 21:33:29 2023 +0100 Add Response code family, Response code, Response code type, SSL protocol charts commit 40c4a1d91892d49b1e4e18a1c3c43258ded4014d Author: Dim-P <dimitris1703@gmail.com> Date: Sat Oct 14 00:48:48 2023 +0100 Add more web log charts commit 890ed3ff97153dd18d15df2d1b57a181bc498ca8 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Oct 13 22:14:11 2023 +0100 Add web log vhosts and ports charts commit 84733b6b1d353aff70687603019443610a8500c3 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Oct 12 21:40:16 2023 +0100 Add systemd charts commit 14673501e8f48560956f53d5b670bbe801b8f2ae Author: Dim-P <dimitris1703@gmail.com> Date: Wed Oct 11 00:28:43 2023 +0100 Add MQTT charts commit 366eb63b0a27dde6f0f8ba65120f34c18c1b21fd Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 10 21:46:19 2023 +0100 Complete kmsg changes. Reduce mem usage. Fix a dictionary key size bug commit 3d0216365a526ffbc9ce13a20c45447bfccb47d9 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 10 19:18:41 2023 +0100 Add kmsg Subsystem charts commit e61af4bb130a5cf5a5a78133f1e44b2b4c457b24 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 10 16:21:29 2023 +0100 Fix bug of wrong kmsg timestamps in case of use_log_timestamp == 0 commit 03d22e0b26bddf249aab431a4f977bbd5cde98ca Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 10 16:20:47 2023 +0100 Add kmsg charts, except for Subsystem and Device commit f60b0787537a21ed3c4cea5101fcddc50f3bc55a Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 10 13:12:13 2023 +0100 Initialise all docker events chart dimensions at startup commit 5d873d3439abaf3768530cb5b72c6b4ef6565353 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 10 00:53:35 2023 +0100 WIP: Add Docker events logs commit 2cc3d6d98f58fc3ab67a8da3014210b14d0926a1 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 9 18:52:27 2023 +0100 Use macros for num_of_logs_charts and custom_charts functions commit fbd48ad3c9af674601238990d74192427475f2e3 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 9 18:26:17 2023 +0100 Refactor custom charts code for clarity and speed commit a31d80b5dc91161c0d74b10d00bc4fd1e6da7965 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Oct 5 23:58:27 2023 +0100 Add first working iteration of custom charts commit b1e4ab8a460f4b4c3e2804e2f775787d21fbee45 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Oct 5 23:57:27 2023 +0100 Add more custom charts for Netdata error.log commit f1b7605e564da3e297942f073593cdd4c21f88e1 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Oct 5 20:39:40 2023 +0100 Convert collected_logs_* chart updates to macros commit 1459bc2b8bcd5ba21e024b10a8a5101048938f71 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Oct 5 19:11:54 2023 +0100 Use rrdset_timed_done() instead of duration_since_last_update for correct chart timings commit 876854c6ee7586a3eb9fdbf795bcc17a5fd1e6ad Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 3 21:53:14 2023 +0100 Fix some bugs in chart updates commit ae87508485499984bcb9b72bbc7d249c4168b380 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 3 21:32:55 2023 +0100 Functioning generic_chart_init() and generic_chart_update() commit 982a9c4108dbea9571c785b5ff8a9d1e5472066c Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 28 23:32:52 2023 +0100 Add support for multiple .conf files. Add stock examples. commit 8e8abd0731227eb3fb3c6bcd811349575160799e Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 28 17:38:30 2023 +0100 Add support for logsmanagement.d/default.conf commit 1bf0732217b1d9e9959e1507ea96fc2c92ffb2ff Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 28 14:31:03 2023 +0100 Add capabilities. Fix paths in logsmanagement.d.conf commit a849d5b405bb4e5d770726fe99413a4efa7df274 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 26 23:06:31 2023 +0100 Change logs_manag_config_load() commit b0d1783b996286cd87e0832bfb74c29a845d61fc Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 26 15:35:30 2023 +0100 Working unit tests and argument parsing commit 6da1b4267a4d58d3a7cbcca9507afe8158a2e324 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Sep 22 00:32:47 2023 +0300 Build logs-management.plugin successfully commit 9e30efe0422e4941f99cc66998d9f42e00a24676 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 21 16:13:21 2023 +0300 Fix print format specifier in web_client_api_request_v1_logsmanagement() * Modify CODEOWNERS * Update README.md Fix indentation * Change snprintfz() to stncpyz() in circ_buff_search(). Change remaining 'chart_name' to 'chartname'. * Replace SQLite version function with macro * Fix some codacy warnings * Update README.md * Update Fluent Bit to v2.1.10 * Remove some comments * Fix Fluent Bit shared library linking for armv7l and FreeBSD * Remove compression source files * Add prefix to rrd_api.h functions * Add more unit tests * Fix kmsg capabilities * Separate kmsg and systemd default paths * Fix some memory leaks and better termination of DB * Add iterative queries if quota is exceeded * Fix centos7 builds * Fix issue where SYSTEMD timestamps are not parsed * Fix logs management packaging. * Fix typo in DEB control file. * Fix indentation and missing new line at EOF * Clean up functions and update help * Fix 400 error when no queryable sources are available * Fix if_modified_since. Add FACET_MAX_VALUE_LENGTH * Add delta parameter and use anchor points in queries * Fix CodeQL #182 warning * Fix packaging issues. * Fix postinstall script for DEB packages. * Improve plugin shutdown speed * Fix docker events chart grouping * Fix functions evloop threads not terminating upon shutdown * Fix coverity issues * Fix logging * Replace 'Netdata error.log' with 'Netdata daemon.log' in 'default.conf' * Remove 'enabled = yes/no' config in logsmanagement.d.conf * Remove 'enabled = X' unused config from logsmanagement.d.conf --------- Co-authored-by: Austin S. Hemmelgarn <austin@netdata.cloud>
2023-11-27 17:55:14 +01:00
%package plugin-logs-management
Summary: The logs-management plugin for the Netdata Agent
Group: Applications/System
Requires: %{name} = %{version}
Conflicts: %{name} < %{version}
%description plugin-logs-management
This plugin allows the Netdata Agent to collect logs from the system
and parse them to extract metrics.
%pre plugin-logs-management
if ! getent group %{name} > /dev/null; then
groupadd --system %{name}
fi
%files plugin-logs-management
%defattr(0644,root,netdata,0755)
%{_libdir}/%{name}/conf.d/logsmanagement.d.conf
%{_libdir}/%{name}/conf.d/logsmanagement.d
%defattr(0750,root,netdata,0750)
# CAP_DAC_READ_SEARCH and CAP_SYSLOG needed for data collection.
%caps(cap_dac_read_search,cap_syslog=ep) %attr(0750,root,netdata) %{_libexecdir}/%{name}/plugins.d/logs-management.plugin
%package plugin-network-viewer
Summary: The network viewer plugin for the Netdata Agent
Group: Applications/System
Requires: %{name} = %{version}
Conflicts: %{name} < %{version}
%if 0%{?_have_ebpf}
%if 0%{?centos_ver} != 7
Recommends: %{name}-plugin-ebpf = %{version}
%else
Requires: %{name}-plugin-ebpf = %{version}
%endif
%endif
%description plugin-network-viewer
This plugin allows the Netdata Agent to provide network connection
mapping functionality for use in netdata Cloud.
%pre plugin-network-viewer
if ! getent group %{name} > /dev/null; then
groupadd --system %{name}
fi
%files plugin-network-viewer
%defattr(0750,root,netdata,0750)
# CAP_SYS_ADMIN, CAP_SYS_PTRACE and CAP_DAC_READ_SEARCH needed for data collection.
%caps(cap_sys_admin,cap_sys_ptrace,cap_dac_read_search=ep) %attr(0750,root,netdata) %{_libexecdir}/%{name}/plugins.d/network-viewer.plugin
%changelog
* Tue Feb 06 2024 Austin Hemmelgarn <austin@netdata.cloud> 0.0.0-25
- Add package for network-viewer plugin
Logs Management (#13291) This PR adds the logs-management external plugin. See the included README for an extensive list of features. ------------------------------------------------------------------------------------- * Add proper status return in JSON response of functions * Add column info to functions * Escape special characters when returning JSON response * Add proper functions help and defaults. Fix help not working * Add 'logs_management_meta' object in functions results * Fix compiler warnings * Replace tabs with 3 spaces in web_client_api_request_v1_logsmanagement_sources() * Add 'sources' in functions to display list of log sources * Update functions column values for logs * Update chart titles and remove '/s' from units * Add support for compound queries in circular buffers * Refactor circ_buff_search() to get rid of circ_buff_search_compound() * Fix incorrect docker events nano timestamp padding * Fixed botched rebasing * Replace get_unix_time_ms() with now_realtime_msec() * Remove binary generation from Fluent-Bit lib build * Fix compiler warnings due to new timestamp type * Remove STDIN and STDOUT support from Fluent-Bit library * Initial support for FLB_KMSG kernel logs collection * Add kernel logs charts * Add kernel logs subsystem and device charts * Skip collection of pre-existing logs in kmsg ring buffer * Add example of custom kmsg charts * Add extra initialization error logs * Fix bug of Docker Events collector failure disabling whole logs management engine * Remove reduntant FLB output code * Remove some obsolete TODO comments * Remove some commented out error/debug prints * Disable some Fluent-Bit config options not required * Make circular buffer spare items option configurable * Add DB mode configuration option * Replace p_file_infos_arr->data[i] with p_file_info in db_api.c * Remove db_loop due to all function calls being synchronous * Add initial README.md * Add DB mode = none changes * Add a simple webpage to visualize log query results * Add support for source selection to logs_query.html * Add option to query multiple log sources * Mark non-queryable sources as such in logs_query.html * Add option to use either GET or functions request in logs_query.html * Install logs_query.html when running stress tests * Update README.md requirements * Change installer behavior to build logs management by default * Disable logs management at runtime by default * Add global db mode configuration in 'logs management' config section * Split logsmanagement.conf into required & optional sections * Remove --enable-logsmanagement from stress test script * Add global config option for 'circular buffer max size MiB' * Add global config option for 'circular buffer drop logs if full' * Update 'General Configuration' in README.md * Add global config option for remaining optional settings * Add systemd collector requirements to TOC * README: Convert general configuration to table * README: Fix previous botched commit * Enable logs management by default when building for stress testing * Move logging to collector.log from error.log * Fix contenttype compilation errors * Move logging to collector.log in plugin_logsmanagement.c * Rename 'rows' to 'records' in charts * Add Netdata error.log parsing * Add more dashboard descriptions * Sanitize chart ids * Attempt to fix failing CI * Update README.md * Update README.md * Another attempt to fix CI failures * Fix undefined reference to 'uv_sleep' on certain platforms * Support FLB forward input and FLB output plugins. Squashed commit of the following: commit 55e2bf4fb34a2e02ffd0b280790197310a5299f3 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Apr 13 16:41:09 2023 +0300 Remove error.log from stock config commit bbdc62c2c9727359bc3c8ef8c33ee734d0039be7 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Apr 13 16:37:48 2023 +0300 Add cleanup of Fluent Bit outputs in p_file_info_destroy() commit 09b0aa4268ec1ccef160c99c5d5f31b6388edd28 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Apr 13 14:34:17 2023 +0300 Some code and config cleanup commit 030d074667d5ee2cad10f85cd836ca90e29346ad Author: Dim-P <dimitris1703@gmail.com> Date: Thu Apr 13 13:04:08 2023 +0300 Enable additional Fluent Bit output plugins for shared library commit 490aa5d44caa38042521d24c6b886b8b4a59a73c Author: Dim-P <dimitris1703@gmail.com> Date: Thu Apr 13 01:33:19 2023 +0300 Add initialization of Fluent Bit user-configured outputs commit c96e9fe9cea96549aa5eae09d0deeb130da02793 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Apr 4 23:13:16 2023 +0100 Complete read of parameters for FLB outputs config commit 00988897f9b86d1ecc5c141b19df7ad7d74f7e96 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Apr 3 19:43:31 2023 +0100 Update README.md commit 6deea5399c2707942aeaa51408f999ca45dfd351 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Apr 3 16:02:28 2023 +0100 Refactor Syslog_parser_config_t and add Flb_socket_config_t commit 7bf998a4c298bbd489ef735c56a6e85a137772c9 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Apr 3 14:19:57 2023 +0100 Update README.md commit c353d194b12c54f134936072ebaded0424d73cc0 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Mar 31 14:52:57 2023 +0100 Update README.md commit 6be726eaff3738ba7884de799aa52949833af65a Author: Dim-P <dimitris1703@gmail.com> Date: Fri Mar 31 13:06:29 2023 +0100 Update README. Fix docker_events streaming commit 6aabfb0f1ef0529a7a0ecbaf940bc0952bf42518 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Mar 30 21:27:45 2023 +0100 Fix stuck in infinite loop bug for FLB_GENERIC, FLB_WEB_LOG and FLB_SERIAL remote log sources commit eea6346b708cc7a5ce6e2249366870f4924eabae Author: Dim-P <dimitris1703@gmail.com> Date: Thu Mar 30 21:04:12 2023 +0100 Remove callback that searches for streamed p_file_info match commit bc9c5a523b0b0ab5588adbff391a43ba8d9a0cdf Author: Dim-P <dimitris1703@gmail.com> Date: Thu Mar 30 15:51:39 2023 +0100 Basic streaming works commit 4c80f59f0214bc07895f0b2edca47cb02bc06420 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Mar 28 22:05:22 2023 +0100 WIP commit eeb37a71b602fb0738fe8077ccddc0a8ce632304 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Mar 27 22:52:09 2023 +0100 Add generic forward streaming input commit 1459b91847c80c4d97de96b75b00771039458ad6 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Mar 23 18:50:14 2023 +0000 FLB_FORWARD: WIP * Add number of logs per item in DB and in queries response * Fix wrong number of lines stored in DB for web logs * Refactor number of logs parsers and charts code * Add option to toggle number of collected logs metrics and charts * Disable kmsg log collector by default * Fix logs_query.html to work with any server ip * Fix regressed wrong number of web log lines bug * Change query quota type from size_t to long long * Update alpine version when searching for fts-dev requirements * Update query results to return both requested and actual quota * Fix bug of circ buffs not being read if head == read but not empty * Squashed commit of the following: commit 34edb316a737f3edcffcf8fa88a3801599011495 Author: Dim-P <dimitris1703@gmail.com> Date: Thu May 4 20:02:36 2023 +0100 Comment out some debug prints commit 51b9b87a88516186530f5b4b65f785b543fefe8c Author: Dim-P <dimitris1703@gmail.com> Date: Fri Apr 28 19:21:54 2023 +0100 Fix wrong filenames in BLOBS_TABLE after rotation commit 6055fc2893b48661af324f20ee61511a40abbc02 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Apr 28 12:22:04 2023 +0100 Add chart showing number of circular buffer items commit 0bb5210b0847f4b7596f633ec96fc10aa8ebc791 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Apr 25 16:47:29 2023 +0300 Various fixes. Fix num_lines calculation. Add debug prints for circ buffers. Remove circ buff spare items option. Fix calculation of circ buff memory consumption. Add buff_realloc_rwlock for db_mode = none case. Fix circ buff read to be done correctly when buff is full. commit f494af8c95be84404c7d854494d26da3bcbd3ad7 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Apr 21 16:03:50 2023 +0300 Fix freez() on non-malloced address commit cce6d09e9cf9b847aface7309643e2c0a6041390 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Apr 21 15:41:25 2023 +0300 Add option to dynamically expand circ buffs when full * Use log timestamps when possible, instead of collection timestamps. Also, add config options for Fluent Bit engine and remove tail_plugin. Squashed commit of the following: commit b16a02eb6e3a90565c90e0a274b87b123e7b18e5 Author: Dim-P <dimitris1703@gmail.com> Date: Tue May 16 19:38:57 2023 +0100 Add Fluent Bit service config options to netdata.conf. Add monitoring of new log file fluentbit.log commit ab77c286294548ea62a3879ac0f8b8bbfe6a0687 Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 15 21:25:17 2023 +0100 Remove some debug prints commit 46d64ad2434e69b1d20720297aec1ddb869e1f84 Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 15 21:19:32 2023 +0100 Fix null values in charts commit 8ec96821d6a882f28cbd19244ebdfc86c807d2f4 Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 15 17:43:04 2023 +0100 Update README.md to reflect log timestamp changes commit 079a91858cf9db2f74711581235bc17eb97c7dad Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 15 16:23:14 2023 +0100 Add configurable option for 'update timeout' commit 72b5e2505d4657fcbb5ccb6eeee00c45eb0b51ff Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 15 16:05:08 2023 +0100 Revert logsmanagement.conf to logs-manag-master one commit 70d0ea6f8d272fff318aa3095d90a78dcc3411a7 Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 15 16:02:00 2023 +0100 Fix bug of circ buff items not marked as done commit 5716420838771edb7842be4669bf96235b15cf71 Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 15 16:01:41 2023 +0100 Fix do_custom_charts_update() to work for all log sources commit a8def8f53fd25c3efa56ef27e267df3261913a8e Author: Dim-P <dimitris1703@gmail.com> Date: Fri May 12 18:20:20 2023 +0100 Remove GENERIC and WEB_LOG cases. Remove tail_plugin.c/h. Remove generic_parser(). commit 1cf05966e33491dbeb9b877f18d1ea8643aabeba Author: Dim-P <dimitris1703@gmail.com> Date: Fri May 12 16:54:59 2023 +0100 Fix FLB_GENERIC and FLB_SERIAL to work with new timestamp logic commit df3266810531f1af5f99b666fbf44c503b304a39 Author: Dim-P <dimitris1703@gmail.com> Date: Fri May 12 14:55:04 2023 +0100 Get rid of *_collect() functions and restructure plugin_logsmanagement workers commit 3eee069842f3257fffe60dacfc274363bc43491c Author: Dim-P <dimitris1703@gmail.com> Date: Fri May 12 14:28:33 2023 +0100 Fix wrong order of #define _XOPEN_SOURCE 700 in parser.c commit 941aa80cb55d5a7d6fe8926da930d9803be52312 Author: Dim-P <dimitris1703@gmail.com> Date: Thu May 11 22:27:39 2023 +0100 Update plugin_logsmanagement_web_log to use new timestamp logic and to support delayed logs. Refactor req_method metrics code. commit 427a7d0e2366d43cb5eab7daa1ed82dfc3bc8bc8 Author: Dim-P <dimitris1703@gmail.com> Date: Tue May 9 20:26:08 2023 +0100 Update plugin_logsmanagement_kernel to use new timestamp logic and to support delayed charts commit a7e95a6d3e5c8b62531b671fd3ec7b8a3196b5bb Author: Dim-P <dimitris1703@gmail.com> Date: Tue May 9 15:22:14 2023 +0100 Update plugin_logsmanagement_systemd to use new timestamp logic and support delayed charts commit 48237ac2ce49c82abdf2783952fd9f0ef05d72e1 Author: Dim-P <dimitris1703@gmail.com> Date: Tue May 9 13:29:44 2023 +0100 Refactor number of collected logs chart update code commit a933c8fcae61c23fa0ec6d0074526ac5d243cf16 Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 8 22:11:19 2023 +0100 Update plugin_logsmanagement_docker_ev to use new timestamp logic and support delayed charts commit 5d8db057155affd5cb721399a639d75a81801b7f Author: Dim-P <dimitris1703@gmail.com> Date: Fri May 5 15:18:06 2023 +0100 Change some Fluent Bit collectors to use log timestamps instead of collection timestamps * Remove some unused defines and typedefs * Improve flb_init() * Update file-level doxygen. Add SPDX license declaration. * Better handling of termination of Fluent Bit * Better handling of DB errors. Various fixes. Squashed commit of the following: commit f55feea1274c3857eda1e9d899743db6e3eb5bf5 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Jun 6 13:28:00 2023 +0100 Fix web log parsing in case of lines terminated by \r commit 9e05758a4ecfac57a0db14757cff9536deda51d8 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Jun 5 20:42:05 2023 +0100 Fix warnings due to -Wformat-truncation=2 commit 63477666fa42446d74693aae542580d4e1e81f03 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Jun 5 16:48:45 2023 +0100 Autodiscovery of Netdata error.log based on netdata_configured_log_dir commit cab5e6d6061f4259172bbf72666e8b4a3a35dd66 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Jun 5 16:24:39 2023 +0100 Replace Forward config default string literals with macros commit 4213398031dbb53afbc943d76bf7df202d12bf6f Author: Dim-P <dimitris1703@gmail.com> Date: Mon Jun 5 15:56:29 2023 +0100 Proper cleanup of flb_lib_out_cb *callback in case of error commit f76fd7cc7bc2d0241e4d3517f61ae192d4246300 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Jun 5 15:36:07 2023 +0100 Proper termination of Forward input and respective log sources in case of error commit 3739fd96c29e13298eb3a6e943a63172cdf39d5f Author: Dim-P <dimitris1703@gmail.com> Date: Thu Jun 1 21:19:56 2023 +0100 Merge db_search() and db_search_compound() commit fcface90cb0a6df3c3a2de5e1908b1b3467dd579 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Jun 1 19:17:26 2023 +0100 Proper error handling in db_search() and db_search_compound(). Refactor the code too. commit c10667ebee2510a1af77114b3a7e18a0054b5dae Author: Dim-P <dimitris1703@gmail.com> Date: Thu Jun 1 14:23:34 2023 +0100 Update DB mode and dir when switching to db_mode_none commit d37d4c3d79333bb9fa430650c13ad625458620e8 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Jun 1 12:56:13 2023 +0100 Fix flb_stop() SIGSEGV commit 892e231c68775ff1a1f052d292d26384f1ef54b1 Author: Dim-P <dimitris1703@gmail.com> Date: Tue May 30 21:14:58 2023 +0100 Switch to db_writer_db_mode_none if db_writer_db_mode_full encounters error commit f7a0c2135ff61d3a5b0460ec5964eb6bce164bd6 Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 29 21:41:21 2023 +0100 Complete error handling changes to db_init(). Add some const type qualifiers. Refactor some code for readability commit 13dbeac936d22958394cb1aaec394384f5a93fdd Author: Dim-P <dimitris1703@gmail.com> Date: Mon May 29 17:14:17 2023 +0100 More error handling changes in db_init(). Change some global default settings if stress testing. commit eb0691c269cd09054190bf0ee9c4e9247b4a2548 Author: Dim-P <dimitris1703@gmail.com> Date: Fri May 26 23:29:12 2023 +0100 Better handling of db writer threads errors. Add db timings charts * Fix mystrsep() replaced by strsep_skip_consecutive_separators() * Fix older GCC failure due to label before declaration * Fix failed builds when using libuv <= v1.19 * Fix some Codacy warnings * Fix warning: implicit declaration of function ‘strsep’ * Use USEC_PER_SEC instead of 1000000ULL * Use UUID_STR_LEN instead of GUID_LEN + 1 * Combine multiple 'ln -sf' Docker instructions to one * Update README with systemd development libraries requirement * Comment out mallocz() success checkes in parser_csv() * Fix shellcheck warnings * Remove asserts for empty SYSLOG_IDENTIFIER or PID * Fix FreeBSD failing builds * Fix some more shellcheck warnings * Update Alpine fts-dev required packages * First changes to use web log timestamp for correct metrics timings * Initial work to add test_parse_web_log_line() unit test * Complete test_parse_web_log_line() tests * Improve parse_web_log_line() for better handling of \n, \r, double quotes etc. * Fix 'Invalid TIME error when timezone sign is negative * Add more logs to compression unit test case * Misc read_last_line() improvements * Fix failing test_auto_detect_web_log_parser_config() when test case terminated without '\n' * Remove unused preprocessor macro * Factor out setup of parse_config_expected_num_fields * Add test for count_fields() * Add unit test for read_last_line() * Fix a read_last_line() bug * Remove PLUGIN[logsmanagement] static thread and update charts synchronously, right before data buffering * Fix web log parser potential SIGSEGV * Fix web log metrics bug where they could show delayed by 1 collection interval * WIP: Add multiline support to kmsg logs and fix metric timings * Fix kmsg subsystem and device parsing and metrics * Add option 'use log timestamp' to select between log timestamps or collection timestamps * Add 'Getting Started' docs section * Move logs management functions code to separate source files * Add 'Nginx access.log' chart description * Remove logsmanagement.plugin source files * Fix some memory leaks * Improve cleanup of logsmanagement_main() * Fix a potential memory leak of fwd_input_out_cb * Better termination and cleanup of main_loop and its handles * Fix main_db_dir access() check bug * Avoid uv_walk() SIGSEGV * Remove main_db_dir access() check * Better termination and cleanup of DB code * Remove flb_socket_config_destroy() that could cause a segmentation fault * Disable unique client IPs - all-time chart by default * Update README.md * Fix debug() -> netdata_log_debug() * Fix read_last_line() * Fix timestamp sign adjustment and wrong unit tests * Change WEB_CLIENT_ACL_DASHBOARD to WEB_CLIENT_ACL_DASHBOARD_ACLK_WEBRTC * Do not parse web log timestamps if 'use_log_timestamp = no' * Add Logs Management back into buildinfo.c * Update README.md * Do not build Fluent Bit executable binary * Change logs rate chart to RRDSET_TYPE_LINE * Add kludge to prevent metrics breaking due to out of order logs * Fix wrong flb_tmp_buff_cpy_timer expiration * Refactor initialization of input plugin for local log sources. * Rename FLB_GENERIC collector to FLB_TAIL. * Switch 'Netdata fluentbit.log' to disabled by default * Add 'use inotify' configuration option * Update in README.md * Add docker event actions metrics * Update README.md to include event action chart * Remove commented out PLUGIN[logsmanagement] code block * Fix some warnings * Add documentation for outgoing log streaming and exporting * Fix some code block formatting in README.md * Refactor code related to error status of log query results and add new invalid timestamp case * Reduce query mem allocs and fix end timestamp == 0 bug * Add support for duplicate timestamps in db_search() * Add support for duplicate timestamps in circ_buff_search() * Fix docker events contexts * Various query fixes prior to reverse order search. - Add reverse qsort() function in circ buffers. - Fix issues to properly support of duplicate timestamps. - Separate requested from actual timestamps in query parameters. - Rename results buffer variable name to be consistent between DB and buffers. - Remove default start and end timestamp from functions. - Improve handling of invalid quotas provided by users. - Rename 'until' timestamp name to 'to'. - Increase default quota to 10MB from 1MB. - Allow start timestamp to be > than end timestamp. * Complete descending timestamp search for circular buffers * Complete descending timestamp search for DB * Remove MEASURE_QUERY_TIME code block * Complete descending timestamp search when data resides in both DB and circular buffers * Use pointer instead of copying res_hdr in query results * Refactor web log timezone parsing to use static memory allocation * Add stats for CPU user & system time per MiB of query results * Micro-optimization to slightly speed up queries * More micro-optimizations and some code cleanup * Remove LOGS_QUERY_DATA_FORMAT_NEW_LINE option * Escape iscntrl() chars at collection rather at query * Reduce number of buffer_strcat() calls * Complete descending timestamp order queries for web_api_v1 * Complete descending timestamp order queries for functions * Fix functions query timings to match web_api_v1 ones * Add MQTT message collector Squashed commit of the following: commit dbe515372ee04880b1841ef7800abe9385b12e1c Author: Dim-P <dimitris1703@gmail.com> Date: Mon Aug 21 15:18:46 2023 +0100 Update README.md with MQTT information commit c0b5dbcb7cdef8c6fbd5e72e7bdd08957a0fd3de Author: Dim-P <dimitris1703@gmail.com> Date: Mon Aug 21 14:59:36 2023 +0100 Tidy up before merge commit 9a69c4f17eac858532918a8f850a770b12710f80 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Aug 21 12:54:33 2023 +0100 Fix issue with duplicate Log_Source_Path in DB, introduced in commit e417af3 commit 48213e9713216d62fca8a5bc1bbc41a3883fdc14 Author: Dim-P <dimitris1703@gmail.com> Date: Sat Aug 19 05:05:36 2023 +0100 WIP commit e417af3b947f11bd61e3255306bc95953863998d Author: Dim-P <dimitris1703@gmail.com> Date: Thu Aug 17 18:03:39 2023 +0100 Update functions logsmanagement help output * Inhibit Fluent Bit build warnings * Fix missing allow_subpaths value in api_commands_v1[]. * Fix missing HTTP_RESP_BACKEND_FETCH_FAILED error * Fix an enum print warning * Remove systemd-devel requirement from README and fix codacy warnings * Update Alpine versions for musl-fts-dev * Update Fluent Bit to v2.1.8 Squashed commit of the following: commit faf6fc4b7919cc2611124acc67cb1973ce705530 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Aug 25 17:13:30 2023 +0100 Fix wrong default CORE_STACK_SIZE on Alpine commit a810238fe7830ce626f6d57245d68035b29723f7 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Aug 25 00:40:02 2023 +0100 Update Fluent Bit patches for musl commit 8bed3b611dba94a053e22c2b4aa1d46f7787d9b4 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Aug 24 21:54:38 2023 +0100 Fix an edge case crash when web log method is '-' commit b29b48ea230363142697f9749508cd926e18ee19 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Aug 24 16:26:13 2023 +0100 Disable FLB_OUT_CALYPTIA to fix Alpine dlsym() error commit eabe0d0523ffe98ff881675c21b0763a49c05f16 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Aug 22 21:25:54 2023 +0100 Add 'use inotify = no' troubleshooting Q&A in README commit 7f7ae85bdb0def63b4fc05ab88f6572db948e0e7 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Aug 22 18:06:36 2023 +0100 Update README.md links to latest version commit 610c5ac7b920d4a1dfe364ad48f1ca14a0acc346 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Aug 22 16:23:30 2023 +0100 Update flb_parser_create() definition commit f99608ff524b6f3462264e626a1073f9c2fdfdf5 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Aug 22 16:23:04 2023 +0100 Add new config.cmake options commit 446b0d564626055a0a125f525d0bd3754184b830 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Aug 22 12:21:25 2023 +0100 Update Fluent Bit submodule to v2.1.8 * Add logs_management_unittest() to CI 'unittest' * Remove obsolete query testing files * Patch Fluent Bit log format to match netdata's format * Update README with instructions on how to monitor Podman events logs * Fix core dump in case of flb_lib_path dlopen() * Fix some potential compiler warnings * Fix queries crash if logs manag engine not running * Much faster termination of LOGS MANAGEMENT * Add facets support and other minor fixes. logsmanagement_function_execute_cb() is replaced by logsmanagement_function_facets() which adds facets support to logs management queries. Internal query results header now includes additional fields (log_source, log_type, basename, filename, chartname), that are used as facets. Queries now support timeout as a query parameter. A web log timestamp bug is fixed (by using timegm() instead of mktime(). web_api_v1 logsmanagement API is only available in debugging now. Squashed commit of the following: commit 32cf0381283029d793ec3af30d96e6cd77ee9149 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 19 16:21:32 2023 +0300 Tidy up commit f956b5846451c6b955a150b5d071947037e935f0 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 19 13:30:54 2023 +0300 Add more accepted params. Add data_only option. Add if_modified_since option. commit 588c2425c60dcdd14349b7b346467dba32fda4e9 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Sep 18 18:39:50 2023 +0300 Add timeout to queries commit da0f055fc47a36d9af4b7cc4cefb8eb6630e36d9 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 14 19:17:16 2023 +0300 Fix histogram commit 7149890974e0d26420ec1c5cfe1023801dc973fa Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 14 17:58:52 2023 +0300 Add keyword query using simple patterns and fix descending timestamp values commit 0bd068c5a76e694b876027e9fa5af6f333ab825b Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 14 13:54:05 2023 +0300 Add basename, filename, chartname as facets commit 023c2b5f758b2479a0e48da575cd59500a1373b6 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 14 13:26:06 2023 +0300 Add info and sources functions options commit ab4d555b7d445f7291af474847bd9177d3726a76 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 14 12:54:37 2023 +0300 Fix facet id filter commit a69c9e2732f5a6da1764bb57d1c06d8d65979225 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 14 12:07:13 2023 +0300 WIP: Add facet id filters commit 3c02b5de81fa8a20c712863c347539a52936ddd8 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 12 18:19:17 2023 +0300 Add log source and log type to circ buff query results header commit 8ca98672c4911c126e50f3cbdd69ac363abdb33d Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 12 18:18:13 2023 +0300 Fix logsmanagement facet function after master rebasing commit 3f1517ad56cda2473a279a8d130bec869fc2cbb8 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 12 18:14:25 2023 +0300 Restrict /logsmanagement to ACL_DEV_OPEN_ACCESS only commit 8ca98d69b08d006c682997268d5d2523ddde6be0 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 12 14:40:22 2023 +0300 Fix incorrectly parsed timestamps due to DST commit f9b0848037b29c7fcc46da951ca5cd9eb129066f Author: Dim-P <dimitris1703@gmail.com> Date: Mon Sep 11 13:42:18 2023 +0300 Add logs_management_meta object to facet query results commit babc978f6c97107aaf8b337d8d31735d61761b6a Author: Dim-P <dimitris1703@gmail.com> Date: Mon Sep 11 13:03:52 2023 +0300 Query all sources if no arguments provided commit 486d56de87af56aae6c0dc5d165341418222ce8b Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 7 18:38:04 2023 +0300 Add log_source and log_type (only for DB logs) as facets. Add relative time support commit b564c12843d355c4da6436af358d5f352cb58bfe Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 7 13:47:20 2023 +0300 Working facet with descending timestamps commit 68c6a5c64e8425cf28ec16adfb0c50289caa82a9 Author: Dim-P <dimitris1703@gmail.com> Date: Wed Sep 6 01:55:51 2023 +0300 WIP * Fix linking errors * Convert logs management to external plugin. Squashed commit of the following: commit 16da6ba70ebde0859aed734087f04af497ce3a77 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 24 18:44:12 2023 +0100 Use higher value of update every from netdata.conf or logsmanagement.d.conf commit 88cc3497c403e07686e9fc0876ebb0c610a1404c Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 24 18:43:02 2023 +0100 Tidy up commit c3fca57aac169842637d210269519612b1a91e28 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 24 18:02:04 2023 +0100 Use external update_every from agent, if available commit f7470708ba82495b03297cdf8962a09b16617ddd Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 24 17:40:46 2023 +0100 Re-enable debug logs commit b34f5ac6a2228361ab41df7d7e5e713f724368c0 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 24 15:49:20 2023 +0100 Remove old API calls from web_api_v1.c/h commit 7fbc1e699a7785ec837233b9562199ee6c7684da Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 24 15:32:04 2023 +0100 Add proper termination of stats charts thread commit 4c0fc05c8b14593bd7a0aa68f75a8a1205e04db4 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 24 15:31:36 2023 +0100 Add tests for logsmanag_config functions commit 4dfdacb55707ab46ed6c2d5ce538ac012574b27e Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 23 22:01:19 2023 +0100 Remove unused headers from logsmanagement.c commit b324ef396207c5c32e40ea9ad462bf374470b230 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 23 21:56:26 2023 +0100 Remove inline from get_X_dir() functions commit e9656e8121b66cd7ef8b5daaa5d27a134427aa35 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 23 21:50:32 2023 +0100 Proper termination when a signal is received commit b09eec147bdeffae7b268b6335f6ba89f084e050 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 23 20:12:13 2023 +0100 Refactor logs management config code in separate source files commit 014b46a5008fd296f7d25854079c518d018abdec Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 23 14:54:47 2023 +0100 Fix p_file_info_destroy() crash commit e0bdfd182513bb8d5d4b4b5b8a4cc248ccf2d64e Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 23 14:18:27 2023 +0100 Code refactoring and cleanup commit 6a61cb6e2fd3a535db150b01d9450f44b3e27b30 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Oct 20 14:08:43 2023 +0100 Fix 'source:all' queries commit 45b516aaf819ac142353e323209b7d01e487393f Author: Dim-P <dimitris1703@gmail.com> Date: Thu Oct 19 21:51:05 2023 +0100 Working 'source:...' queries and regular data queries (but not 'source:all') commit 8064b0ee71c63da9803f79424802f860e96326e5 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Oct 19 15:34:23 2023 +0100 Fix issue due to p_file_info_destroy() commit a0aacc9cd00cea60218c9bfd2b9f164918a1e3de Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 17 22:06:34 2023 +0100 Work on facet API changes commit 480584ff9040c07e996b14efb4d21970a347633f Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 16 21:43:06 2023 +0100 Add stats charts, running as separate thread commit 34d582dbe4bf2d8d048afab41681e337705bc611 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 16 16:24:02 2023 +0100 Add SSL cipher charts commit ced27ee4e2c981d291f498244f2eef2556a074fb Author: Dim-P <dimitris1703@gmail.com> Date: Sun Oct 15 21:33:29 2023 +0100 Add Response code family, Response code, Response code type, SSL protocol charts commit 40c4a1d91892d49b1e4e18a1c3c43258ded4014d Author: Dim-P <dimitris1703@gmail.com> Date: Sat Oct 14 00:48:48 2023 +0100 Add more web log charts commit 890ed3ff97153dd18d15df2d1b57a181bc498ca8 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Oct 13 22:14:11 2023 +0100 Add web log vhosts and ports charts commit 84733b6b1d353aff70687603019443610a8500c3 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Oct 12 21:40:16 2023 +0100 Add systemd charts commit 14673501e8f48560956f53d5b670bbe801b8f2ae Author: Dim-P <dimitris1703@gmail.com> Date: Wed Oct 11 00:28:43 2023 +0100 Add MQTT charts commit 366eb63b0a27dde6f0f8ba65120f34c18c1b21fd Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 10 21:46:19 2023 +0100 Complete kmsg changes. Reduce mem usage. Fix a dictionary key size bug commit 3d0216365a526ffbc9ce13a20c45447bfccb47d9 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 10 19:18:41 2023 +0100 Add kmsg Subsystem charts commit e61af4bb130a5cf5a5a78133f1e44b2b4c457b24 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 10 16:21:29 2023 +0100 Fix bug of wrong kmsg timestamps in case of use_log_timestamp == 0 commit 03d22e0b26bddf249aab431a4f977bbd5cde98ca Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 10 16:20:47 2023 +0100 Add kmsg charts, except for Subsystem and Device commit f60b0787537a21ed3c4cea5101fcddc50f3bc55a Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 10 13:12:13 2023 +0100 Initialise all docker events chart dimensions at startup commit 5d873d3439abaf3768530cb5b72c6b4ef6565353 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 10 00:53:35 2023 +0100 WIP: Add Docker events logs commit 2cc3d6d98f58fc3ab67a8da3014210b14d0926a1 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 9 18:52:27 2023 +0100 Use macros for num_of_logs_charts and custom_charts functions commit fbd48ad3c9af674601238990d74192427475f2e3 Author: Dim-P <dimitris1703@gmail.com> Date: Mon Oct 9 18:26:17 2023 +0100 Refactor custom charts code for clarity and speed commit a31d80b5dc91161c0d74b10d00bc4fd1e6da7965 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Oct 5 23:58:27 2023 +0100 Add first working iteration of custom charts commit b1e4ab8a460f4b4c3e2804e2f775787d21fbee45 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Oct 5 23:57:27 2023 +0100 Add more custom charts for Netdata error.log commit f1b7605e564da3e297942f073593cdd4c21f88e1 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Oct 5 20:39:40 2023 +0100 Convert collected_logs_* chart updates to macros commit 1459bc2b8bcd5ba21e024b10a8a5101048938f71 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Oct 5 19:11:54 2023 +0100 Use rrdset_timed_done() instead of duration_since_last_update for correct chart timings commit 876854c6ee7586a3eb9fdbf795bcc17a5fd1e6ad Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 3 21:53:14 2023 +0100 Fix some bugs in chart updates commit ae87508485499984bcb9b72bbc7d249c4168b380 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Oct 3 21:32:55 2023 +0100 Functioning generic_chart_init() and generic_chart_update() commit 982a9c4108dbea9571c785b5ff8a9d1e5472066c Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 28 23:32:52 2023 +0100 Add support for multiple .conf files. Add stock examples. commit 8e8abd0731227eb3fb3c6bcd811349575160799e Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 28 17:38:30 2023 +0100 Add support for logsmanagement.d/default.conf commit 1bf0732217b1d9e9959e1507ea96fc2c92ffb2ff Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 28 14:31:03 2023 +0100 Add capabilities. Fix paths in logsmanagement.d.conf commit a849d5b405bb4e5d770726fe99413a4efa7df274 Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 26 23:06:31 2023 +0100 Change logs_manag_config_load() commit b0d1783b996286cd87e0832bfb74c29a845d61fc Author: Dim-P <dimitris1703@gmail.com> Date: Tue Sep 26 15:35:30 2023 +0100 Working unit tests and argument parsing commit 6da1b4267a4d58d3a7cbcca9507afe8158a2e324 Author: Dim-P <dimitris1703@gmail.com> Date: Fri Sep 22 00:32:47 2023 +0300 Build logs-management.plugin successfully commit 9e30efe0422e4941f99cc66998d9f42e00a24676 Author: Dim-P <dimitris1703@gmail.com> Date: Thu Sep 21 16:13:21 2023 +0300 Fix print format specifier in web_client_api_request_v1_logsmanagement() * Modify CODEOWNERS * Update README.md Fix indentation * Change snprintfz() to stncpyz() in circ_buff_search(). Change remaining 'chart_name' to 'chartname'. * Replace SQLite version function with macro * Fix some codacy warnings * Update README.md * Update Fluent Bit to v2.1.10 * Remove some comments * Fix Fluent Bit shared library linking for armv7l and FreeBSD * Remove compression source files * Add prefix to rrd_api.h functions * Add more unit tests * Fix kmsg capabilities * Separate kmsg and systemd default paths * Fix some memory leaks and better termination of DB * Add iterative queries if quota is exceeded * Fix centos7 builds * Fix issue where SYSTEMD timestamps are not parsed * Fix logs management packaging. * Fix typo in DEB control file. * Fix indentation and missing new line at EOF * Clean up functions and update help * Fix 400 error when no queryable sources are available * Fix if_modified_since. Add FACET_MAX_VALUE_LENGTH * Add delta parameter and use anchor points in queries * Fix CodeQL #182 warning * Fix packaging issues. * Fix postinstall script for DEB packages. * Improve plugin shutdown speed * Fix docker events chart grouping * Fix functions evloop threads not terminating upon shutdown * Fix coverity issues * Fix logging * Replace 'Netdata error.log' with 'Netdata daemon.log' in 'default.conf' * Remove 'enabled = yes/no' config in logsmanagement.d.conf * Remove 'enabled = X' unused config from logsmanagement.d.conf --------- Co-authored-by: Austin S. Hemmelgarn <austin@netdata.cloud>
2023-11-27 17:55:14 +01:00
* Thu Oct 26 2023 Austin Hemmelgarn <austin@netdata.cloud> 0.0.0-24
- Add package for logs-management plugin
* Tue Sep 19 2023 Austin hemmelgarn <austin@netdata.cloud> 0.0.0-24
- Switch to using cmake for builds.
* Mon Aug 28 2023 Konstantin Shalygin <k0ste@k0ste.ru> 0.0.0-23
- Build go.d.plugin natively for CentOS Stream distro
* Mon Aug 21 2023 Austin Hemmelgarn <austin@netdata.cloud> 0.0.0-22
- Explicitly depend on version-matched plugins in native packages
* Thu Aug 03 2023 Austin Hemmelgarn <austin@netdata.cloud> 0.0.0-21
- Added systemd-journal plugin handling
* Wed Jun 14 2023 Konstantin Shalygin <k0ste@k0ste.ru> 0.0.0-20
- Added eBPF build dependency (again)
Split plugins to individual packages for DEB/RPM packaging. (#13927) * 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.
2023-05-30 14:38:32 +02:00
* Fri Apr 07 2023 Austin Hemmelgarn <austin@netdata.cloud> 0.0.0-19
- Split additional plugins out in their own packages.
* Tue Mar 21 2023 Austin Hemmelgarn <austin@netdata.cloud> 0.0.0-18
- Fix systemd handling to follow BCP.
- Drop pre-systemd init support.
* Thu Feb 16 2023 Konstantin Shalygin <k0ste@k0ste.ru> 0.0.0-17
- Added eBPF build dependency
* Thu Feb 03 2022 Austin Hemmelgarn <austin@netdata.cloud> 0.0.0-16
- Bundle updater script in native packages.
* Mon Oct 11 2021 Austin Hemmelgarn <austin@netdata.cloud> 0.0.0-15
- Remove support code for legacy ACLK implementation.
* Wed Sep 16 2020 Austin Hemmelgarn <austin@netdata.cloud> 0.0.0-14
- Convert to using 'AutoReq: yes' for library dependencies.
* Thu Feb 13 2020 Austin Hemmelgarn <austin@netdata.cloud> 0.0.0-13
- Add handling for custom libmosquitto fork
* Wed Jan 01 2020 Austin Hemmelgarn <austin@netdata.cloud> 0.0.0-12
- Add explicit installation of log and cache directories
- Clean up build dependencies.
* Thu Dec 19 2019 Austin Hemmelgarn <austin@netdata.cloud> 0.0.0-11
- Fix remaining ownership and permissions issues.
* Mon Nov 04 2019 Konstantinos Natsakis <konstantinos.natsakis@gmail.com> 0.0.0-10
- Fix /etc/netdata permissions
* Mon Sep 23 2019 Konstantinos Natsakis <konstantinos.natsakis@gmail.com> 0.0.0-9
- Do not build CUPS plugin subpackage on CentOS 6 and CentOS 7
2019-09-16 10:53:06 +02:00
* Tue Aug 20 2019 Pavlos Emm. Katsoulakis <paul@netdat.acloud> - 0.0.0-8
- Split CUPS functionality on separate package
netdata/packaging: Netdata binary packages generation - spec file refinement, support for nightlies (RPM) (#6369) Detailed list of changes: * netdata/packaging: First round of netdata.spec refactoring - package dependencies - Remove freeipmi/nfacct plugin flags. We auto-detect all plugins by decision - Start refactor of package dependencies - Add missing dependencies, with respect to distro peculiarities - Adjust existing dependencies, so that distro-specific package names is applied * netdata/packaging: add packaging trigger mechanism on binary-packages-specfile-cleanup to help testing * netdata/packaging: WIP - Allow building nightly versions for RPM (Still investigating the right version scheme) * netdata/packaging: Attempt to fix syntax errors - wow travis, mercy * netdata/packaging: tiny nits and fixes 1) there was a syntax error in version definition 2) bring default deploy repo name at the top, then overwrite when latest is published 3) Leave a comment * netdata/packaging: Move these core package requirements to the right section * netdata/packaging: libuv requires >= 1, missed to add that on devel libs * netdata/packaging: some comments, also when you put logrotate in our conf directory, link it to actual log rotate * netdata/packaging: Adjust configure options on spec file (align with netdata-installer.sh) * netdata/packaging: In order to properly support packaging both latest and stable releases, you need to star that extraction part, folder name contains the version with the hash that we cant tell * netdata/packaging: until we fix versioning, bring the original unprocessed spec file and pass the version we like in * netdata/packaging: fix version string in the spec file * netdata/packaging: Replace source path, we need to work with whatever we downloaded (to be refined) * netdata/packaging: [ci skip] you mixed the paths, reverse them * netdata/packaging: [ci skip] attempt to fix source path when needed * netdata/packaging: fixes and nits 1) generalize the spec file refinement method 2) Do both replacement that way 3) Adjust file names and paths * netdata/packaging: Replace Source0 explicitly and also make sure you remove extra new lines that may confuse the replacement later * netdata/packaging: [ci skip] move env outside, add some more log * netdata/packaging: [ci skip] adjust logic of replacing tag lines in spec file * netdata/packaging: [ci skip] Alas, fetch the archive, rename the structure to the new version, repack and proceed * netdata/packaging: [ci skip] Extract to specific path * netdata/packaging: [ci skip] replace problematic tar call with the respective pythonized one * netdata/packaging: [ci skip] Add new friendly octal format for chmod * netdata/packaging: [ci skip] more checks * netdata/packaging: [ci skip] dont chmod, chown the whole folder after extraction * netdata/packaging: nit * netdata/packaging: [ci skip] attempt to fix permissions differently * netdata/packaging: [ci skip] Another hack, attempt to fix permissions on the host directly * netdata/packaging: [ci skip] fine, do the move also on the host, pointless to run all through the container * netdata/packaging: [ci skip] Do the move through the container. Also, move a more specific folder * netdata/packaging: [ci skip] move as w00t * netdata/packaging: [ci skip] fix * netdata/packaging: sync permissions handling, round two * netdata/packaging: scratch those hacks, we should do latest differently * netdata/packaging: [ci skip] Set up rpm version string depending on whether we are on latest or not * netdata/packaging: [ci skip] Branch the code here, latest build up should be on the commit rather the tar files * netdata/packaging: Attempt to handle latest version build up * netdata/packaging: [ci skip] Dont continue processing if the file was not generated. Also do the tagging before autoreconf * netdata/packaging: [ci skip] fixes and nits * netdata/packaging: [ci skip] When doing annotated tags, you need to provide a message otherwise an editor pops up and will block the build * netdata/packaging: on the latest code case go all the way host level operations * netdata/packaging: [ci skip] Do not modify version, no longer need it because we properly generated the package with the right version * netdata/packaging: [ci skip] fix sensors line, you missed the Recommends keyword * netdata/packaging: Some code style (remove tabification from some tags) and also remove Recommends, we start with required packages for build and runtime and then we document further needs * netdata/packaging: [ci skip] Make sure you get epel in there, its needed * netdata/packaging: [ci skip] Fix bogus date * netdata/packaging: [ci skip] add these packages to include functionality * netdata/packaging: [ci skip] more fine grained dependency handling * netdata/packaging: [ci skip] Dependency hell - do not depend on libnetacctfilter if on el/7 * netdata/packaging: [ci skip] Be serious, that is not what you do when building the package silly * netdata/packaging: [ci skip] define directory attributes too * netdata/packaging: [ci skip] mystery unfold - comment out as we need to figure out how to handle missing directories that our installer creates if necessary * netdata/packaging: [ci skip] Make sure you properly set deployment repo based on commit message * netdata/packaging: [ci skip] Install these packages for specific versions, remove optimisations for now * netdata/packaging: [ci skip] Make package yanking flexible, so that we can manage both netdata and netdata-edge cleanup properly * netdata/packaging: [ci skip] Actually, set user at travis layer and let the script consume it only. We need to be sure the same user is used on yanking and the deployment process * netdata/packaging: [ci skip] wow pkatsoul * netdata/packaging: Dont forget to install some of the enabled plugins * netdata/packaging: nfacct.plugin not really working on rhel, disable temporarily * netdata/packaging: include installed directories to package * netdata/packaging: [ci skip] nits * netdata/packaging: fixes * netdata/packaging: [ci skip] dont add ghost files * netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there * netdata/packaging: [ci skip] Extreme - override _libexecdir macro * Revert "netdata/packaging: [ci skip] Dont do that, make install already places the files in the right location. Also, seems that libexec is not really getting overriden there" This reverts commit 320102c96284e4622266f6f089d6ce87319976f3. That wasnt really the problem here * netdata/packaging: [ci skip] Include contents of dir here * netdata/packaging: fixes * netdata/packaging: [ci skip] Fixes and additions - Tighter permissions for some files - Introduce go.d plugin install (likely broken like this, dont recall if bash style code is fine here) - Raise the path overrides to the spec level, otherwise we build with the overrides and package with the defaults * netdata/packaging: [ci skip] Missed an invalid variable. These files are under our current path, no need for complexity * netdata/packaging: [ci skip] bring sha method onboard * netdata/packaging: [ci skip] Wrong path provided, should be under build root * netdata/packaging: [ci skip] Add registry directory * netdata/packaging: [ci skip] add missing config directory definitions * netdata/packaging: [ci skip] Fix missing dirs * netdata/packaging:[ci fix] hos * netdata/packaging: [ci skip] Fixes and additions - Change versioning to v1.15.0.114 from v1.15.0114 - Add CUPS, Xenstat, json-c * netdata/packaging: [ci skip] fix package dependencies on the builder setup, otherwise spec will fail * netdata/packaging: [ci skip] limit xenstat to suse and fedora for now * netdata/packaging: [ci skip] separate fedora and suse cases, unfortunately suse has different package names.... * netdata/packaging: [ci skip] yajl is not the same package everywhere, of course * netdata/packagin: [ci skip] skip xenstat for now * netdata/packaging: [ci skip] remove the vvvvvvvvv * netdata/packaging: [ci skip] one more fix attempt * netdata/packaging: [ci skip] Spec file extraction is different when building from stable. We *must* fetch it from the tarball rather than the local one * netdata/packaging: [ci skip] spec_file defined on all cases, latest or stable. Also move latest spec file copy after make dist operation, that is where is suppose to be * netdata/packaging: [ci skip] Tag source with the local version, as we build upon the very latest * netdata/packaging: oopsie -- remove json-c from that place, it was forgotten * netdata/packaging: fix packaging, even though devel is consistent between fedora and suse, the binary one is not .... (also fix default perms to be root:netdata rather root:root) * netdata/packaging: Suse love - again, libuuid-devel same, but libuuid is named libuuid1 on suse...... * netdata/packaging: [ci skip] libcap same.... * netdata/packaging: [ci skip] use the noreplace directive for the configuration files * netdata/packaging: [ci skip] Bring back master as the triggering repository * netdata/packaging: [ci skip] attempt to enable/disable service where necessary. Default preset action requires further setup, so we override that * Revert "netdata/packaging: [ci skip] Bring back master as the triggering repository" This reverts commit 9b25a622dc5f12b1539f6863bab52d7bb225fd8d. ** Reverting as we need to test further the service enable action ** * netdata/packaging: [ci skip] revert this change - not the right way, we have empty files * netdata/packaging: [ci skip] Add daemon-reload option, to make sure systemd learns about the newly installed service * netdata/packaging: [ci skip] Attempt to silence codacy by factoring out the few small methods for common usage, then kill directories to reduce complexity adn thats it * netdata/packaging: [ci skip] Just making sure codacy reprocess everything * netdata/packaging: [ci skip] missed one adjustment * netdata/packaging: python style - print shouldnt have space before open parenthesis. Also, add restart on all cases on the spec file * netdata/packaging: [ci skip] fix syntax * netdata/packaging: [ci skip] syntax fixes 2 * netdata/packaging: [ci skip] another miss * netdata/packaging: [ci skip] You need to explicitly trigger a restart, apparently * netdata/packaging: [ci skip] override packaging user definition temporarily, to get things going on testing
2019-07-03 09:18:17 +02:00
* Fri Jun 28 2019 Pavlos Emm. Katsoulakis <paul@netdata.cloud> - 0.0.0-7
- Raise the path overrides to the spec file level, not just the configure.
- Adjust tighter permissions on some folders, based on what we did on our installer
- Introduce go.d plugin download and install, to include it on the package (Temporarily, to become separate package on next iteration)
* Tue Jun 25 2019 Pavlos Emm. Katsoulakis <paul@netdata.cloud> - 0.0.0-6
- Adjust dependency list: Some packages are missing on some distros, adopt to build successfully
* Mon Jun 24 2019 Pavlos Emm. Katsoulakis <paul@netdata.cloud> - 0.0.0-5
Another pass on cleaning up pre/post installation steps
- Sync permission and ownership on files and directories
* Sun Jun 16 2019 Pavlos Emm. Katsoulakis <paul@netdata.cloud> - 0.0.0-4
First draft refactor on package dependencies section
- Remove freeipmi/nfacct plugin flags. We auto-detect all plugins by decision
- Start refactor of package dependencies
- Add missing dependencies, with respect to distro peculiarities
- Adjust existing dependencies, so that distro-specific package names is applied
2019-02-01 10:52:40 +01:00
* Wed Jan 02 2019 Pawel Krupa <pkrupa@redhat.com> - 0.0.0-3
- Temporary set version statically
- Fix changelog ordering
- Comment-out node.d configuration directory
* Wed Jan 02 2019 Pawel Krupa <pkrupa@redhat.com> - 0.0.0-2
- Fix permissions for log files
2019-02-01 10:52:40 +01:00
* Sun Nov 15 2015 Alon Bar-Lev <alonbl@redhat.com> - 0.0.0-1
- Initial add.