@cryptotaxi247 / netdata-1 / commits / 8b93deb7b

Reorganize system directory to better reflect what files are actually used for. (#14544)

* Move systemd-specific system files to their own directory. * Move non-systemd init scripts to individual subdirectories. * Move cron files to their own directory. * Move logrotate config to it’s own directory. * Fix typos in Makefile.am. * Fix Debian package builds. * Fixed issues reported by @andrewm4894.

Austin S. Hemmelgarn committed Feb 27, 2023 at 12:38 UTC 8b93deb7b0916ea5caabfb24dbc6420e01054cbe
19 files changed +113 -75
.gitignore
+12 -12
@@ -115,19 +115,19 @@ web/gui/version.txt
115 /node_modules/
116 /coverage/
117
118 -system/netdata-lsb
119 -system/netdata-openrc
120 -system/netdata-init-d
121 -system/netdata.logrotate
122 -system/netdata.service
123 -system/netdata.service.*
124 -system/netdata-updater.service
125 -!system/netdata.service.in
126 -!system/netdata.service.*.in
127 -system/netdata.plist
128 -system/netdata-freebsd
129 -system/netdata.crontab
118 system/install-service.sh
119 +system/netdata.logrotate
120 +system/cron/netdata-updater-daily
121 +system/freebsd/rc.d/netdata
122 +system/initd/init.d/netdata
123 +system/launchd/netdata.plist
124 +system/lsb/init.d/netdata
125 +system/openrc/init.d/netdata
126 +system/systemd/netdata.service
127 +system/systemd/netdata.service.*
128 +system/systemd/netdata-updater.service
129 +!system/systemd/netdata.service.in
130 +!system/systemd/netdata.service.*.in
131
132 daemon/anonymous-statistics.sh
133 daemon/get-kubernetes-labels.sh
contrib/debian/rules
+3 -3
@@ -10,9 +10,9 @@ BASE_CONFIG = system/netdata.conf
10 SYSTEMD_VERSION = $(shell /bin/sh -c "systemd --version 2>&1 | head -n 1 | cut -f 2 -d ' '")
11
12 ifeq ($(shell test $(SYSTEMD_VERSION) -ge 235 && echo "1"), 1)
13 -SYSTEMD_UNIT = system/netdata.service.v235
13 +SYSTEMD_UNIT = system/systemd/netdata.service.v235
14 else
15 -SYSTEMD_UNIT = system/netdata.service
15 +SYSTEMD_UNIT = system/systemd/netdata.service
16 endif
17
18 ifeq ($(shell test `uname -m` != "x86_64" && echo "1"), 1)
@@ -124,7 +124,7 @@ override_dh_fixperms:
124 chmod 4750 $(TOP)-plugin-freeipmi/usr/libexec/netdata/plugins.d/freeipmi.plugin
125
126 override_dh_installlogrotate:
127 - cp system/netdata.logrotate debian/netdata.logrotate
127 + cp system/logrotate/netdata debian/netdata.logrotate
128 dh_installlogrotate
129
130 override_dh_clean:
netdata-installer.sh
+1 -1
@@ -1059,7 +1059,7 @@ fi
1059 # -----------------------------------------------------------------------------
1060 progress "Fix generated files permissions"
1061
1062 -run find ./system/ -type f -a \! -name \*.in -a \! -name Makefile\* -a \! -name \*.conf -a \! -name \*.service -a \! -name \*.timer -a \! -name \*.logrotate -a \! -name \.install-type -exec chmod 755 {} \;
1062 +run chmod 755 ./system/*/init.d/netdata ./system/*/rc.d/netdata ./system/install-service.sh
1063
1064 # -----------------------------------------------------------------------------
1065 progress "Creating standard user and groups for netdata"
netdata.spec.in
+3 -3
@@ -287,7 +287,7 @@ install -m 755 -p packaging/installer/netdata-updater.sh "${RPM_BUILD_ROOT}%{_li
287 # ###########################################################
288 # logrotate settings
289 install -m 755 -d "${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d"
290 -install -m 644 -p system/netdata.logrotate "${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d/%{name}"
290 +install -m 644 -p system/logrotate/netdata "${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d/%{name}"
291
292 # ###########################################################
293 # Install freeipmi
@@ -330,11 +330,11 @@ install -m 755 -d "${RPM_BUILD_ROOT}%{_localstatedir}/lib/%{name}/registry"
330 # Install netdata service
331 %if %{with systemd}
332 install -m 755 -d "${RPM_BUILD_ROOT}%{_unitdir}"
333 -install -m 644 -p system/netdata.service "${RPM_BUILD_ROOT}%{_unitdir}/netdata.service"
333 +install -m 644 -p system/systemd/netdata.service "${RPM_BUILD_ROOT}%{_unitdir}/netdata.service"
334 %else
335 # install SYSV init stuff
336 install -d "${RPM_BUILD_ROOT}/etc/rc.d/init.d"
337 -install -m 755 system/netdata-init-d \
337 +install -m 755 system/initd/init.d/netdata \
338 "${RPM_BUILD_ROOT}/etc/rc.d/init.d/netdata"
339 %endif
340
packaging/installer/functions.sh
+9 -9
@@ -470,21 +470,21 @@ install_non_systemd_init() {
470 if [ -d /etc/init.d ] && [ ! -f /etc/init.d/netdata ]; then
471 if expr "${key}" : "^(gentoo|alpine).*"; then
472 echo >&2 "Installing OpenRC init file..."
473 - run cp system/netdata-openrc /etc/init.d/netdata &&
473 + run cp system/openrc/init.d/netdata /etc/init.d/netdata &&
474 run chmod 755 /etc/init.d/netdata &&
475 run rc-update add netdata default &&
476 return 0
477
478 elif expr "${key}" : "^devuan*" || [ "${key}" = "debian-7" ] || [ "${key}" = "ubuntu-12.04" ] || [ "${key}" = "ubuntu-14.04" ]; then
479 echo >&2 "Installing LSB init file..."
480 - run cp system/netdata-lsb /etc/init.d/netdata &&
480 + run cp system/lsb/init.d/netdata /etc/init.d/netdata &&
481 run chmod 755 /etc/init.d/netdata &&
482 run update-rc.d netdata defaults &&
483 run update-rc.d netdata enable &&
484 return 0
485 elif expr "${key}" : "^(amzn-201[5678]|ol|CentOS release 6|Red Hat Enterprise Linux Server release 6|Scientific Linux CERN SLC release 6|CloudLinux Server release 6).*"; then
486 echo >&2 "Installing init.d file..."
487 - run cp system/netdata-init-d /etc/init.d/netdata &&
487 + run cp system/initd/init.d/netdata /etc/init.d/netdata &&
488 run chmod 755 /etc/init.d/netdata &&
489 run chkconfig netdata on &&
490 return 0
@@ -582,7 +582,7 @@ install_netdata_service() {
582 echo >&2 "Installing MacOS X plist file..."
583 # This is used by netdata-installer.sh
584 # shellcheck disable=SC2034
585 - run cp system/netdata.plist /Library/LaunchDaemons/com.github.netdata.plist &&
585 + run cp system/launchd/netdata.plist /Library/LaunchDaemons/com.github.netdata.plist &&
586 run launchctl load /Library/LaunchDaemons/com.github.netdata.plist &&
587 NETDATA_START_CMD="launchctl start com.github.netdata" &&
588 NETDATA_STOP_CMD="launchctl stop com.github.netdata"
@@ -592,7 +592,7 @@ install_netdata_service() {
592 elif [ "${uname}" = "FreeBSD" ]; then
593 # This is used by netdata-installer.sh
594 # shellcheck disable=SC2034
595 - run cp system/netdata-freebsd /etc/rc.d/netdata && NETDATA_START_CMD="service netdata start" &&
595 + run cp system/freebsd/rc.d/netdata /etc/rc.d/netdata && NETDATA_START_CMD="service netdata start" &&
596 NETDATA_STOP_CMD="service netdata stop" &&
597 NETDATA_INSTALLER_START_CMD="service netdata onestart" &&
598 myret=$?
@@ -621,7 +621,7 @@ install_netdata_service() {
621 fi
622
623 echo >&2 "Installing systemd service..."
624 - run cp system/netdata.service "${SYSTEMD_DIRECTORY}/netdata.service" &&
624 + run cp system/systemd/netdata.service "${SYSTEMD_DIRECTORY}/netdata.service" &&
625 run systemctl daemon-reload &&
626 ${ENABLE_NETDATA_IF_PREVIOUSLY_ENABLED} &&
627 return 0
@@ -848,7 +848,7 @@ install_netdata_logrotate() {
848 if [ "${UID}" -eq 0 ]; then
849 if [ -d /etc/logrotate.d ]; then
850 if [ ! -f /etc/logrotate.d/netdata ]; then
851 - run cp system/netdata.logrotate /etc/logrotate.d/netdata
851 + run cp system/logrotate/netdata /etc/logrotate.d/netdata
852 fi
853
854 if [ -f /etc/logrotate.d/netdata ]; then
@@ -1076,8 +1076,8 @@ install_netdata_updater() {
1076 fi
1077
1078 if issystemd && [ -n "$(get_systemd_service_dir)" ]; then
1079 - cat "${NETDATA_SOURCE_DIR}/system/netdata-updater.timer" > "$(get_systemd_service_dir)/netdata-updater.timer"
1080 - cat "${NETDATA_SOURCE_DIR}/system/netdata-updater.service" > "$(get_systemd_service_dir)/netdata-updater.service"
1079 + cat "${NETDATA_SOURCE_DIR}/system/systemd/netdata-updater.timer" > "$(get_systemd_service_dir)/netdata-updater.timer"
1080 + cat "${NETDATA_SOURCE_DIR}/system/systemd/netdata-updater.service" > "$(get_systemd_service_dir)/netdata-updater.service"
1081 fi
1082
1083 sed -i -e "s|THIS_SHOULD_BE_REPLACED_BY_INSTALLER_SCRIPT|${NETDATA_USER_CONFIG_DIR}/.environment|" "${NETDATA_PREFIX}/usr/libexec/netdata/netdata-updater.sh" || return 1
packaging/makeself/jobs/99-makeself.install.sh
+1 -5
@@ -29,11 +29,7 @@ run cp \
29 packaging/makeself/install-or-update.sh \
30 packaging/installer/functions.sh \
31 configs.signatures \
32 - system/netdata-init-d \
33 - system/netdata-lsb \
34 - system/netdata-openrc \
35 - system/netdata.logrotate \
36 - system/netdata.service \
32 + system/logrotate/netdata \
33 "${NETDATA_INSTALL_PATH}/system/"
34
35 # -----------------------------------------------------------------------------
system/Makefile.am
+75 -33
@@ -3,16 +3,16 @@
3
4 MAINTAINERCLEANFILES = $(srcdir)/Makefile.in
5 CLEANFILES = \
6 - netdata-openrc \
7 - netdata.logrotate \
8 - netdata.service \
9 - netdata.service.v235 \
10 - netdata-init-d \
11 - netdata-lsb \
12 - netdata-freebsd \
13 - netdata.plist \
14 - netdata.crontab \
15 - netdata-updater.service \
6 + cron/netdata-updater-daily \
7 + freebsd/rc.d/netdata \
8 + initd/init.d/netdata \
9 + launchd/netdata.plist \
10 + logrotate/netdata \
11 + lsb/init.d/netdata \
12 + openrc/init.d/netdata \
13 + systemd/netdata.service \
14 + systemd/netdata.service.v235 \
15 + systemd/netdata-updater.service \
16 $(NULL)
17
18 include $(top_srcdir)/build/subst.inc
@@ -26,44 +26,86 @@ dist_config_DATA = \
26 .install-type \
27 $(NULL)
28
29 +libsyscrondir=$(libsysdir)/cron
30 +libsysfreebsddir=$(libsysdir)/freebsd
31 +libsysfreebsdrcddir=$(libsysfreebsddir)/rc.d
32 +libsysinitddir=$(libsysdir)/initd
33 +libsysinitdinitddir=$(libsysinitddir)/init.d
34 +libsyslaunchddir=$(libsysdir)/launchd
35 +libsyslogrotatedir=$(libsysdir)/logrotate
36 +libsyslsbdir=$(libsysdir)/lsb
37 +libsyslsbinitddir=$(libsyslsbdir)/init.d
38 +libsysopenrcdir=$(libsysdir)/openrc
39 +libsysopenrcinitddir=$(libsysopenrcdir)/init.d
40 +libsyssystemddir=$(libsysdir)/systemd
41 +
42 # Explicitly install directories to avoid permission issues due to umask
43 install-exec-local:
44 $(INSTALL) -d $(DESTDIR)$(configdir)
45 $(INSTALL) -d $(DESTDIR)$(libsysdir)
46 + $(INSTALL) -d $(DESTDIR)$(libsyscrondir)
47 + $(INSTALL) -d $(DESTDIR)$(libsysfreebsdrcddir)
48 + $(INSTALL) -d $(DESTDIR)$(libsysinitdinitddir)
49 + $(INSTALL) -d $(DESTDIR)$(libsyslaunchddir)
50 + $(INSTALL) -d $(DESTDIR)$(libsyslogrotatedir)
51 + $(INSTALL) -d $(DESTDIR)$(libsyslsbinitddir)
52 + $(INSTALL) -d $(DESTDIR)$(libsyssystemddir)
53 + $(INSTALL) -d $(DESTDIR)$(libsysopenrcinitddir)
54
55 libexecnetdatadir=$(libexecdir)/netdata
56 nodist_libexecnetdata_SCRIPTS = \
57 install-service.sh \
58 $(NULL)
59
39 -nodist_libsys_DATA = \
40 - netdata-openrc \
41 - netdata.logrotate \
42 - netdata.service \
43 - netdata.service.v235 \
44 - netdata-init-d \
45 - netdata-lsb \
46 - netdata-freebsd \
47 - netdata.plist \
48 - netdata.crontab \
49 - netdata-updater.service \
60 +nodist_libsyscron_DATA = \
61 + cron/netdata-updater-daily \
62 + $(NULL)
63 +
64 +nodist_libsysfreebsdrcd_DATA = \
65 + freebsd/rc.d/netdata \
66 + $(NULL)
67 +
68 +nodist_libsysinitdinitd_DATA = \
69 + initd/init.d/netdata \
70 + $(NULL)
71 +
72 +nodist_libsyslaunchd_DATA = \
73 + launchd/netdata.plist \
74 + $(NULL)
75 +
76 +nodist_libsyslogrotate_DATA = \
77 + logrotate/netdata \
78 + $(NULL)
79 +
80 +nodist_libsyslsbinitd_DATA = \
81 + lsb/init.d/netdata \
82 + $(NULL)
83 +
84 +nodist_libsysopenrcinitd_DATA = \
85 + openrc/init.d/netdata \
86 + $(NULL)
87 +
88 +nodist_libsyssystemd_DATA = \
89 + systemd/netdata.service \
90 + systemd/netdata.service.v235 \
91 + systemd/netdata-updater.service \
92 $(NULL)
93
52 -dist_libsys_DATA = \
53 - netdata-updater.timer \
94 +dist_libsyssystemd_DATA = \
95 + systemd/netdata-updater.timer \
96 $(NULL)
97
98 dist_noinst_DATA = \
99 install-service.sh.in \
58 - netdata-openrc.in \
59 - netdata.logrotate.in \
60 - netdata.service.in \
61 - netdata.service.v235.in \
62 - netdata-init-d.in \
63 - netdata-lsb.in \
64 - netdata-freebsd.in \
65 - netdata.plist.in \
100 netdata.conf \
67 - netdata.crontab.in \
68 - netdata-updater.service.in \
101 + cron/netdata-updater-daily.in \
102 + freebsd/rc.d/netdata.in \
103 + initd/init.d/netdata.in \
104 + launchd/netdata.plist.in \
105 + logrotate/netdata.in \
106 + lsb/init.d/netdata.in \
107 + openrc/init.d/netdata.in \
108 + systemd/netdata.service.in \
109 + systemd/netdata.service.v235.in \
110 + systemd/netdata-updater.service.in \
111 $(NULL)
system/cron/netdata-updater-daily.in renamed
system/freebsd/rc.d/netdata.in renamed
system/initd/init.d/netdata.in renamed
system/install-service.sh.in
+9 -9
@@ -102,7 +102,7 @@ valid_types() {
102 }
103
104 install_generic_service() {
105 - svc_type="${1}"
105 + svc_path="${1}"
106 svc_type_name="${2}"
107 svc_file="${3}"
108 svc_enable_hook="${4}"
@@ -113,7 +113,7 @@ install_generic_service() {
113 ENABLE="enable"
114 fi
115
116 - if ! install -p -m 0755 -o 0 -g 0 "${SVC_SOURCE}/netdata-${svc_type}" "${svc_file}"; then
116 + if ! install -p -m 0755 -o 0 -g 0 "${SVC_SOURCE}/${svc_path}/netdata" "${svc_file}"; then
117 error "Failed to install service file."
118 exit 4
119 fi
@@ -236,10 +236,10 @@ get_systemd_service_dir() {
236 }
237
238 install_systemd_service() {
239 - SRCFILE="${SVC_SOURCE}/netdata.service"
239 + SRCFILE="${SVC_SOURCE}/systemd/netdata.service"
240
241 if [ "$(systemctl --version | head -n 1 | cut -f 2 -d ' ')" -le 235 ]; then
242 - SRCFILE="${SVC_SOURCE}/netdata.service.v235"
242 + SRCFILE="${SVC_SOURCE}/systemd/netdata.service.v235"
243 fi
244
245 if [ "${ENABLE}" = "auto" ]; then
@@ -341,7 +341,7 @@ disable_openrc() {
341 }
342
343 install_openrc_service() {
344 - install_generic_service openrc OpenRC /etc/init.d/netdata enable_openrc disable_openrc
344 + install_generic_service openrc/init.d OpenRC /etc/init.d/netdata enable_openrc disable_openrc
345 }
346
347 openrc_cmds() {
@@ -399,7 +399,7 @@ disable_lsb() {
399 }
400
401 install_lsb_service() {
402 - install_generic_service lsb LSB /etc/init.d/netdata enable_lsb disable_lsb
402 + install_generic_service lsb/init.d LSB /etc/init.d/netdata enable_lsb disable_lsb
403 }
404
405 lsb_cmds() {
@@ -454,7 +454,7 @@ disable_initd() {
454 }
455
456 install_initd_service() {
457 - install_generic_service init-d init.d /etc/init.d/netdata enable_initd disable_initd
457 + install_generic_service initd/init.d init.d /etc/init.d/netdata enable_initd disable_initd
458 }
459
460 initd_cmds() {
@@ -552,7 +552,7 @@ disable_freebsd() {
552 }
553
554 install_freebsd_service() {
555 - install_generic_service freebsd "FreeBSD rc.d" /usr/local/etc/rc.d/netdata enable_freebsd disable_freebsd
555 + install_generic_service freebsd/rc.d "FreeBSD rc.d" /usr/local/etc/rc.d/netdata enable_freebsd disable_freebsd
556 }
557
558 freebsd_cmds() {
@@ -566,7 +566,7 @@ freebsd_cmds() {
566
567 install_darwin_service() {
568 info "Installing macOS plist file for launchd."
569 - if ! install -C -S -p -m 0644 -o 0 -g 0 system/netdata.plist /Library/LaunchDaemons/com.github.netdata.plist; then
569 + if ! install -C -S -p -m 0644 -o 0 -g 0 system/launchd/netdata.plist /Library/LaunchDaemons/com.github.netdata.plist; then
570 error "Failed to copy plist file."
571 exit 4
572 fi
system/launchd/netdata.plist.in renamed
system/logrotate/netdata.in renamed
system/lsb/init.d/netdata.in renamed
system/openrc/init.d/netdata.in renamed
system/systemd/netdata-updater.service.in renamed
system/systemd/netdata-updater.timer renamed
system/systemd/netdata.service.in renamed
system/systemd/netdata.service.v235.in renamed