34
%define _libexecdir /usr/libexec
35
%define _libdir /usr/lib
36
37
+# Fedora doesn’t define this, but other distros do
38
+%{!?_presetdir:%global _presetdir %{_libdir}/systemd/system-preset}
39
+
40
# Redefine centos_ver to standardize on a single macro
41
%{?rhel:%global centos_ver %rhel}
42
43
#
44
# Conditional build:
42
-%bcond_without systemd # systemd
45
%bcond_without netns # build with netns support (cgroup-network)
46
47
%if 0%{?fedora} || 0%{?rhel} >= 7 || 0%{?suse_version} >= 1140
48
%else
47
-%undefine with_systemd
49
%undefine with_netns
50
%endif
51
51
-%if %{with systemd}
52
-%if 0%{?suse_version}
53
-%global netdata_initd_buildrequires \
54
-BuildRequires: systemd-rpm-macros \
55
-%{nil}
56
-%global netdata_initd_requires \
57
-%{?systemd_requires} \
58
-%{nil}
59
-%global netdata_init_post %service_add_post netdata.service \
60
-/sbin/service netdata restart > /dev/null 2>&1 \
61
-%{nil}
62
-%global netdata_init_preun %service_del_preun netdata.service \
63
-/sbin/service netdata stop > /dev/null 2>&1 \
64
-%{nil}
65
-%global netdata_init_postun %service_del_postun netdata.service
66
-%else
67
-%global netdata_initd_buildrequires \
68
-BuildRequires: systemd
69
-%global netdata_initd_requires \
70
-Requires(preun): systemd-units \
71
-Requires(postun): systemd-units \
72
-Requires(post): systemd-units \
73
-%{nil}
74
-%global netdata_init_post %systemd_post netdata.service \
75
-/usr/bin/systemctl enable netdata.service \
76
-/usr/bin/systemctl daemon-reload \
77
-/usr/bin/systemctl restart netdata.service \
78
-%{nil}
79
-%global netdata_init_preun %systemd_preun netdata.service
80
-%global netdata_init_postun %systemd_postun_with_restart netdata.service
81
-%endif
82
-%else
83
-%global netdata_initd_buildrequires %{nil}
84
-%global netdata_initd_requires \
85
-Requires(post): chkconfig \
86
-%{nil}
87
-%global netdata_init_post \
88
-/sbin/chkconfig --add netdata \
89
-/sbin/service netdata restart > /dev/null 2>&1 \
90
-%{nil}
91
-%global netdata_init_preun %{nil} \
92
-if [ $1 = 0 ]; then \
93
- /sbin/service netdata stop > /dev/null 2>&1 \
94
- /sbin/chkconfig --del netdata \
95
-fi \
96
-%{nil}
97
-%global netdata_init_postun %{nil} \
98
-if [ $1 != 0 ]; then \
99
- /sbin/service netdata condrestart 2>&1 > /dev/null \
100
-fi \
101
-%{nil}
102
-%endif
103
-
52
Summary: Real-time performance monitoring, done right!
53
Name: netdata
54
Version: %{version}
113
%endif
114
115
# Core build requirements for service install
168
-%{netdata_initd_buildrequires}
116
+%if 0%{?suse_version}
117
+BuildRequires: systemd-rpm-macros
118
+%else
119
+BuildRequires: systemd
120
+%endif
121
122
# Runtime dependencies
123
#
135
Requires(pre): /usr/sbin/groupadd
136
Requires(pre): /usr/sbin/useradd
137
186
-%{netdata_initd_requires}
187
-
138
# #####################################################################
139
# Functionality-dependent package dependencies
140
# #####################################################################
291
292
# ###########################################################
293
# Install netdata service
344
-%if %{with systemd}
294
install -m 755 -d "${RPM_BUILD_ROOT}%{_unitdir}"
295
install -m 644 -p system/systemd/netdata.service "${RPM_BUILD_ROOT}%{_unitdir}/netdata.service"
347
-%else
348
-# install SYSV init stuff
349
-install -d "${RPM_BUILD_ROOT}/etc/rc.d/init.d"
350
-install -m 755 system/initd/init.d/netdata \
351
- "${RPM_BUILD_ROOT}/etc/rc.d/init.d/netdata"
352
-%endif
296
+install -m 755 -d "${RPM_BUILD_ROOT}%{_presetdir}"
297
+install -m 644 -p system/systemd/50-netdata.preset "${RPM_BUILD_ROOT}%{_presetdir}/50-netdata.preset"
298
299
# ############################################################
300
# Package Go within netdata (TBD: Package it separately)
412
done
413
414
%post
470
-%{netdata_init_post}
415
+%if 0%{?suse_version}
416
+%service_add_post netdata.service
417
+%else
418
+%systemd_post netdata.service
419
+%endif
420
421
%preun
473
-%{netdata_init_preun}
422
+%if 0%{?suse_version}
423
+%service_del_preun netdata.service
424
+%else
425
+%systemd_preun netdata.service
426
+%endif
427
428
%postun
476
-%{netdata_init_postun}
429
+%if 0%{?suse_version}
430
+%service_del_postun netdata.service
431
+%else
432
+%systemd_postun_with_restart netdata.service
433
+%endif
434
435
%clean
436
rm -rf "${RPM_BUILD_ROOT}"
449
%{_sbindir}/netdatacli
450
%{_sbindir}/netdata-claim.sh
451
495
-%if %{with systemd}
452
%{_unitdir}/netdata.service
497
-%else
498
-%{_sysconfdir}/rc.d/init.d/netdata
499
-%endif
453
+%{_presetdir}/50-netdata.preset
454
455
%defattr(0750,root,netdata,0750)
456
539
%attr(4750,root,netdata) %{_libexecdir}/%{name}/plugins.d/freeipmi.plugin
540
541
%changelog
542
+* Tue Mar 21 2023 Austin Hemmelgarn <austin@netdata.cloud> 0.0.0-18
543
+- Fix systemd handling to follow BCP.
544
+- Drop pre-systemd init support.
545
* Thu Feb 16 2023 Konstantin Shalygin <k0ste@k0ste.ru> 0.0.0-17
546
- Added eBPF build dependency
547
* Fri Feb 03 2022 Austin Hemmelgarn <austin@netdata.cloud> 0.0.0-16