1 |
racvision |
1 |
# release number: |
2 |
|
|
%define rel %(date '+%Y%m%d%H%M') |
3 |
|
|
|
4 |
racvision |
46 |
%define wwwpath /var/www/html |
5 |
racvision |
1 |
%define nagraffiti_user nagraffiti |
6 |
|
|
|
7 |
|
|
Summary: Nagios grapher |
8 |
|
|
Name: nagraffiti |
9 |
racvision |
52 |
Version: 2.5 |
10 |
racvision |
1 |
Release: %{rel} |
11 |
|
|
Source0: %{name}-www.tar.bz2 |
12 |
|
|
Source1: %{name}-backend.tar.bz2 |
13 |
|
|
Source2: %{name}-po.tar.bz2 |
14 |
|
|
License: GPL |
15 |
|
|
Group: Applications/System |
16 |
racvision |
52 |
Requires: rrdtool-perl, check_mk-livestatus, dejavu-sans-mono-fonts, perl-JSON-XS, nagraffiti-neb2json |
17 |
racvision |
1 |
Provides: perl(Nagraffiti::Nagraph) |
18 |
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-buildroot |
19 |
racvision |
17 |
BuildArch: noarch |
20 |
racvision |
1 |
|
21 |
|
|
# mysql password path : |
22 |
|
|
%define mysql_passwd_path %{_sysconfdir}/racvision/mysql/passwords |
23 |
|
|
|
24 |
|
|
|
25 |
|
|
%description |
26 |
racvision |
46 |
Nagraffiti is a performance data grapher for Nagios. It use Livestatus to collect data. |
27 |
racvision |
1 |
|
28 |
|
|
|
29 |
|
|
%description -l fr |
30 |
racvision |
17 |
Nagraffiti est un traceur de donnée de performance issues de Nagios. Il peut utiliser NDO utils ou Livestatus pour collecter les données. |
31 |
racvision |
1 |
|
32 |
|
|
%prep |
33 |
|
|
|
34 |
|
|
#%setup |
35 |
|
|
%{__tar} --overwrite -xjf %{SOURCE0} |
36 |
|
|
%{__tar} --overwrite -xjf %{SOURCE1} |
37 |
|
|
%{__tar} --overwrite -xjf %{SOURCE2} |
38 |
|
|
|
39 |
|
|
%build |
40 |
|
|
|
41 |
|
|
%install |
42 |
|
|
[ "$RPM_BUILD_ROOT" != "/" ] && [ -d $RPM_BUILD_ROOT ] && %{__rm} -rf $RPM_BUILD_ROOT; |
43 |
|
|
|
44 |
|
|
|
45 |
racvision |
17 |
# Racvision index info |
46 |
racvision |
46 |
%{__install} -d $RPM_BUILD_ROOT/%{wwwpath}/racvision/ |
47 |
|
|
%{__install} -p -m0644 www/nagraffiti.php $RPM_BUILD_ROOT/%{wwwpath}/racvision/ |
48 |
racvision |
17 |
|
49 |
|
|
# www files |
50 |
racvision |
46 |
%{__install} -d $RPM_BUILD_ROOT/%{wwwpath}/%{name}/classes |
51 |
|
|
%{__install} -p -m0644 www/classes/*.php $RPM_BUILD_ROOT/%{wwwpath}/%{name}/classes/ |
52 |
racvision |
1 |
|
53 |
racvision |
46 |
%{__install} -d $RPM_BUILD_ROOT/%{wwwpath}/%{name}/css |
54 |
|
|
%{__install} -p -m0644 www/css/*.css $RPM_BUILD_ROOT/%{wwwpath}/%{name}/css/ |
55 |
racvision |
52 |
%{__install} -d $RPM_BUILD_ROOT/%{wwwpath}/%{name}/css/jquery |
56 |
|
|
%{__install} -p -m0644 www/css/jquery/*.css $RPM_BUILD_ROOT/%{wwwpath}/%{name}/css/jquery/ |
57 |
|
|
%{__install} -d $RPM_BUILD_ROOT/%{wwwpath}/%{name}/css/jquery/images |
58 |
|
|
%{__install} -p -m0644 www/css/jquery/images/*.png $RPM_BUILD_ROOT/%{wwwpath}/%{name}/css/jquery/images/ |
59 |
racvision |
1 |
|
60 |
racvision |
46 |
%{__install} -d $RPM_BUILD_ROOT/%{wwwpath}/%{name}/img |
61 |
|
|
%{__install} -p -m0644 www/img/* $RPM_BUILD_ROOT/%{wwwpath}/%{name}/img/ |
62 |
racvision |
1 |
|
63 |
racvision |
46 |
%{__install} -d $RPM_BUILD_ROOT/%{wwwpath}/%{name}/js |
64 |
|
|
%{__install} -p -m0644 www/js/*.js $RPM_BUILD_ROOT/%{wwwpath}/%{name}/js/ |
65 |
racvision |
52 |
%{__install} -d $RPM_BUILD_ROOT/%{wwwpath}/%{name}/js/jquery |
66 |
|
|
%{__install} -p -m0644 www/js/jquery/*.js $RPM_BUILD_ROOT/%{wwwpath}/%{name}/js/jquery/ |
67 |
racvision |
1 |
|
68 |
racvision |
46 |
%{__install} -d $RPM_BUILD_ROOT/%{wwwpath}/%{name}/%{name} |
69 |
|
|
%{__install} -p -m0644 www/%{name}/*.php $RPM_BUILD_ROOT/%{wwwpath}/%{name}/%{name}/ |
70 |
racvision |
1 |
|
71 |
racvision |
46 |
%{__install} -p -m0644 www/index.php $RPM_BUILD_ROOT/%{wwwpath}/%{name}/ |
72 |
racvision |
1 |
|
73 |
racvision |
5 |
# Templates |
74 |
racvision |
46 |
%{__install} -d $RPM_BUILD_ROOT/%{wwwpath}/%{name}/templates |
75 |
|
|
%{__install} -p -m0644 www/templates/*.php $RPM_BUILD_ROOT/%{wwwpath}/%{name}/templates/ |
76 |
racvision |
5 |
|
77 |
racvision |
1 |
# backend |
78 |
racvision |
46 |
%{__install} -d $RPM_BUILD_ROOT/%{perl_vendorlib}/Nagraffiti |
79 |
|
|
%{__install} -p -m0755 backend/lib/*.pm $RPM_BUILD_ROOT/%{perl_vendorlib}/Nagraffiti/ |
80 |
|
|
%{__install} -d $RPM_BUILD_ROOT/%{perl_vendorlib}/Nagraffiti/Input |
81 |
|
|
%{__install} -p -m0755 backend/lib/Input/*.pm $RPM_BUILD_ROOT/%{perl_vendorlib}/Nagraffiti/Input |
82 |
racvision |
1 |
|
83 |
|
|
%{__install} -d $RPM_BUILD_ROOT/%{_sbindir} |
84 |
racvision |
46 |
#%{__install} -p -m0755 backend/nagraffiti-ndo-daemon.pl $RPM_BUILD_ROOT/%{_sbindir}/ |
85 |
|
|
%{__install} -p -m0755 backend/nagraffiti-daemon.pl $RPM_BUILD_ROOT/%{_sbindir}/ |
86 |
racvision |
1 |
|
87 |
|
|
# Configs files: |
88 |
|
|
%{__install} -d $RPM_BUILD_ROOT/%{_sysconfdir}/%{name} |
89 |
racvision |
52 |
%{__install} -d $RPM_BUILD_ROOT/%{_sysconfdir}/logrotate.d |
90 |
racvision |
1 |
%{__install} -p -m0640 backend/config.ini $RPM_BUILD_ROOT/%{_sysconfdir}/%{name}/ |
91 |
|
|
%{__install} -p -m0644 backend/rra.cfg $RPM_BUILD_ROOT/%{_sysconfdir}/%{name}/ |
92 |
racvision |
46 |
%{__install} -p -m0644 backend/log4p.cfg $RPM_BUILD_ROOT/%{_sysconfdir}/%{name}/ |
93 |
racvision |
52 |
%{__install} -p -m0644 backend/%{name}.logrotate %{buildroot}/%{_sysconfdir}/logrotate.d/%{name} |
94 |
racvision |
1 |
|
95 |
|
|
# Logs files: |
96 |
|
|
%{__install} -d $RPM_BUILD_ROOT/%{_localstatedir}/log/%{name} |
97 |
|
|
|
98 |
|
|
# Rrd repository: |
99 |
|
|
%{__install} -d $RPM_BUILD_ROOT/%{_localstatedir}/lib/%{name} |
100 |
|
|
|
101 |
racvision |
14 |
# Pid |
102 |
|
|
%{__install} -d $RPM_BUILD_ROOT/%{_localstatedir}/run/%{name} |
103 |
|
|
|
104 |
|
|
|
105 |
racvision |
1 |
# Init script |
106 |
|
|
%{__install} -d $RPM_BUILD_ROOT/%{_initrddir} |
107 |
|
|
%{__install} -p -m0755 backend/%{name}.init $RPM_BUILD_ROOT/%{_initrddir}/%{name} |
108 |
|
|
|
109 |
|
|
|
110 |
|
|
# I18n files |
111 |
racvision |
14 |
for lang in fr; do |
112 |
racvision |
1 |
%{__install} -d $RPM_BUILD_ROOT/%{_datadir}/locale/$lang/LC_MESSAGES/ |
113 |
|
|
%{__install} -m0644 po/init-$lang.mo $RPM_BUILD_ROOT/%{_datadir}/locale/$lang/LC_MESSAGES/%{name}_init.mo |
114 |
|
|
%{__install} -m0644 po/php-$lang.mo $RPM_BUILD_ROOT/%{_datadir}/locale/$lang/LC_MESSAGES/%{name}_php.mo |
115 |
|
|
done |
116 |
|
|
|
117 |
|
|
%{find_lang} %{name}_init %{name}_lang --all-name |
118 |
|
|
|
119 |
racvision |
52 |
|
120 |
|
|
# TMPFS |
121 |
|
|
%{__install} -d %{buildroot}%{_datadir}/nagios-tmpfs/perfdatas |
122 |
|
|
|
123 |
racvision |
1 |
#====[ pre installation scripts: |
124 |
|
|
%pre |
125 |
|
|
|
126 |
|
|
# Add user/group: |
127 |
|
|
echo Adding %{nagraffiti_user} user ... |
128 |
|
|
/usr/sbin/useradd -M -o -r -d %{_localstatedir}/log/%{name} -s /sbin/nologin -c "Application Nagraffiti" -u 407 %{nagraffiti_user} > /dev/null 2>&1 || : |
129 |
|
|
|
130 |
|
|
# Add apache in nagraffiti group |
131 |
|
|
if ! id -Gn apache | grep -q nagraffiti ; then |
132 |
|
|
echo "Adding user 'apache' to 'nagraffiti' group." |
133 |
|
|
usermod -aG nagraffiti apache |
134 |
|
|
fi |
135 |
|
|
|
136 |
|
|
#====[ post installation scripts: |
137 |
|
|
%post |
138 |
|
|
|
139 |
|
|
# Configure database password : |
140 |
racvision |
46 |
#/usr/bin/mkpasswd -l 10 -s 0 > %{mysql_passwd_path}/%{name} |
141 |
|
|
#%{__chmod} 640 %{mysql_passwd_path}/%{name} |
142 |
racvision |
1 |
|
143 |
|
|
# Add initscript to system V start : |
144 |
|
|
if test -x /sbin/chkconfig; then |
145 |
|
|
/sbin/chkconfig --add %{name} |
146 |
|
|
/sbin/chkconfig %{name} on |
147 |
|
|
fi |
148 |
|
|
|
149 |
|
|
|
150 |
|
|
#====[ pre uninstall scripts |
151 |
|
|
%preun |
152 |
|
|
|
153 |
|
|
%postun |
154 |
|
|
|
155 |
|
|
%files -f %{name}_lang |
156 |
racvision |
17 |
%doc backend/README |
157 |
racvision |
52 |
%{_sysconfdir}/logrotate.d/nagraffiti |
158 |
racvision |
14 |
%defattr(-,%{nagraffiti_user},%{nagraffiti_user}) |
159 |
|
|
%config %{_sysconfdir}/%{name}/rra.cfg |
160 |
racvision |
46 |
%config %{_sysconfdir}/%{name}/log4p.cfg |
161 |
|
|
%attr(-,%{nagraffiti_user} ,apache) %config %{_sysconfdir}/%{name}/config.ini |
162 |
racvision |
14 |
|
163 |
racvision |
1 |
%defattr(-,root,root) |
164 |
|
|
|
165 |
|
|
%{_initrddir}/%{name} |
166 |
racvision |
46 |
#%{_sbindir}/nagraffiti-ndo-daemon.pl |
167 |
|
|
%{_sbindir}/nagraffiti-daemon.pl |
168 |
racvision |
1 |
%{wwwpath} |
169 |
|
|
|
170 |
racvision |
46 |
#%dir %{perl_vendorlib}/Nagraffiti |
171 |
|
|
%{perl_vendorlib}/Nagraffiti/ |
172 |
racvision |
52 |
%attr(0770, nagios, %{nagraffiti_user}) %{_datadir}/nagios-tmpfs/perfdatas |
173 |
racvision |
1 |
|
174 |
|
|
%attr(-,%{nagraffiti_user} ,%{nagraffiti_user}) %dir %{_localstatedir}/log/%{name} |
175 |
|
|
%attr(-,%{nagraffiti_user} ,%{nagraffiti_user}) %dir %{_localstatedir}/lib/%{name} |
176 |
racvision |
14 |
%attr(-,%{nagraffiti_user} ,%{nagraffiti_user}) %dir %{_localstatedir}/run/%{name} |