netdata.spec.in 34 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066
  1. # SPDX-License-Identifier: GPL-3.0-or-later
  2. %global contentdir %{_datadir}/netdata
  3. %global version @PACKAGE_VERSION@
  4. # XXX: We are using automatic `Requires:` generation for libraries
  5. # whenever possible, DO NOT LIST LIBRARY DEPENDENCIES UNLESS THE RESULTANT
  6. # PACKAGE IS BROKEN WITHOUT THEM.
  7. AutoReqProv: yes
  8. # This is temporary and should eventually be resolved. This bypasses
  9. # the default rhel __os_install_post which throws a python compile
  10. # error.
  11. %global __os_install_post %{nil}
  12. # This is needed to support proper handling of Go code without requiring
  13. # external linking or GCCGO, because even recent versions of rpmbuild do
  14. # not properly support the build IDs generated by the upstream Go toolchain.
  15. %global _missing_build_ids_terminate_build 0
  16. # Use our custom CMake version from our package builders if we can’t find cmake.
  17. %if 0%{?centos_ver} == 7
  18. %global __cmake /cmake/bin/cmake
  19. %global __cmake_builddir .
  20. %global cmake %{__cmake}
  21. %global cmake_build %{__cmake} --build %{__cmake_builddir} --verbose --parallel $(nproc)
  22. %global cmake_install DESTDIR="%{buildroot}" %{__cmake} --install %{__cmake_builddir}
  23. %endif
  24. %if 0%{?amazon_linux} == 2
  25. %global __cmake /cmake/bin/cmake
  26. %global __cmake_builddir .
  27. %global cmake %{__cmake}
  28. %global cmake_build %{__cmake} --build %{__cmake_builddir} --verbose --parallel $(nproc)
  29. %global cmake_install DESTDIR="%{buildroot}" %{__cmake} --install %{__cmake_builddir}
  30. %endif
  31. # openSUSE requires us to explicity ask for ninja for builds.
  32. # We also need to specify the build directory since they do not.
  33. %if 0%{?suse_version}
  34. %global __builder ninja
  35. %global __cmake_builddir %{__builddir}
  36. %endif
  37. # Disable eBPF for architectures other than x86
  38. %ifarch x86_64 i386
  39. %global _have_ebpf 1
  40. %else
  41. %global _have_ebpf 0
  42. %endif
  43. # Mitigate the cross-distro mayhem by strictly defining the libexec destination
  44. %define _prefix /usr
  45. %define _sysconfdir /etc
  46. %define _localstatedir /var
  47. %define _libexecdir /usr/libexec
  48. %define _libdir /usr/lib
  49. # Fedora doesn’t define this, but other distros do
  50. %{!?_presetdir:%global _presetdir %{_libdir}/systemd/system-preset}
  51. # Redefine centos_ver to standardize on a single macro
  52. %{?rhel:%global centos_ver %rhel}
  53. # Disable FreeIPMI on Amazon Linux 2023 and newer
  54. %if 0%{?amzn} >= 2023
  55. %global _have_freeipmi 0
  56. %else
  57. %global _have_freeipmi 1
  58. %endif
  59. # Disable CUPS on old RHEL systems.
  60. %if 0%{?centos_ver} != 6 && 0%{?centos_ver} != 7 && 0%{?amazon_linux} != 2
  61. %global _have_cups 1
  62. %else
  63. %global _have_cups 0
  64. %endif
  65. # Disable NFACCT for RHEL equivalents and Amazon Linux
  66. %if 0%{?centos_ver} || 0%{?amzn}
  67. %global _have_nfacct 0
  68. %else
  69. %global _have_nfacct 1
  70. %endif
  71. # Disable xenstat if we’re not on Fedora or openSUSE
  72. %if 0%{?suse_version} || 0%{?fedora}
  73. %if 0%{!?amzm:1}
  74. %global _have_xenstat 0
  75. %else
  76. %global _have_xenstat 1
  77. %endif
  78. %else
  79. %global _have_xenstat 0
  80. %endif
  81. # Skip MongoDB exporter on known problem platforms
  82. %if 0%{?oraclelinux} || 0%{?suse_version} || 0%{?amzn}
  83. %global _have_mongo_exporter 0
  84. %else
  85. %global _have_mongo_exporter 1
  86. %endif
  87. # If ML hasn’t been explicitly disabled or enabled yet, enable it now.
  88. %if 0%{!?_have_ml:1}
  89. %global _have_ml 1
  90. %endif
  91. # Filter known bogus deps that would be caught by AutoReqProv.
  92. %global __requires_exclude_from ^%{_libdir}/%{name}/system/.*$
  93. Summary: Real-time performance monitoring, done right!
  94. Name: netdata
  95. Version: %{version}
  96. Release: 1%{?dist}
  97. License: GPLv3+
  98. Group: Applications/System
  99. Source0: https://github.com/%{name}/%{name}/releases/download/%{version}/%{name}-%{version}.tar.gz
  100. URL: http://my-%{name}.io
  101. # Remove conflicting EPEL packages
  102. Obsoletes: %{name}-conf
  103. Obsoletes: %{name}-data
  104. # #####################################################################
  105. # Core build/install/runtime dependencies
  106. # #####################################################################
  107. # Build dependencies
  108. #
  109. BuildRequires: gcc
  110. BuildRequires: gcc-c++
  111. BuildRequires: make
  112. BuildRequires: git-core
  113. BuildRequires: cmake
  114. %if 0%{!?suse_version:1}
  115. BuildRequires: ninja-build
  116. %else
  117. BuildRequires: ninja
  118. %endif
  119. BuildRequires: pkgconfig
  120. BuildRequires: curl
  121. BuildRequires: findutils
  122. BuildRequires: pkgconfig(zlib)
  123. BuildRequires: pkgconfig(uuid)
  124. BuildRequires: pkgconfig(libuv)
  125. BuildRequires: pkgconfig(openssl)
  126. BuildRequires: pkgconfig(libcurl)
  127. BuildRequires: pkgconfig(liblz4)
  128. BuildRequires: pkgconfig(yaml-0.1)
  129. BuildRequires: pkgconfig(json-c)
  130. %if 0%{?suse_version}
  131. # log2journal is not available on these systems
  132. %else
  133. BuildRequires: pkgconfig(libpcre2-8)
  134. %endif
  135. %if 0%{?suse_version}
  136. BuildRequires: protobuf-devel
  137. BuildRequires: libprotobuf-c-devel
  138. %else
  139. %if 0%{?fedora}
  140. BuildRequires: protobuf-devel
  141. BuildRequires: protobuf-c-devel
  142. %else
  143. %if 0%{?centos_ver} >= 8
  144. BuildRequires: protobuf-devel
  145. BuildRequires: protobuf-c-devel
  146. %endif
  147. %endif
  148. %endif
  149. # Core build requirements for service install
  150. %if 0%{?suse_version}
  151. BuildRequires: systemd-rpm-macros
  152. %else
  153. BuildRequires: systemd
  154. %endif
  155. # Core requirements for the install to succeed
  156. Requires(pre): /usr/sbin/groupadd
  157. Requires(pre): /usr/sbin/useradd
  158. # #####################################################################
  159. # External plugin package dependencies
  160. # #####################################################################
  161. # CentOS prior to CentOS 8 does not have a new enough version of RPM
  162. # to support weak dependencies. Explicitly requiring our default plugins
  163. # makes it impossible to properly test the packages prior to upload,
  164. # so we just skip depending on them on CentOS 7.
  165. %if 0%{?_have_ebpf}
  166. Requires: %{name}-plugin-ebpf = %{version}
  167. %endif
  168. Requires: %{name}-plugin-apps = %{version}
  169. Requires: %{name}-plugin-pythond = %{version}
  170. Requires: %{name}-plugin-go = %{version}
  171. Requires: %{name}-plugin-debugfs = %{version}
  172. Requires: %{name}-plugin-chartsd = %{version}
  173. Requires: %{name}-plugin-slabinfo = %{version}
  174. Requires: %{name}-plugin-perf = %{version}
  175. %if %{_have_nfacct}
  176. Requires: %{name}-plugin-nfacct = %{version}
  177. %endif
  178. %if %{_have_xenstat}
  179. Suggests: %{name}-plugin-xenstat = %{version}
  180. %endif
  181. %if %{_have_freeipmi} && 0%{?centos_ver} != 6 && 0%{?centos_ver} != 7 && 0%{?amazon_linux} != 2
  182. Suggests: %{name}-plugin-freeipmi = %{version}
  183. %endif
  184. %if 0%{?centos_ver} != 7 && 0%{?amazon_linux} != 2
  185. %if %{_have_cups}
  186. Suggests: %{name}-plugin-cups = %{version}
  187. %endif
  188. Recommends: %{name}-plugin-systemd-journal = %{version}
  189. Recommends: %{name}-plugin-network-viewer = %{version}
  190. Recommends: %{name}-plugin-logs-management = %{version}
  191. %else
  192. Requires: %{name}-plugin-systemd-journal = %{version}
  193. Requires: %{name}-plugin-network-viewer = %{version}
  194. %endif
  195. # #####################################################################
  196. # Functionality-dependent package dependencies
  197. # #####################################################################
  198. # Note: Some or all of the Packages may be found in the EPEL repo,
  199. # rather than the standard ones
  200. # epbf plugin dependencies
  201. %if %{_have_ebpf}
  202. BuildRequires: pkgconfig(libelf)
  203. %endif
  204. # end ebpf plugin dependencies
  205. # nfacct plugin dependencies
  206. %if %{_have_nfacct}
  207. BuildRequires: pkgconfig(libmnl)
  208. BuildRequires: pkgconfig(libnetfilter_acct)
  209. %endif
  210. # end nfacct plugin dependencies
  211. # freeipmi plugin dependencies
  212. %if %{_have_freeipmi}
  213. BuildRequires: pkgconfig(libipmimonitoring)
  214. %endif
  215. # end - freeipmi plugin dependencies
  216. # CUPS plugin dependencies
  217. %if %{_have_cups}
  218. BuildRequires: cups-devel
  219. %endif
  220. # end - cups plugin dependencies
  221. # go.d.plugin dependencies
  222. #
  223. # The conditional here is checking for a macro we define in our package
  224. # builders. If it’s defined, then we’ve injected an upstream copy of
  225. # the Go toolchain, so we don’t need the package installed (which
  226. # is needed because Go’s development model is at odds with enterprise
  227. # distro handling of versioning).
  228. %if %{?_upstream_go_toolchain:0}%{!?_upstream_go_toolchain:1}
  229. %if 0%{?suse_version}
  230. BuildRequires: go >= 1.21
  231. %else
  232. BuildRequires: golang >= 1.21
  233. %endif
  234. %endif
  235. # end - go.d.plugin plugin dependencies
  236. # systemd-journal dependencies
  237. BuildRequires: pkgconfig(libsystemd)
  238. # end - systemd-journal dependencies
  239. # Prometheus remote write dependencies
  240. %if 0%{?suse_version}
  241. BuildRequires: snappy-devel
  242. %else
  243. %if 0%{?centos_ver} != 7
  244. BuildRequires: pkgconfig(snappy)
  245. %else
  246. BuildRequires: snappy-devel
  247. %endif
  248. %endif
  249. # end - prometheus remote write dependencies
  250. # Xenstat dependencies
  251. %if %{_have_xenstat}
  252. BuildRequires: pkgconfig(xenstat)
  253. BuildRequires: pkgconfig(xenlight)
  254. %endif
  255. # end - xenstat dependencies
  256. # MongoDB exporter dependencies
  257. %if %{_have_mongo_exporter}
  258. BuildRequires: pkgconfig(libmongoc-1.0)
  259. %endif
  260. # end - mongodb expoerter dependencies
  261. # logs-management dependencies
  262. BuildRequires: bison
  263. BuildRequires: flex
  264. # end - logs-management dependencies
  265. # #####################################################################
  266. # End of dependency management configuration
  267. # #####################################################################
  268. %description
  269. netdata is the fastest way to visualize metrics. It is a resource
  270. efficient, highly optimized system for collecting and visualizing any
  271. type of realtime timeseries data, from CPU usage, disk activity, SQL
  272. queries, API calls, web site visitors, etc.
  273. netdata tries to visualize the truth of now, in its greatest detail,
  274. so that you can get insights of what is happening now and what just
  275. happened, on your systems and applications.
  276. %prep
  277. %setup -q -n "%{name}-%{version}"
  278. %build
  279. # Conf step
  280. %cmake -G Ninja \
  281. -DCMAKE_INSTALL_PREFIX=/ \
  282. %if 0%{?centos_ver:1}
  283. %if %{centos_ver} < 8
  284. -DUSE_CXX_11=On \
  285. %endif
  286. %endif
  287. %if %{_have_cups}
  288. -DENABLE_PLUGIN_CUPS=On \
  289. %else
  290. -DENABLE_PLUGIN_CUPS=Off \
  291. %endif
  292. %if %{_have_ebpf}
  293. -DENABLE_PLUGIN_EBPF=On \
  294. %if 0%{?centos_ver:1}
  295. %if 0%{?centos_ver} < 8
  296. -DFORCE_LEGACY_LIBBPF=On \
  297. %endif
  298. %endif
  299. %else
  300. -DENABLE_PLUGIN_EBPF=Off \
  301. %endif
  302. %if %{_have_freeipmi}
  303. -DENABLE_PLUGIN_FREEIPMI=On \
  304. %else
  305. -DENABLE_PLUGIN_FREEIPMI=Off \
  306. %endif
  307. %if %{_have_nfacct}
  308. -DENABLE_PLUGIN_NFACCT=On \
  309. %else
  310. -DENABLE_PLUGIN_NFACCT=Off \
  311. %endif
  312. %if %{_have_xenstat}
  313. -DENABLE_PLUGIN_XENSTAT=On \
  314. %else
  315. -DENABLE_PLUGIN_XENSTAT=Off \
  316. %endif
  317. %if 0%{?centos_ver:1}
  318. %if %{centos_ver} < 8
  319. -DENABLE_BUNDLED_PROTOBUF=On \
  320. %else
  321. -DENABLE_BUNDLED_PROTOBUF=Off \
  322. %endif
  323. %else
  324. -DENABLE_BUNDLED_PROTOBUF=Off \
  325. %endif
  326. %if %{_have_ml}
  327. -DENABLE_ML=On \
  328. %else
  329. -DENABLE_ML=Off \
  330. %endif
  331. %if %{_have_mongo_exporter}
  332. -DENABLE_EXPORTER_MONGODB=On \
  333. %else
  334. -DENABLE_EXPORTER_MONGODB=Off \
  335. %endif
  336. -DENABLE_ACLK=On \
  337. -DENABLE_CLOUD=On \
  338. -DENABLE_DBENGINE=On \
  339. -DENABLE_H2O=On \
  340. -DENABLE_PLUGIN_APPS=On \
  341. -DENABLE_PLUGIN_CGROUP_NETWORK=On \
  342. -DENABLE_PLUGIN_DEBUGFS=On \
  343. -DENABLE_PLUGIN_GO=On \
  344. -DENABLE_PLUGIN_LOCAL_LISTENERS=On \
  345. -DENABLE_PLUGIN_PERF=On \
  346. -DENABLE_PLUGIN_SLABINFO=On \
  347. -DENABLE_PLUGIN_SYSTEMD_JOURNAL=On \
  348. -DENABLE_PLUGIN_LOGS_MANAGEMENT=On \
  349. -DENABLE_EXPORTER_PROMETHEUS_REMOTE_WRITE=On \
  350. -DENABLE_BUNDLED_JSONC=Off \
  351. -DENABLE_BUNDLED_YAML=Off
  352. # Build step
  353. %{cmake_build}
  354. %install
  355. # ###########################################################
  356. # Clear the directory, if already exists and install
  357. rm -rf "${RPM_BUILD_ROOT}"
  358. %{cmake_install}
  359. install -m 644 -p "${RPM_BUILD_ROOT}%{_libdir}/%{name}/conf.d/%{name}.conf" "${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}"
  360. install -m 644 -p "${RPM_BUILD_ROOT}%{_libdir}/%{name}/conf.d/%{name}-updater.conf" "${RPM_BUILD_ROOT}%{_sysconfdir}/%{name}"
  361. # ###########################################################
  362. # Install updater script
  363. install -m 755 -p packaging/installer/%{name}-updater.sh "${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/%{name}-updater.sh"
  364. # ###########################################################
  365. # logrotate settings
  366. install -m 755 -d "${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d"
  367. install -m 644 -p "%{__cmake_builddir}/system/logrotate/%{name}" "${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d/%{name}"
  368. # ###########################################################
  369. # Install cache and log directories
  370. install -m 755 -d "${RPM_BUILD_ROOT}%{_localstatedir}/cache/%{name}"
  371. install -m 755 -d "${RPM_BUILD_ROOT}%{_localstatedir}/log/%{name}"
  372. # ###########################################################
  373. # Install registry directory
  374. install -m 755 -d "${RPM_BUILD_ROOT}%{_localstatedir}/lib/%{name}/registry"
  375. # ###########################################################
  376. # Install uninstaller script
  377. install -m 750 -p packaging/installer/%{name}-uninstaller.sh \
  378. "${RPM_BUILD_ROOT}%{_libexecdir}/%{name}/%{name}-uninstaller.sh"
  379. # ###########################################################
  380. # Install netdata service
  381. install -m 755 -d "${RPM_BUILD_ROOT}%{_unitdir}"
  382. %if 0%{?centos_ver} != 7 && 0%{?amazon_linux} != 2
  383. install -m 644 -p "%{__cmake_builddir}/system/systemd/%{name}.service" "${RPM_BUILD_ROOT}%{_unitdir}/%{name}.service"
  384. %else
  385. install -m 644 -p "%{__cmake_builddir}/system/systemd/%{name}.service.v235" "${RPM_BUILD_ROOT}%{_unitdir}/%{name}.service"
  386. %endif
  387. install -m 755 -d "${RPM_BUILD_ROOT}%{_presetdir}"
  388. install -m 644 -p "system/systemd/50-%{name}.preset" "${RPM_BUILD_ROOT}%{_presetdir}/50-%{name}.preset"
  389. %pre
  390. if ! getent group %{name} > /dev/null; then
  391. groupadd --system %{name}
  392. fi
  393. if ! getent passwd %{name} > /dev/null; then
  394. useradd --system -g %{name} --home %{contentdir} --no-create-home -s /sbin/nologin -c "Netdata pseudo user" %{name}
  395. fi
  396. # I am not sure that the corresponding group names are exactly the same as in Debian, but we should start somewhere, shouldn't we?
  397. for item in docker nginx varnish haproxy adm nsd proxy squid ceph nobody I2C; do
  398. if getent group $item > /dev/null 2>&1; then
  399. usermod -a -G ${item} %{name}
  400. fi
  401. done
  402. %post
  403. %if 0%{?suse_version}
  404. %service_add_post %{name}.service
  405. %else
  406. %systemd_post %{name}.service
  407. %endif
  408. %preun
  409. %if 0%{?suse_version}
  410. %service_del_preun %{name}.service
  411. %else
  412. %systemd_preun %{name}.service
  413. %endif
  414. %postun
  415. %if 0%{?suse_version}
  416. %service_del_postun %{name}.service
  417. %else
  418. %systemd_postun_with_restart %{name}.service
  419. %endif
  420. %clean
  421. rm -rf "${RPM_BUILD_ROOT}"
  422. %files
  423. %doc README.md
  424. %config(noreplace) %{_sysconfdir}/%{name}/%{name}.conf
  425. %config(noreplace) %{_sysconfdir}/%{name}/%{name}-updater.conf
  426. %attr(0755,root,netdata) %{_sysconfdir}/%{name}/edit-config
  427. %attr(0644,root,netdata) %{_sysconfdir}/%{name}/.install-type
  428. %dir %{_sysconfdir}/%{name}/health.d
  429. %dir %{_sysconfdir}/%{name}/statsd.d
  430. %config(noreplace) %{_sysconfdir}/logrotate.d/%{name}
  431. %{_libdir}/%{name}
  432. %{_sbindir}/%{name}
  433. %{_sbindir}/netdatacli
  434. %if 0%{?suse_version}
  435. # log2journal is not available on these systems
  436. %else
  437. %{_sbindir}/log2journal
  438. %endif
  439. %{_sbindir}/systemd-cat-native
  440. %{_sbindir}/%{name}-claim.sh
  441. %{_unitdir}/%{name}.service
  442. %{_presetdir}/50-%{name}.preset
  443. %dir %{_libexecdir}/%{name}
  444. %dir %{_libexecdir}/%{name}/plugins.d
  445. %defattr(0750,root,netdata,0750)
  446. %{_libexecdir}/%{name}/install-service.sh
  447. %{_libexecdir}/%{name}/%{name}-updater.sh
  448. %{_libexecdir}/%{name}/%{name}-uninstaller.sh
  449. %{_libexecdir}/%{name}/plugins.d/acl.sh
  450. %{_libexecdir}/%{name}/plugins.d/alarm.sh
  451. %{_libexecdir}/%{name}/plugins.d/alarm-email.sh
  452. %{_libexecdir}/%{name}/plugins.d/alarm-notify.sh
  453. %{_libexecdir}/%{name}/plugins.d/alarm-test.sh
  454. %{_libexecdir}/%{name}/plugins.d/anonymous-statistics.sh
  455. %{_libexecdir}/%{name}/plugins.d/cgroup-name.sh
  456. %{_libexecdir}/%{name}/plugins.d/get-kubernetes-labels.sh
  457. %{_libexecdir}/%{name}/plugins.d/health-cmdapi-test.sh
  458. %{_libexecdir}/%{name}/plugins.d/ioping.plugin
  459. %{_libexecdir}/%{name}/plugins.d/loopsleepms.sh.inc
  460. %{_libexecdir}/%{name}/plugins.d/request.sh
  461. %{_libexecdir}/%{name}/plugins.d/system-info.sh
  462. %{_libexecdir}/%{name}/plugins.d/tc-qos-helper.sh
  463. %{_libexecdir}/%{name}/plugins.d/template_dim.sh
  464. %{_libexecdir}/%{name}/plugins.d/ebpf_thread_function.sh
  465. # cgroup-network detects the network interfaces of CGROUPs
  466. # it must be able to use setns() and run cgroup-network-helper.sh as root
  467. # the helper script reads /proc/PID/fdinfo/* files, runs virsh, etc.
  468. %attr(4750,root,netdata) %{_libexecdir}/%{name}/plugins.d/cgroup-network
  469. %attr(0750,root,netdata) %{_libexecdir}/%{name}/plugins.d/cgroup-network-helper.sh
  470. # local-listeners detects the local processes that are listening for connections
  471. %attr(4750,root,netdata) %{_libexecdir}/%{name}/plugins.d/local-listeners
  472. # network-viewer.plugin, detects all system sockets and classifies them
  473. %attr(4750,root,netdata) %{_libexecdir}/%{name}/plugins.d/network-viewer.plugin
  474. # ndsudo a helper to run privileged commands
  475. %attr(4750,root,netdata) %{_libexecdir}/%{name}/plugins.d/ndsudo
  476. # Enforce 0644 for files and 0755 for directories
  477. # for the netdata web directory
  478. %defattr(0644,root,root,0755)
  479. %{_datadir}/%{name}/web
  480. # Enforce 0660 for files and 0770 for directories
  481. # for the netdata lib, cache and log dirs
  482. %defattr(0660,root,netdata,0770)
  483. %attr(0770,netdata,netdata) %dir %{_localstatedir}/cache/%{name}
  484. %attr(0755,netdata,root) %dir %{_localstatedir}/log/%{name}
  485. %attr(0770,netdata,netdata) %dir %{_localstatedir}/lib/%{name}
  486. %attr(0770,netdata,netdata) %dir %{_localstatedir}/lib/%{name}/registry
  487. %attr(0770,netdata,netdata) %dir %{_localstatedir}/lib/%{name}/cloud.d
  488. # Free IPMI belongs to a different sub-package
  489. %if %{_have_freeipmi}
  490. %exclude %{_libexecdir}/%{name}/plugins.d/freeipmi.plugin
  491. %endif
  492. # NFACCT belongs to a different sub-package
  493. %if %{_have_nfacct}
  494. %exclude %{_libexecdir}/%{name}/plugins.d/nfacct.plugin
  495. %endif
  496. # Charts.d belongs to a different sub-package
  497. %exclude %{_libexecdir}/%{name}/plugins.d/charts.d.plugin
  498. %exclude %{_libexecdir}/%{name}/plugins.d/charts.d.dryrun-helper.sh
  499. %exclude %{_libexecdir}/%{name}/charts.d/
  500. %exclude %{_libdir}/%{name}/conf.d/charts.d.conf
  501. %exclude %{_libdir}/%{name}/conf.d/charts.d/
  502. # eBPF belongs to a different sub-package
  503. %if %{_have_ebpf}
  504. %exclude %{_libexecdir}/%{name}/plugins.d/ebpf.plugin
  505. %exclude %{_libdir}/%{name}/conf.d/ebpf.d.conf
  506. %exclude %{_libdir}/%{name}/conf.d/ebpf.d
  507. %exclude %{_libexecdir}/%{name}/plugins.d/ebpf.d
  508. %endif
  509. # Python.d belongs to a different sub-package
  510. %exclude %{_libexecdir}/%{name}/plugins.d/python.d.plugin
  511. %exclude %{_libexecdir}/%{name}/python.d
  512. %exclude %{_libdir}/%{name}/conf.d/python.d.conf
  513. %exclude %{_libdir}/%{name}/conf.d/python.d
  514. # Go.d belongs to a different sub-package
  515. %exclude %{_libexecdir}/%{name}/plugins.d/go.d.plugin
  516. %exclude %{_libdir}/%{name}/conf.d/go.d.conf
  517. %exclude %{_libdir}/%{name}/conf.d/go.d
  518. # apps belongs to a different sub-package
  519. %exclude %{_libexecdir}/%{name}/plugins.d/apps.plugin
  520. %exclude %{_libdir}/%{name}/conf.d/apps_groups.conf
  521. # slabinfo belongs to a different sub-package
  522. %exclude %{_libexecdir}/%{name}/plugins.d/slabinfo.plugin
  523. # perf belongs to a different sub-package
  524. %exclude %{_libexecdir}/%{name}/plugins.d/perf.plugin
  525. # systemd-journal belongs to a different sub-package
  526. %exclude %{_libexecdir}/%{name}/plugins.d/systemd-journal.plugin
  527. # xenstat belongs to a different sub-package
  528. %exclude %{_libexecdir}/%{name}/plugins.d/xenstat.plugin
  529. # logs management belongs to a different sub-package
  530. %exclude %{_libexecdir}/%{name}/plugins.d/logs-management.plugin
  531. %exclude %{_libdir}/%{name}/conf.d/logsmanagement.d.conf
  532. %exclude %{_libdir}/%{name}/conf.d/logsmanagement.d
  533. # Network viewer belongs to a different sub-package
  534. %exclude %{_libexecdir}/%{name}/plugins.d/network-viewer.plugin
  535. # CUPS belongs to a different sub package
  536. %if %{_have_cups}
  537. %exclude %{_libexecdir}/%{name}/plugins.d/cups.plugin
  538. %package plugin-cups
  539. Summary: The CUPS metrics collection plugin for the Netdata Agent
  540. Group: Applications/System
  541. Requires: %{name} = %{version}
  542. %description plugin-cups
  543. This plugin allows the Netdata Agent to collect metrics from the Common UNIX Printing System.
  544. %pre plugin-cups
  545. if ! getent group %{name} > /dev/null; then
  546. groupadd --system %{name}
  547. fi
  548. %files plugin-cups
  549. %attr(0750,root,netdata) %{_libexecdir}/%{name}/plugins.d/cups.plugin
  550. %endif
  551. %if 0%{?_have_freeipmi}
  552. %package plugin-freeipmi
  553. Summary: The FreeIPMI metrics collection plugin for the Netdata Agent
  554. Group: Applications/System
  555. Requires: freeipmi
  556. Requires: %{name} = %{version}
  557. %description plugin-freeipmi
  558. This plugin allows the Netdata Agent to collect metrics from hardware using FreeIPMI.
  559. %pre plugin-freeipmi
  560. if ! getent group %{name} > /dev/null; then
  561. groupadd --system %{name}
  562. fi
  563. %files plugin-freeipmi
  564. %attr(4750,root,netdata) %{_libexecdir}/%{name}/plugins.d/freeipmi.plugin
  565. %endif
  566. %if %{_have_nfacct}
  567. %package plugin-nfacct
  568. Summary: The NFACCT metrics collection plugin for the Netdata Agent
  569. Group: Applications/System
  570. Requires: %{name} = %{version}
  571. Conflicts: %{name} < %{version}
  572. %description plugin-nfacct
  573. This plugin allows the Netdata Agent to collect metrics from the firewall using NFACCT objects.
  574. %pre plugin-nfacct
  575. if ! getent group %{name} > /dev/null; then
  576. groupadd --system %{name}
  577. fi
  578. %files plugin-nfacct
  579. %attr(4750,root,netdata) %{_libexecdir}/%{name}/plugins.d/nfacct.plugin
  580. %endif
  581. %package plugin-chartsd
  582. Summary: The charts.d metrics collection plugin for the Netdata Agent
  583. Group: Applications/System
  584. Requires: bash
  585. Requires: %{name} = %{version}
  586. Conflicts: %{name} < %{version}
  587. %if 0%{?centos_ver} != 7
  588. Suggests: apcupsd
  589. Suggests: iw
  590. Suggests: sudo
  591. %endif
  592. %description plugin-chartsd
  593. This plugin adds a selection of additional collectors written in shell script to the Netdata Agent.
  594. It includes collectors for APCUPSD, LibreSWAN, OpenSIPS, and Wireless access point statistics.
  595. %pre plugin-chartsd
  596. if ! getent group %{name} > /dev/null; then
  597. groupadd --system %{name}
  598. fi
  599. %files plugin-chartsd
  600. %defattr(0750,root,netdata,0750)
  601. %{_libexecdir}/%{name}/plugins.d/charts.d.plugin
  602. %{_libexecdir}/%{name}/plugins.d/charts.d.dryrun-helper.sh
  603. %{_libexecdir}/%{name}/charts.d/
  604. %defattr(0644,root,netdata,0755)
  605. %{_libdir}/%{name}/conf.d/charts.d.conf
  606. %{_libdir}/%{name}/conf.d/charts.d/
  607. %if 0%{?_have_ebpf}
  608. %package plugin-ebpf
  609. Summary: The eBPF metrics collection plugin for the Netdata Agent
  610. Group: Applications/System
  611. Requires: %{name} = %{version}
  612. Conflicts: %{name} < %{version}
  613. %if 0%{?centos_ver} != 7
  614. Recommends: %{name}-plugin-apps = %{version}
  615. Recommends: %{name}-ebpf-legacy-code >= %{version}
  616. %else
  617. Requires: %{name}-plugin-apps = %{version}
  618. Requires: %{name}-ebpf-legacy-code >= %{version}
  619. %endif
  620. %description plugin-ebpf
  621. This plugin allows the Netdata Agent to use eBPF code to collect more detailed kernel-level metrics for the system.
  622. %pre plugin-ebpf
  623. if ! getent group %{name} > /dev/null; then
  624. groupadd --system %{name}
  625. fi
  626. %files plugin-ebpf
  627. %defattr(4750,root,netdata,4750)
  628. %{_libexecdir}/%{name}/plugins.d/ebpf.plugin
  629. %defattr(0644,root,netdata,0755)
  630. %{_libdir}/%{name}/conf.d/ebpf.d.conf
  631. %{_libdir}/%{name}/conf.d/ebpf.d
  632. %package ebpf-legacy-code
  633. Summary: Compiled eBPF legacy code for the Netdata eBPF plugin
  634. Group: Applications/System
  635. Requires: %{name}-plugin-ebpf = %{version}
  636. Conflicts: %{name} < %{version}
  637. %description ebpf-legacy-code
  638. This package provides the pre-compiled eBPF legacy code for use by the Netdata eBPF plugin.
  639. This code is only needed when using the eBPF plugin with kernel versions before 5.10.
  640. %pre ebpf-legacy-code
  641. if ! getent group %{name} > /dev/null; then
  642. groupadd --system %{name}
  643. fi
  644. %files ebpf-legacy-code
  645. %defattr(0640,root,netdata,0640)
  646. %{_libexecdir}/%{name}/plugins.d/ebpf.d/*.o
  647. %endif
  648. %package plugin-pythond
  649. Summary: The python.d metrics collection plugin for the Netdata Agent
  650. Group: Applications/System
  651. Requires: %{name} = %{version}
  652. Conflicts: %{name} < %{version}
  653. %if 0%{?centos_ver} == 7 || 0%{?centos_ver} == 6
  654. Requires: python
  655. %else
  656. Requires: python3
  657. %endif
  658. %if 0%{?centos_ver} != 7
  659. Suggests: sudo
  660. %endif
  661. %description plugin-pythond
  662. This plugin adds a selection of additional collectors written in Python to the Netdata Agent.
  663. Many of the collectors provided by this package are also available in netdata-plugin-go. In msot cases, you probably
  664. want to use those versions instead of the Python versions.
  665. %pre plugin-pythond
  666. if ! getent group %{name} > /dev/null; then
  667. groupadd --system %{name}
  668. fi
  669. %files plugin-pythond
  670. %defattr(0750,root,netdata,0750)
  671. %{_libexecdir}/%{name}/plugins.d/python.d.plugin
  672. %{_libexecdir}/%{name}/python.d
  673. %defattr(0644,root,netdata,0755)
  674. %{_libdir}/%{name}/conf.d/python.d.conf
  675. %{_libdir}/%{name}/conf.d/python.d
  676. %package plugin-go
  677. Summary: The go.d metrics collection plugin for the Netdata Agent
  678. Group: Applications/System
  679. Requires: %{name} = %{version}
  680. Conflicts: %{name} < %{version}
  681. %if 0%{?centos_ver} != 7
  682. Suggests: nvme-cli
  683. Suggests: sudo
  684. %endif
  685. %description plugin-go
  686. This plugin adds a selection of additional collectors written in Go to the Netdata Agent
  687. A significant percentage of the application specific collectors provided by Netdata are part of this plugin,
  688. so most users will want it installed.
  689. %pre plugin-go
  690. if ! getent group %{name} > /dev/null; then
  691. groupadd --system %{name}
  692. fi
  693. %files plugin-go
  694. %defattr(0750,root,netdata,0750)
  695. # CAP_NET_ADMIN needed for WireGuard collector
  696. # CAP_NET_RAW needed for ping collector
  697. %caps(cap_dac_read_search,cap_net_admin,cap_net_raw=eip) %{_libexecdir}/%{name}/plugins.d/go.d.plugin
  698. %defattr(0644,root,netdata,0755)
  699. %{_libdir}/%{name}/conf.d/go.d.conf
  700. %{_libdir}/%{name}/conf.d/go.d
  701. %package plugin-apps
  702. Summary: The per-application metrics collection plugin for the Netdata Agent
  703. Group: Applications/System
  704. Requires: %{name} = %{version}
  705. Conflicts: %{name} < %{version}
  706. %description plugin-apps
  707. This plugin allows the Netdata Agent to collect per-application and per-user metrics without using cgroups.
  708. %pre plugin-apps
  709. if ! getent group %{name} > /dev/null; then
  710. groupadd --system %{name}
  711. fi
  712. %files plugin-apps
  713. %defattr(0750,root,netdata,0750)
  714. # CAP_DAC_READ_SEARCH and CAP_SYS_PTRACE needed for data collection by the plugin.
  715. %caps(cap_dac_read_search,cap_sys_ptrace=ep) %{_libexecdir}/%{name}/plugins.d/apps.plugin
  716. %defattr(0644,root,netdata,0755)
  717. %{_libdir}/%{name}/conf.d/apps_groups.conf
  718. %package plugin-slabinfo
  719. Summary: The slabinfo metrics collector for the Netdata Agent
  720. Group: Applications/System
  721. Requires: %{name} = %{version}
  722. Conflicts: %{name} < %{version}
  723. %description plugin-slabinfo
  724. This plugin allows the Netdata Agent to collect perfromance and utilization metrics for the Linux kernel’s SLAB allocator.
  725. %pre plugin-slabinfo
  726. if ! getent group %{name} > /dev/null; then
  727. groupadd --system %{name}
  728. fi
  729. %files plugin-slabinfo
  730. %defattr(0750,root,netdata,0750)
  731. # CAP_DAC_READ_SEARCH needed to access the files the plugin reads to collect data.
  732. %caps(cap_dac_read_search=ep) %{_libexecdir}/%{name}/plugins.d/slabinfo.plugin
  733. %package plugin-perf
  734. Summary: The perf metrics collector for the Netdata Agent
  735. Group: Applications/System
  736. Requires: %{name} = %{version}
  737. Conflicts: %{name} < %{version}
  738. %description plugin-perf
  739. This plugin allows the Netdata to collect metrics from the Linux perf subsystem.
  740. %pre plugin-perf
  741. if ! getent group %{name} > /dev/null; then
  742. groupadd --system %{name}
  743. fi
  744. %files plugin-perf
  745. %defattr(0750,root,netdata,0750)
  746. # Either CAP_SYS_ADMIN or CAP_PERFMON needed for data collection
  747. # PERFMON is newer, so only try to use it on platforms which support it.
  748. %if 0%{?centos_ver} >= 9 || 0%{?fedora} >= 36
  749. %caps(cap_perfmon=ep) %{_libexecdir}/%{name}/plugins.d/perf.plugin
  750. %else
  751. %caps(cap_sys_admin=ep) %{_libexecdir}/%{name}/plugins.d/perf.plugin
  752. %endif
  753. %package plugin-debugfs
  754. Summary: The debugfs metrics collector for the Netdata Agent
  755. Group: Applications/System
  756. Requires: %{name} = %{version}
  757. Conflicts: %{name} < %{version}
  758. %description plugin-debugfs
  759. This plugin allows the Netdata Agent to collect Linux kernel metrics exposed through debugfs.
  760. %pre plugin-debugfs
  761. if ! getent group %{name} > /dev/null; then
  762. groupadd --system %{name}
  763. fi
  764. %files plugin-debugfs
  765. %defattr(0750,root,netdata,0750)
  766. # CAP_DAC_READ_SEARCH required for data collection.
  767. %caps(cap_dac_read_search=ep) %attr(0750,root,netdata) %{_libexecdir}/%{name}/plugins.d/debugfs.plugin
  768. %package plugin-systemd-journal
  769. Summary: The systemd-journal plugin for the Netdata Agent
  770. Group: Applications/System
  771. Requires: %{name} = %{version}
  772. Conflicts: %{name} < %{version}
  773. %description plugin-systemd-journal
  774. This plugin allows the Netdata Agent to present entries from the systemd
  775. journal on Netdata Cloud or the local Agent Dashboard.
  776. %pre plugin-systemd-journal
  777. if ! getent group %{name} > /dev/null; then
  778. groupadd --system %{name}
  779. fi
  780. %files plugin-systemd-journal
  781. %defattr(0750,root,netdata,0750)
  782. # CAP_DAC_READ_SEARCH required for data collection.
  783. %caps(cap_dac_read_search=ep) %attr(0750,root,netdata) %{_libexecdir}/%{name}/plugins.d/systemd-journal.plugin
  784. %if %{_have_xenstat}
  785. %package plugin-xenstat
  786. Summary: The xenstat plugin for the Netdata Agent
  787. Group: Applications/System
  788. Requires: %{name} = %{version}
  789. Conflicts: %{name} < %{version}
  790. %description plugin-xenstat
  791. This plugin allows Netdata to collect metrics from the Xen Hypervisor.
  792. %pre plugin-xenstat
  793. if ! getent group %{name} > /dev/null; then
  794. groupadd --system %{name}
  795. fi
  796. %files plugin-xenstat
  797. %defattr(0750,root,netdata,0750)
  798. # SUID needed for data collection
  799. %attr(4750,root,netdata) %{_libexecdir}/%{name}/plugins.d/xenstat.plugin
  800. %endif
  801. %package plugin-logs-management
  802. Summary: The logs-management plugin for the Netdata Agent
  803. Group: Applications/System
  804. Requires: %{name} = %{version}
  805. Conflicts: %{name} < %{version}
  806. %description plugin-logs-management
  807. This plugin allows the Netdata Agent to collect logs from the system
  808. and parse them to extract metrics.
  809. %pre plugin-logs-management
  810. if ! getent group %{name} > /dev/null; then
  811. groupadd --system %{name}
  812. fi
  813. %files plugin-logs-management
  814. %defattr(0644,root,netdata,0755)
  815. %{_libdir}/%{name}/conf.d/logsmanagement.d.conf
  816. %{_libdir}/%{name}/conf.d/logsmanagement.d
  817. %defattr(0750,root,netdata,0750)
  818. # CAP_DAC_READ_SEARCH and CAP_SYSLOG needed for data collection.
  819. %caps(cap_dac_read_search,cap_syslog=ep) %attr(0750,root,netdata) %{_libexecdir}/%{name}/plugins.d/logs-management.plugin
  820. %package plugin-network-viewer
  821. Summary: The network viewer plugin for the Netdata Agent
  822. Group: Applications/System
  823. Requires: %{name} = %{version}
  824. Conflicts: %{name} < %{version}
  825. %if 0%{?_have_ebpf}
  826. %if 0%{?centos_ver} != 7
  827. Recommends: %{name}-plugin-ebpf = %{version}
  828. %else
  829. Requires: %{name}-plugin-ebpf = %{version}
  830. %endif
  831. %endif
  832. %description plugin-network-viewer
  833. This plugin allows the Netdata Agent to provide network connection
  834. mapping functionality for use in netdata Cloud.
  835. %pre plugin-network-viewer
  836. if ! getent group %{name} > /dev/null; then
  837. groupadd --system %{name}
  838. fi
  839. %files plugin-network-viewer
  840. %defattr(0750,root,netdata,0750)
  841. # CAP_SYS_ADMIN, CAP_SYS_PTRACE and CAP_DAC_READ_SEARCH needed for data collection.
  842. %caps(cap_sys_admin,cap_sys_ptrace,cap_dac_read_search=ep) %attr(0750,root,netdata) %{_libexecdir}/%{name}/plugins.d/network-viewer.plugin
  843. %changelog
  844. * Tue Feb 06 2024 Austin Hemmelgarn <austin@netdata.cloud> 0.0.0-25
  845. - Add package for network-viewer plugin
  846. * Thu Oct 26 2023 Austin Hemmelgarn <austin@netdata.cloud> 0.0.0-24
  847. - Add package for logs-management plugin
  848. * Tue Sep 19 2023 Austin hemmelgarn <austin@netdata.cloud> 0.0.0-24
  849. - Switch to using cmake for builds.
  850. * Mon Aug 28 2023 Konstantin Shalygin <k0ste@k0ste.ru> 0.0.0-23
  851. - Build go.d.plugin natively for CentOS Stream distro
  852. * Mon Aug 21 2023 Austin Hemmelgarn <austin@netdata.cloud> 0.0.0-22
  853. - Explicitly depend on version-matched plugins in native packages
  854. * Thu Aug 03 2023 Austin Hemmelgarn <austin@netdata.cloud> 0.0.0-21
  855. - Added systemd-journal plugin handling
  856. * Wed Jun 14 2023 Konstantin Shalygin <k0ste@k0ste.ru> 0.0.0-20
  857. - Added eBPF build dependency (again)
  858. * Fri Apr 07 2023 Austin Hemmelgarn <austin@netdata.cloud> 0.0.0-19
  859. - Split additional plugins out in their own packages.
  860. * Tue Mar 21 2023 Austin Hemmelgarn <austin@netdata.cloud> 0.0.0-18
  861. - Fix systemd handling to follow BCP.
  862. - Drop pre-systemd init support.
  863. * Thu Feb 16 2023 Konstantin Shalygin <k0ste@k0ste.ru> 0.0.0-17
  864. - Added eBPF build dependency
  865. * Thu Feb 03 2022 Austin Hemmelgarn <austin@netdata.cloud> 0.0.0-16
  866. - Bundle updater script in native packages.
  867. * Mon Oct 11 2021 Austin Hemmelgarn <austin@netdata.cloud> 0.0.0-15
  868. - Remove support code for legacy ACLK implementation.
  869. * Wed Sep 16 2020 Austin Hemmelgarn <austin@netdata.cloud> 0.0.0-14
  870. - Convert to using 'AutoReq: yes' for library dependencies.
  871. * Thu Feb 13 2020 Austin Hemmelgarn <austin@netdata.cloud> 0.0.0-13
  872. - Add handling for custom libmosquitto fork
  873. * Wed Jan 01 2020 Austin Hemmelgarn <austin@netdata.cloud> 0.0.0-12
  874. - Add explicit installation of log and cache directories
  875. - Clean up build dependencies.
  876. * Thu Dec 19 2019 Austin Hemmelgarn <austin@netdata.cloud> 0.0.0-11
  877. - Fix remaining ownership and permissions issues.
  878. * Mon Nov 04 2019 Konstantinos Natsakis <konstantinos.natsakis@gmail.com> 0.0.0-10
  879. - Fix /etc/netdata permissions
  880. * Mon Sep 23 2019 Konstantinos Natsakis <konstantinos.natsakis@gmail.com> 0.0.0-9
  881. - Do not build CUPS plugin subpackage on CentOS 6 and CentOS 7
  882. * Tue Aug 20 2019 Pavlos Emm. Katsoulakis <paul@netdat.acloud> - 0.0.0-8
  883. - Split CUPS functionality on separate package
  884. * Fri Jun 28 2019 Pavlos Emm. Katsoulakis <paul@netdata.cloud> - 0.0.0-7
  885. - Raise the path overrides to the spec file level, not just the configure.
  886. - Adjust tighter permissions on some folders, based on what we did on our installer
  887. - Introduce go.d plugin download and install, to include it on the package (Temporarily, to become separate package on next iteration)
  888. * Tue Jun 25 2019 Pavlos Emm. Katsoulakis <paul@netdata.cloud> - 0.0.0-6
  889. - Adjust dependency list: Some packages are missing on some distros, adopt to build successfully
  890. * Mon Jun 24 2019 Pavlos Emm. Katsoulakis <paul@netdata.cloud> - 0.0.0-5
  891. Another pass on cleaning up pre/post installation steps
  892. - Sync permission and ownership on files and directories
  893. * Sun Jun 16 2019 Pavlos Emm. Katsoulakis <paul@netdata.cloud> - 0.0.0-4
  894. First draft refactor on package dependencies section
  895. - Remove freeipmi/nfacct plugin flags. We auto-detect all plugins by decision
  896. - Start refactor of package dependencies
  897. - Add missing dependencies, with respect to distro peculiarities
  898. - Adjust existing dependencies, so that distro-specific package names is applied
  899. * Wed Jan 02 2019 Pawel Krupa <pkrupa@redhat.com> - 0.0.0-3
  900. - Temporary set version statically
  901. - Fix changelog ordering
  902. - Comment-out node.d configuration directory
  903. * Wed Jan 02 2019 Pawel Krupa <pkrupa@redhat.com> - 0.0.0-2
  904. - Fix permissions for log files
  905. * Sun Nov 15 2015 Alon Bar-Lev <alonbl@redhat.com> - 0.0.0-1
  906. - Initial add.