]>
Commit | Line | Data |
---|---|---|
dbcc502d ER |
1 | # |
2 | # Conditional build: | |
d0fcaadc | 3 | %bcond_without nfacct # build with nfacct plugin |
dbcc502d | 4 | |
94cfc344 | 5 | Summary: Linux real time performance monitoring |
dbcc502d | 6 | Name: netdata |
a0a202fb ER |
7 | Version: 1.3.0 |
8 | Release: 0.1 | |
4f48df40 | 9 | License: GPL v3+ |
dbcc502d | 10 | Group: Applications/System |
94cfc344 | 11 | Source0: https://github.com/firehol/netdata/releases/download/v%{version}/%{name}-%{version}.tar.xz |
a0a202fb | 12 | # Source0-md5: f2854aa2e127a1c9f86366f17524c382 |
01f0b59e | 13 | Source1: %{name}.conf |
1aa35efd | 14 | Source2: %{name}.init |
ea1ae9aa | 15 | Patch0: nodejs.patch |
dbcc502d | 16 | URL: http://netdata.firehol.org/ |
085a70e6 ER |
17 | BuildRequires: autoconf |
18 | BuildRequires: automake | |
65ecfdca | 19 | %{?with_nfacct:BuildRequires: libmnl-devel} |
dbcc502d | 20 | %{?with_nfacct:BuildRequires: libnetfilter_acct-devel} |
c5372cd5 | 21 | BuildRequires: libuuid-devel |
085a70e6 | 22 | BuildRequires: pkgconfig |
1aa35efd | 23 | BuildRequires: rpmbuild(macros) >= 1.647 |
dbcc502d | 24 | BuildRequires: zlib-devel |
1229dd1c ER |
25 | Provides: group(netdata) |
26 | Provides: user(netdata) | |
1aa35efd ER |
27 | Requires(post,preun): /sbin/chkconfig |
28 | Requires(post,preun,postun): systemd-units >= 38 | |
1229dd1c ER |
29 | Requires(postun): /usr/sbin/groupdel |
30 | Requires(postun): /usr/sbin/userdel | |
31 | Requires(pre): /bin/id | |
32 | Requires(pre): /usr/bin/getgid | |
33 | Requires(pre): /usr/sbin/groupadd | |
34 | Requires(pre): /usr/sbin/useradd | |
1aa35efd | 35 | Requires: rc-scripts |
1aa35efd ER |
36 | Suggests: %{name}-charts |
37 | Suggests: %{name}-nodejs | |
a0a202fb | 38 | Suggests: %{name}-python |
dbcc502d ER |
39 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
40 | ||
f241237d ER |
41 | %define _libexecdir %{_prefix}/lib |
42 | ||
dbcc502d ER |
43 | %description |
44 | netdata is the fastest way to visualize metrics. It is a resource | |
45 | efficient, highly optimized system for collecting and visualizing any | |
46 | type of realtime timeseries data, from CPU usage, disk activity, SQL | |
47 | queries, API calls, web site visitors, etc. | |
48 | ||
49 | netdata tries to visualize the truth of now, in its greatest detail, | |
50 | so that you can get insights of what is happening now and what just | |
51 | happened, on your systems and applications. | |
52 | ||
bd51d1ce ER |
53 | %package charts |
54 | Summary: netdata charts plugin | |
55 | Group: Applications/System | |
56 | URL: https://github.com/firehol/netdata/wiki/General-Info---charts.d | |
57 | Requires: %{name} = %{version}-%{release} | |
58 | Requires: bash >= 4 | |
59 | %if "%{_rpmversion}" >= "5" | |
60 | BuildArch: noarch | |
61 | %endif | |
62 | ||
63 | %description charts | |
64 | Charts.d is BaSH script that allows you to write simple scripts for | |
65 | collecting data. | |
66 | ||
67 | It has been designed so that the actual script that will do data | |
68 | collection will be permanently in memory, collecting data with as | |
69 | little overheads as possible (i.e. initialize once, repeatedly collect | |
70 | values with minimal overhead). | |
71 | ||
72 | Charts.d looks for scripts in charts.d. The scripts should have the | |
73 | filename suffix: .chart.sh. | |
74 | ||
f241237d ER |
75 | %package nodejs |
76 | Summary: netdata node.js plugins | |
77 | Group: Applications/System | |
78 | URL: https://github.com/firehol/netdata/wiki/General-Info---node.d | |
79 | Requires: %{name} = %{version}-%{release} | |
f241237d ER |
80 | %if "%{_rpmversion}" >= "5" |
81 | BuildArch: noarch | |
82 | %endif | |
83 | ||
84 | %description nodejs | |
85 | node.d.plugin is a netdata plugin that provides an abstraction layer | |
86 | to allow easy and quick development of data collectors in node.js. It | |
87 | also manages all its data collectors (placed in node.d) using a single | |
88 | instance of node, thus lowering the memory footprint of data | |
89 | collection. | |
90 | ||
a0a202fb ER |
91 | %package python |
92 | Summary: netdata Python plugins | |
93 | Group: Applications/System | |
94 | URL: https://github.com/firehol/netdata/wiki/How-to-write-new-module | |
95 | Requires: %{name} = %{version}-%{release} | |
96 | %if "%{_rpmversion}" >= "5" | |
97 | BuildArch: noarch | |
98 | %endif | |
99 | ||
100 | %description python | |
101 | Netdata Python plugins. | |
102 | ||
dbcc502d ER |
103 | %prep |
104 | %setup -q | |
ea1ae9aa | 105 | %patch0 -p1 |
dbcc502d ER |
106 | |
107 | %build | |
108 | %{__aclocal} -I m4 | |
109 | %{__autoconf} | |
110 | %{__autoheader} | |
111 | %{__automake} | |
112 | %configure \ | |
f241237d | 113 | --libdir=%{_libexecdir} \ |
dbcc502d ER |
114 | --with-zlib \ |
115 | --with-math \ | |
116 | %{__enable_disable nfacct plugin-nfacct} \ | |
117 | --with-user=netdata | |
118 | %{__make} | |
119 | ||
120 | %install | |
121 | rm -rf $RPM_BUILD_ROOT | |
122 | %{__make} install \ | |
123 | DESTDIR=$RPM_BUILD_ROOT | |
124 | ||
a0a202fb ER |
125 | %{__rm} $RPM_BUILD_ROOT/var/{cache,lib,log}/netdata/.keep |
126 | %{__rm} $RPM_BUILD_ROOT/var/lib/netdata/registry/.keep | |
1aa35efd | 127 | |
2f40a1c0 | 128 | install -d $RPM_BUILD_ROOT{/etc/rc.d/init.d,%{systemdunitdir},%{_localstatedir}/lib/%{name}/registry} |
f241237d | 129 | cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/%{name}.conf |
1aa35efd | 130 | install -p %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name} |
f5dc427f | 131 | cp -p system/netdata.service $RPM_BUILD_ROOT%{systemdunitdir}/%{name}.service |
01f0b59e | 132 | |
1aa35efd ER |
133 | %clean |
134 | rm -rf $RPM_BUILD_ROOT | |
135 | ||
dbcc502d | 136 | %pre |
1229dd1c ER |
137 | %groupadd -g 329 netdata |
138 | %useradd -u 329 -g netdata -c netdata -s /sbin/nologin -d / netdata | |
139 | ||
dbcc502d | 140 | %post |
1aa35efd ER |
141 | /sbin/chkconfig --add netdata |
142 | %service netdata restart | |
dbcc502d ER |
143 | %systemd_post netdata.service |
144 | ||
145 | %preun | |
1aa35efd ER |
146 | if [ "$1" = "0" ]; then |
147 | %service -q netdata stop | |
148 | /sbin/chkconfig --del netdata | |
149 | fi | |
dbcc502d ER |
150 | %systemd_preun netdata.service |
151 | ||
152 | %postun | |
1aa35efd ER |
153 | if [ "$1" = "0" ]; then |
154 | %userremove netdata | |
155 | %groupremove netdata | |
156 | fi | |
157 | %systemd_reload | |
dbcc502d ER |
158 | |
159 | %files | |
160 | %defattr(644,root,root,755) | |
161 | %dir %{_sysconfdir}/%{name} | |
c8a7f904 ER |
162 | %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/apps_groups.conf |
163 | %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/netdata.conf | |
a0a202fb ER |
164 | %dir %{_sysconfdir}/%{name}/health.d |
165 | %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/health.d/*.conf | |
1aa35efd | 166 | %attr(754,root,root) /etc/rc.d/init.d/netdata |
dbcc502d | 167 | %attr(755,root,root) %{_sbindir}/%{name} |
cf647efe | 168 | %dir %{_datadir}/%{name} |
5c048d80 | 169 | %dir %{_libexecdir}/%{name} |
dbcc502d ER |
170 | %{systemdunitdir}/netdata.service |
171 | %attr(755,netdata,netdata) %dir %{_localstatedir}/cache/%{name} | |
172 | %attr(755,netdata,netdata) %dir %{_localstatedir}/log/%{name} | |
2f40a1c0 ER |
173 | %attr(755,netdata,netdata) %dir %{_localstatedir}/lib/%{name} |
174 | %attr(755,netdata,netdata) %dir %{_localstatedir}/lib/%{name}/registry | |
5c048d80 ER |
175 | |
176 | %defattr(-,root,root,-) | |
5c048d80 | 177 | %{_libexecdir}/%{name}/plugins.d |
bd51d1ce | 178 | # subpackages |
9c1cee53 | 179 | %exclude %{_libexecdir}/%{name}/plugins.d/node.d.plugin |
bd51d1ce ER |
180 | %exclude %{_libexecdir}/%{name}/plugins.d/charts.d* |
181 | ||
cf647efe ER |
182 | %defattr(-,root,netdata,-) |
183 | %{_datadir}/%{name}/web | |
184 | ||
bd51d1ce ER |
185 | %files charts |
186 | %defattr(644,root,root,755) | |
c8a7f904 | 187 | %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/charts.d.conf |
bd51d1ce ER |
188 | %attr(755,root,root) %{_libexecdir}/%{name}/plugins.d/charts.d* |
189 | %dir %{_libexecdir}/%{name}/charts.d | |
190 | %{_libexecdir}/%{name}/charts.d/README.md | |
191 | %attr(755,root,root) %{_libexecdir}/%{name}/charts.d/*.chart.sh | |
f241237d ER |
192 | |
193 | %files nodejs | |
194 | %defattr(644,root,root,755) | |
9c1cee53 | 195 | %attr(755,root,root) %{_libexecdir}/%{name}/plugins.d/node.d.plugin |
f241237d ER |
196 | %dir %{_libexecdir}/%{name}/node.d |
197 | %{_libexecdir}/%{name}/node.d/README.md | |
198 | %{_libexecdir}/%{name}/node.d/node_modules | |
199 | %attr(755,root,root) %{_libexecdir}/%{name}/node.d/*.node.js | |
a0a202fb ER |
200 | |
201 | %files python | |
202 | %defattr(644,root,root,755) | |
203 | %dir %{_sysconfdir}/%{name}/python.d | |
204 | %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/python.d.conf | |
205 | %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/python.d/*.conf | |
206 | %dir %{_libexecdir}/%{name}/python.d | |
207 | %{_libexecdir}/%{name}/python.d/README.md | |
208 | %attr(755,root,root) %{_libexecdir}/%{name}/python.d/*.chart.py | |
209 | ||
210 | # XXX system packages | |
211 | %{_libexecdir}/%{name}/python.d/python-modules-installer.sh | |
212 | %dir %{_libexecdir}/%{name}/python.d/python_modules | |
213 | %{_libexecdir}/%{name}/python.d/python_modules/*.py | |
214 | %{_libexecdir}/%{name}/python.d/python_modules/pyyaml2 | |
215 | %{_libexecdir}/%{name}/python.d/python_modules/pyyaml3 |