]> git.pld-linux.org Git - packages/zabbix.git/blame - zabbix.spec
switch to %use_default_jdk
[packages/zabbix.git] / zabbix.spec
CommitLineData
06317756 1# TODO:
d93a02f8 2# - initscript for zabbix-server, zabbix-proxy and zabbix-java
b53e5d02
ER
3# - unpackaged files:
4# /lib/systemd/system/zabbix_java.service
5# /usr/bin/zabbix_js
6# /var/lib/zabbix/zabbix.db
10a854a6
TO
7#
8# Conditional build:
7efbcfc2
JK
9%bcond_without pgsql # enable PostgreSQL support
10%bcond_without sqlite3 # enable sqlite3 support
cd323295 11%bcond_without mysql # enable MySQL support
cd323295 12%bcond_without java # disable java support
0aca223c 13%bcond_without agent2 # disable bulding of Go based agent2
cd323295 14
c4cfaa95 15%define databases %{?with_sqlite3:sqlite3} %{?with_pgsql:postgresql} %{?with_mysql:mysql}
2a82feb1 16%define any_database %{with pgsql}%{with mysql}%{with sqlite3}
2fe2194b 17
3a90b5fd 18%ifnarch %{go_arches}
7f6a3eed
ER
19%undefine with_agent2
20%endif
21
3c0df4b1
JP
22%{?with_java:%{?use_default_jdk}}
23
710f2b0f 24%define php_min_version 7.2.5
06317756
JK
25Summary: Zabbix - network monitoring software
26Summary(pl.UTF-8): Zabbix - oprogramowanie do monitorowania sieci
10a854a6 27Name: zabbix
98ab823a 28Version: 5.4.3
6749edf8 29Release: 3
10a854a6 30License: GPL v2+
d0e25550 31Group: Networking/Utilities
98ab823a
ER
32# https://www.zabbix.com/download_sources
33Source0: https://cdn.zabbix.com/zabbix/sources/stable/5.4/%{name}-%{version}.tar.gz
34# Source0-md5: 5dccb536c164e45c7d5c1a5a9d64be43
1afc63f3
ER
35Source100: go-vendor.tar.xz
36# Source100-md5: 61f2ee9647280765b622a5e1e8cdfbba
cd323295 37Source1: %{name}-apache.conf
0196d0f6
ER
38Source2: %{name}_server.service
39Source3: %{name}_agentd.service
40Source4: %{name}_proxy.service
41Source5: %{name}_java.service
42Source6: %{name}.tmpfiles
d93a02f8 43Source7: %{name}_agentd.init
1afc63f3 44Source8: %{name}_agent2.init
e56a6d2d
ER
45%if 0
46cd src/go/
47go mod vendor
48tar -caf ~/go-vendor.tar.xz -C ../../ src/go/vendor
49%endif
06317756 50Patch0: config.patch
7efbcfc2 51Patch1: sqlite3_dbname.patch
c4cfaa95 52Patch2: always_compile_ipc.patch
219bbb7e 53Patch3: go-destdir.patch
e56a6d2d 54Patch4: go-vendor.patch
98ab823a 55URL: https://www.zabbix.com/
d93a02f8 56BuildRequires: OpenIPMI-devel
e27bce28
JK
57BuildRequires: autoconf
58BuildRequires: automake >= 1:1.15
73af344b 59BuildRequires: curl-devel
60BuildRequires: iksemel-devel
3c0df4b1 61%{?with_java:%{?use_jdk:%buildrequires_jdk}%{!?use_jdk:BuildRequires: jdk}}
21f1e05e 62BuildRequires: rpm-build >= 4.6
b752d141 63%{?with_java:BuildRequires: rpm-pld-macros-javaprov}
b711b6e8 64%{?with_agent2:BuildRequires: golang >= 1.13}
4ffaba52 65BuildRequires: libevent-devel
cd323295 66BuildRequires: libssh2-devel
d93a02f8 67BuildRequires: libtool
0196d0f6 68BuildRequires: libxml2-devel
cd323295 69%{?with_mysql:BuildRequires: mysql-devel}
39709426 70BuildRequires: net-snmp-devel
246efd79 71BuildRequires: openldap-devel >= 2.4.6
2886d983 72BuildRequires: openssl-devel >= 0.9.7d
4ffaba52 73BuildRequires: pcre-devel
9ffbc0d2 74%{?with_pgsql:BuildRequires: postgresql-devel}
3c0df4b1 75BuildRequires: rpmbuild(macros) >= 2.021
cd323295 76%{?with_sqlite3:BuildRequires: sqlite3-devel}
e4689143 77BuildRequires: tar >= 1:1.22
cd323295 78BuildRequires: unixODBC-devel
e4689143 79BuildRequires: xz
9e6cf723 80BuildRequires: zlib-devel
0196d0f6
ER
81Requires: %{name}-agentd = %{version}-%{release}
82Requires: %{name}-frontend-php = %{version}-%{release}
83Requires: %{name}-server = %{version}-%{release}
10a854a6
TO
84BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
85
a5bb35f6 86%define _sysconfdir /etc/%{name}
7dcff817
TP
87%define _appdir %{_datadir}/%{name}
88%define _webapps /etc/webapps
89%define _webapp %{name}
10a854a6
TO
90
91%description
06317756 92Zabbix is software that monitors numerous parameters of a network and
0196d0f6
ER
93the servers on that network. It is a useful tool for monitoring the
94health and integrity of servers. Zabbix uses a flexible notification
95mechanism that allows users to configure email based alerts for
96virtually any event. All monitored parameters are stored in a
97database. Zabbix offers excellent reporting and data visualisation
06317756
JK
98features based on the stored data. Zabbix supports both polling and
99trapping. All Zabbix reports and statistics, as well as configuration
7f4b6a83 100parameters, are accessed through a web-based front end.
101
ff14176a 102%description -l pl.UTF-8
06317756 103Zabbix to oprogramowanie do monitorowania licznych parametrów sieci i
1266ba50
TP
104serwerów sieciowych. Jest przydatny przy monitorowaniu działania
105serwerów. Jorzysta z elastycznego mechanizmu powiadamiania, który
106pozwala użytkownikom konfigurować powiadamianie pocztą elektroniczną
107dla praktycznie wszelkich zdarzeń. Monitorowane parametry są
06317756 108przechowywane w bazie danych. W oparciu o przechowywane dane Zabbix
1266ba50
TP
109oferuje świetne raportowanie i funkcje wizualizacji. Wspiera zarówno
110odpytywanie jak i pułapkowanie. Dostęp do wszystkich raportów i
06317756
JK
111statystyk Zabbiksa jest możliwy poprzez interfejs oparty o WWW.
112
113%package common
114Summary: Common files for Zabbix monitoring software
115Summary(pl.UTF-8): Wspólne pliki dla oprogramowania monitorującego Zabbix
116Group: Networking/Utilities
117Requires(postun): /usr/sbin/groupdel
118Requires(postun): /usr/sbin/userdel
119Requires(pre): /bin/id
120Requires(pre): /usr/bin/getgid
121Requires(pre): /usr/sbin/groupadd
122Requires(pre): /usr/sbin/useradd
123Provides: group(zabbix)
124Provides: user(zabbix)
125
126%description common
127Common files for Zabbix monitoring software.
128
129%description common -l pl.UTF-8
130Wspólne pliki dla oprogramowania monitorującego Zabbix.
10a854a6 131
cd323295 132%package agentd
06317756
JK
133Summary: Zabbix Agent
134Summary(pl.UTF-8): Agenta Zabbiksa
d0e25550 135Group: Networking/Utilities
06317756 136Requires: %{name}-common = %{version}-%{release}
0196d0f6 137Requires: systemd-units >= 38
96b8972f 138Obsoletes: zabbix-agent-inetd
cd323295 139Obsoletes: zabbix-agent-standalone
d93a02f8
ER
140Requires(post,preun): /sbin/chkconfig
141Requires: rc-scripts
10a854a6 142
cd323295 143%description agentd
06317756 144Zabbix agent collects data from the local system for a Zabbix server.
90e6d4b1 145
cd323295 146%description agentd -l pl.UTF-8
06317756 147Agent zbiera dane z lokalnej maszyny dla serwera Zabbix.
7dcff817 148
b711b6e8
ER
149%package agent2
150Summary: Zabbix Agent 2
151Group: Networking/Utilities
152URL: https://www.zabbix.com/documentation/current/manual/concepts/agent2
153Requires: %{name}-common = %{version}-%{release}
1afc63f3
ER
154Requires(post,preun): /sbin/chkconfig
155Requires: rc-scripts
b711b6e8
ER
156
157%description agent2
158Zabbix agent 2 is a new generation of Zabbix agent and may be used in
159place of Zabbix agent.
160
161Zabbix agent 2 has been developed to:
162- reduce the number of TCP connections
163- have greater check concurrency
164- be easily extendible with plugins.
165
166A plugin should be able to:
167- provide trivial checks consisting of only a few simple lines of code
168- provide complex checks consisting of long-running scripts and
169 standalone data gathering with periodic sending back of the data
170- be a drop-in replacement for Zabbix agent (in that it supports all
171 the previous functionality)
172
173Passive checks work similarly to Zabbix agent. Active checks support
174scheduled/flexible intervals and check concurrency within one active
175server.
176
7dcff817 177%package frontend-php
06317756
JK
178Summary: PHP frontend for Zabbix
179Summary(pl.UTF-8): Interfejs PHP dla Zabbiksa
d0e25550 180Group: Applications/WWW
cd323295 181Requires: php(bcmath)
1d07384b 182Requires: php(core) >= %{php_min_version}
cd323295 183Requires: php(ctype)
1d07384b
JK
184Requires: php(gd)
185Requires: php(gettext)
8cc30dbd 186Requires: php(json)
cd323295
JK
187Requires: php(mbstring)
188Requires: php(pcre)
cd323295 189Requires: php(session)
1d07384b
JK
190Requires: php(sockets)
191Requires: php(xml)
192Requires: php(xmlreader)
193Requires: php(xmlwriter)
7dcff817 194Requires: webapps
cb5654b1 195Requires: webserver(alias)
66fbc8af 196Requires: webserver(indexfile)
7dcff817 197Requires: webserver(php)
7efbcfc2
JK
198Suggests: php(mysql)
199Suggests: php(pgsql)
200Suggests: php(sqlite3)
b8568b0f
AM
201# used with sqlite3
202Suggests: php(sysvsem)
ae9a7f61 203BuildArch: noarch
7dcff817
TP
204
205%description frontend-php
06317756 206This package provides web based (PHP) frontend for Zabbix.
7dcff817
TP
207
208%description frontend-php -l pl.UTF-8
06317756 209Ten pakiet dostarcza napisany w PHP frontend dla Zabbiksa.
7dcff817
TP
210
211%package get
06317756
JK
212Summary: Program retrieving data from Zabbix agent
213Summary(pl.UTF-8): Program odpytujÄcy agenta Zabbiksa
d0e25550 214Group: Networking/Utilities
7dcff817
TP
215
216%description get
06317756 217This package provides a program retrieving data from Zabbix agent.
7dcff817
TP
218
219%description get -l pl.UTF-8
06317756 220Ten pakiet zawiera program odpytujÄcy agenta Zabbiksa.
10a854a6 221
1b6bdd87 222%package proxy
223Summary: Zabbix proxy
06317756 224Summary(pl.UTF-8): Proxy do Zabbiksa
1b6bdd87 225Group: Networking/Utilities
06317756 226Requires: %{name}-common = %{version}-%{release}
0196d0f6 227Requires: systemd-units >= 38
9a6ace5d 228Requires: zabbix-proxy(db) = %{version}-%{release}
1b6bdd87 229
230%description proxy
06317756 231This package provides the Zabbix proxy.
1b6bdd87 232
233%description proxy -l pl.UTF-8
06317756 234Ten pakiet zawiera proxy Zabbix.
1b6bdd87 235
7efbcfc2
JK
236%package proxy-mysql
237Summary: MySQL support for Zabbix proxy
238Summary(pl.UTF-8): Obsługa MySQL dla proxy do Zabbiksa
239Group: Networking/Utilities
240Provides: %{name}-proxy(db) = %{version}-%{release}
9a6ace5d
ER
241Obsoletes: zabbix-proxy-postgresql
242Obsoletes: zabbix-proxy-sqlite3
7efbcfc2
JK
243
244%description proxy-mysql
245This package provides the Zabbix proxy binary with MySQL support.
246
247%description proxy-mysql -l pl.UTF-8
248Ten pakiet zawiera proxy Zabbix z obsługą MySQL.
249
250%package proxy-postgresql
251Summary: PostgreSQL support for Zabbix proxy
252Summary(pl.UTF-8): Obsługa PostgreSQL dla proxy do Zabbiksa
253Group: Networking/Utilities
254Provides: %{name}-proxy(db) = %{version}-%{release}
9a6ace5d
ER
255Obsoletes: zabbix-proxy-mysql
256Obsoletes: zabbix-proxy-sqlite3
7efbcfc2
JK
257
258%description proxy-postgresql
259This package provides the Zabbix proxy binary with PostgreSQL support.
260
261%description proxy-postgresql -l pl.UTF-8
262Ten pakiet zawiera proxy Zabbix z obsługą PostgreSQL.
263
264%package proxy-sqlite3
265Summary: SQLite 3 support for Zabbix proxy
266Summary(pl.UTF-8): Obsługa SQLite 3 dla proxy do Zabbiksa
267Group: Networking/Utilities
268Provides: %{name}-proxy(db) = %{version}-%{release}
9a6ace5d
ER
269Obsoletes: zabbix-proxy-mysql
270Obsoletes: zabbix-proxy-postgresql
7efbcfc2
JK
271
272%description proxy-sqlite3
273This package provides the Zabbix proxy binary with SQLite 3 support.
274
275%description proxy-sqlite3 -l pl.UTF-8
276Ten pakiet zawiera proxy Zabbix z obsługą SQLite 3.
277
10a854a6 278%package sender
7dcff817 279Summary: Zabbix sender
06317756 280Summary(pl.UTF-8): Program zawiadamiający Zabbiksa
d0e25550 281Group: Networking/Utilities
10a854a6
TO
282
283%description sender
06317756 284This package provides the Zabbix sender.
10a854a6 285
ff14176a 286%description sender -l pl.UTF-8
06317756 287Ten pakiet zawiera program zawiadamiający Zabbiksa.
a5bb35f6 288
a7e2963d 289%package server
7dcff817 290Summary: Zabbix server
06317756 291Summary(pl.UTF-8): Serwer Zabbiksa
d0e25550 292Group: Networking/Utilities
06317756 293Requires: %{name}-common = %{version}-%{release}
7efbcfc2 294Requires: %{name}-server(db) = %{version}-%{release}
0196d0f6
ER
295Requires: systemd-units >= 38
296Obsoletes: zabbix-suckerd
297Obsoletes: zabbix-trapper-inetd
298Obsoletes: zabbix-trapper-standalone
a7e2963d 299
300%description server
06317756 301This package provides the Zabbix server.
a7e2963d 302
303%description server -l pl.UTF-8
06317756 304Ten pakiet zawiera serwer Zabbiksa.
a7e2963d 305
7efbcfc2
JK
306%package server-mysql
307Summary: MySQL support for Zabbix server
308Summary(pl.UTF-8): Obsługa MySQL sla serwera Zabbiksa
309Group: Networking/Utilities
310Provides: %{name}-server(db) = %{version}-%{release}
9a6ace5d
ER
311Obsoletes: zabbix-server-postgresql
312Obsoletes: zabbix-server-sqlite3
7efbcfc2
JK
313
314%description server-mysql
9a6ace5d
ER
315This package provides the Zabbix server binary for use with MySQL
316database.
7efbcfc2
JK
317
318%description server-mysql -l pl.UTF-8
319Ten pakiet zawiera serwer Zabbiksa z obsługą bazy danych MySQL.
320
321%package server-postgresql
322Summary: PostgreSQL support for Zabbix server
323Summary(pl.UTF-8): Obsługa PostgreSQL sla serwera Zabbiksa
324Group: Networking/Utilities
325Provides: %{name}-server(db) = %{version}-%{release}
9a6ace5d
ER
326Obsoletes: zabbix-server-mysql
327Obsoletes: zabbix-server-sqlite3
7efbcfc2
JK
328
329%description server-postgresql
9a6ace5d
ER
330This package provides the Zabbix server binary for use with PostgreSQL
331database.
7efbcfc2
JK
332
333%description server-postgresql -l pl.UTF-8
334Ten pakiet zawiera serwer Zabbiksa z obsługą bazy danych PostgreSQL.
335
cd323295
JK
336%package java
337Summary: Zabbix Java Gateway
338Group: Networking/Utilities
06317756 339Requires: %{name}-common = %{version}-%{release}
0196d0f6 340Requires: systemd-units >= 38
cd323295
JK
341
342%description java
343This package provides the Zabbix Java Gateway.
344
10a854a6 345%prep
1afc63f3 346%setup -q -a100
06317756 347%patch0 -p1
7efbcfc2 348%patch1 -p1
4ffaba52 349%patch2 -p1
219bbb7e 350%patch3 -p1
e56a6d2d 351%patch4 -p1
06317756 352
10a854a6 353%build
e27bce28
JK
354%{__libtoolize}
355%{__aclocal} -I m4
356%{__autoconf}
357%{__autoheader}
358%{__automake}
7efbcfc2
JK
359
360configure() {
361 %configure \
3c0df4b1
JP
362 %{?with_java:ac_cv_prog_JAVAC=%{java_home}/bin/javac} \
363 %{?with_java:ac_cv_prog_JAR=%{java_home}/bin/jar} \
710f2b0f 364 --enable-dependency-tracking \
2fe2194b 365 --enable-agent \
b711b6e8 366 %{__enable_disable agent2} \
cd323295
JK
367 --enable-ipv6 \
368 %{__enable_disable java} \
cd323295
JK
369 --with-ldap \
370 --with-libcurl \
710f2b0f
AM
371 --with-libevent \
372 --with-libpcre \
cd323295
JK
373 --with-libxml2 \
374 --with-net-snmp \
375 --with-openipmi \
376 --with-openssl \
377 --with-ssh2 \
7efbcfc2
JK
378 --with-unixodbc \
379 "$@"
380}
381
382configure \
383 --disable-server \
9a6ace5d 384 --disable-proxy
10a854a6
TO
385
386%{__make}
387
7efbcfc2 388for database in %{databases} ; do
c4cfaa95
JK
389 if [ "$database" = "sqlite3" ] ; then
390 enable_server=""
391 else
392 enable_server="--enable-server"
393 fi
7efbcfc2
JK
394 configure \
395 --with-$database \
c4cfaa95 396 $enable_server \
7efbcfc2
JK
397 --enable-proxy
398
7efbcfc2
JK
399 %{__make}
400
c4cfaa95
JK
401 if [ "$enable_server" ] ; then
402 %{__make} install \
403 -C src/zabbix_server \
404 DESTDIR=$PWD/install-${database}
c4cfaa95
JK
405 fi
406
7efbcfc2
JK
407 %{__make} install \
408 -C src/zabbix_proxy \
409 DESTDIR=$PWD/install-${database}
7efbcfc2
JK
410done
411
10a854a6
TO
412%install
413rm -rf $RPM_BUILD_ROOT
297b7196
ER
414install -d \
415 $RPM_BUILD_ROOT{%{_sysconfdir}/zabbix_agent2.conf.d,/etc/webapps/%{_webapp}} \
416 $RPM_BUILD_ROOT{/etc/rc.d/init.d,%{_appdir}/frontends/php} \
8d0f9b1e 417 $RPM_BUILD_ROOT{/var/run/zabbix,/var/log/zabbix,%{systemdunitdir},%{systemdtmpfilesdir}}
10a854a6 418
2fe2194b 419%{__make} install \
cd323295
JK
420 DESTDIR=$RPM_BUILD_ROOT \
421 ZJG_DEST=$RPM_BUILD_ROOT%{_datadir}/zabbix_java
10a854a6 422
7efbcfc2 423for database in %{databases} ; do
c4cfaa95
JK
424 if [ "$database" != "sqlite3" ] ; then
425 cp -p install-$database/%{_sbindir}/zabbix_server \
426 $RPM_BUILD_ROOT%{_sbindir}/zabbix_server-$database
427 fi
7efbcfc2
JK
428 cp -p install-$database/%{_sbindir}/zabbix_proxy \
429 $RPM_BUILD_ROOT%{_sbindir}/zabbix_proxy-$database
430done
431
432if [ -n "$database" ] ; then
c89ae9ca
ER
433 ln -sf zabbix_server-$database $RPM_BUILD_ROOT%{_sbindir}/zabbix_server
434 ln -sf zabbix_proxy-$database $RPM_BUILD_ROOT%{_sbindir}/zabbix_proxy
7efbcfc2
JK
435fi
436
437%if %{with sqlite3}
438install -d $RPM_BUILD_ROOT/var/lib/zabbix
439touch $RPM_BUILD_ROOT/var/lib/zabbix/zabbix.db
440%endif
441
710f2b0f 442cp -r ui/* $RPM_BUILD_ROOT%{_appdir}/frontends/php
06317756 443
0196d0f6
ER
444cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_webapps}/%{_webapp}/apache.conf
445cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_webapps}/%{_webapp}/httpd.conf
cd323295 446
06317756
JK
447install %{SOURCE2} $RPM_BUILD_ROOT%{systemdunitdir}/zabbix_server.service
448install %{SOURCE3} $RPM_BUILD_ROOT%{systemdunitdir}/zabbix_agentd.service
d93a02f8 449install %{SOURCE7} $RPM_BUILD_ROOT/etc/rc.d/init.d/zabbix_agentd
1afc63f3 450install %{SOURCE8} $RPM_BUILD_ROOT/etc/rc.d/init.d/zabbix_agent2
06317756
JK
451install %{SOURCE4} $RPM_BUILD_ROOT%{systemdunitdir}/zabbix_proxy.service
452install %{SOURCE5} $RPM_BUILD_ROOT%{systemdunitdir}/zabbix_java.service
453
6594aa3f 454cp -p %{SOURCE6} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/zabbix.conf
06317756
JK
455
456mv $RPM_BUILD_ROOT%{_appdir}/frontends/php/conf $RPM_BUILD_ROOT%{_sysconfdir}/frontend
c89ae9ca 457ln -s --relative $RPM_BUILD_ROOT{%{_sysconfdir}/frontend,%{_appdir}/frontends/php/conf}
06317756
JK
458touch $RPM_BUILD_ROOT%{_sysconfdir}/frontend/zabbix.conf.php
459
cd323295
JK
460%if %{with java}
461mv $RPM_BUILD_ROOT%{_datadir}/zabbix_java/settings.sh $RPM_BUILD_ROOT%{_sysconfdir}/zabbix_java.conf
c89ae9ca 462ln -s --relative $RPM_BUILD_ROOT{%{_sysconfdir}/zabbix_java.conf,%{_datadir}/zabbix_java/settings.sh}
06317756 463mv $RPM_BUILD_ROOT%{_datadir}/zabbix_java/lib/logback.xml $RPM_BUILD_ROOT%{_sysconfdir}/java-logback.xml
c89ae9ca 464ln -s --relative $RPM_BUILD_ROOT{%{_sysconfdir}/java-logback.xml,%{_datadir}/zabbix_java/lib/logback.xml}
06317756 465mv $RPM_BUILD_ROOT%{_datadir}/zabbix_java/lib/logback-console.xml $RPM_BUILD_ROOT%{_sysconfdir}/java-logback-console.xml
c89ae9ca 466ln -s --relative $RPM_BUILD_ROOT{%{_sysconfdir}/java-logback-console.xml,%{_datadir}/zabbix_java/lib/logback-console.xml}
cd323295
JK
467
468cat >$RPM_BUILD_ROOT%{_sbindir}/zabbix_java-start <<'EOF'
469#!/bin/sh
470
471exec %{_datadir}/zabbix_java/startup.sh "$@"
472EOF
473
474cat >$RPM_BUILD_ROOT%{_sbindir}/zabbix_java-stop <<'EOF'
475#!/bin/sh
476
477exec %{_datadir}/zabbix_java/shutdown.sh "$@"
478EOF
479%endif
10a854a6
TO
480
481%clean
482rm -rf $RPM_BUILD_ROOT
483
7dcff817
TP
484%triggerin frontend-php -- apache1 < 1.3.37-3, apache1-base
485%webapp_register apache %{_webapp}
486
487%triggerun frontend-php -- apache1 < 1.3.37-3, apache1-base
488%webapp_unregister apache %{_webapp}
489
490%triggerin frontend-php -- apache < 2.2.0, apache-base
491%webapp_register httpd %{_webapp}
492
493%triggerun frontend-php -- apache < 2.2.0, apache-base
494%webapp_unregister httpd %{_webapp}
495
06317756 496%pre common
78794d78
ER
497%groupadd -g 111 zabbix
498%useradd -d / -u 111 -g zabbix -c "Zabbix User" -s /bin/false zabbix
68fab610 499%addusertogroup -q zabbix proc
10a854a6 500
06317756
JK
501%postun common
502if [ "$1" = "0" ]; then
503 %userremove zabbix
504 %groupremove zabbix
505fi
506
7efbcfc2 507%post server-mysql
96b8972f 508if [ "$1" = 1 ]; then
cd323295 509 %banner -e %{name}-server <<-EOF
c4962172 510 You should create database for Zabbix.
7efbcfc2 511
cd323295 512 Running these should be fine in most cases:
c4962172 513 mysqladmin create zabbix
7efbcfc2
JK
514 zcat %{_docdir}/%{name}-server-mysql-%{version}/schema.sql.gz | mysql zabbix
515 zcat %{_docdir}/%{name}-server-mysql-%{version}/images.sql.gz | mysql zabbix
516 zcat %{_docdir}/%{name}-server-mysql-%{version}/data.sql.gz | mysql zabbix
517EOF
518fi
c89ae9ca 519ln -sf zabbix_server-mysql %{_sbindir}/zabbix_server || :
7efbcfc2
JK
520
521%post server-postgresql
522if [ "$1" = 1 ]; then
523 %banner -e %{name}-server <<-EOF
524 You should create database for Zabbix.
525
526 Running these should be fine in most cases:
527
528 createuser zabbix
529 createdb -O zabbix zabbix
530 zcat %{_docdir}/%{name}-server-postgresql-%{version}/schema.sql.gz | psql -u zabbix zabbix
531 zcat %{_docdir}/%{name}-server-postgresql-%{version}/images.sql.gz | psql -u zabbix zabbix
532 zcat %{_docdir}/%{name}-server-postgresql-%{version}/data.sql.gz | psql -u zabbix zabbix
533EOF
534fi
c89ae9ca 535ln -sf zabbix_server-postgresql %{_sbindir}/zabbix_server || :
7efbcfc2 536
7efbcfc2 537%post server
06317756 538%systemd_post zabbix_server.service
c4962172 539
06317756
JK
540%preun server
541%systemd_preun zabbix_server.service
542
543%postun server
7efbcfc2
JK
544if [ "$1" = "0" ]; then
545 if [ -L %{_sbindir}/zabbix_server ] ; then
546 rm -f %{_sbindir}/zabbix_server || :
547 fi
548fi
06317756
JK
549%systemd_reload
550
551%post agentd
d93a02f8
ER
552/sbin/chkconfig --add zabbix_agentd
553%service zabbix_agentd restart
06317756
JK
554%systemd_post zabbix_agentd.service
555
556%preun agentd
d93a02f8
ER
557if [ "$1" = "0" ]; then
558 %service -q zabbix_agentd stop
559 /sbin/chkconfig --del zabbix_agentd
560fi
06317756
JK
561%systemd_preun zabbix_agentd.service
562
563%postun agentd
564%systemd_reload
565
1afc63f3
ER
566%post agent2
567/sbin/chkconfig --add zabbix_agent2
568%service zabbix_agent2 restart
569
570%preun agent2
571if [ "$1" = "0" ]; then
572 %service -q zabbix_agent2 stop
573 /sbin/chkconfig --del zabbix_agent2
574fi
575
7efbcfc2 576%post proxy-mysql
c89ae9ca 577ln -sf zabbix_proxy-mysql %{_sbindir}/zabbix_proxy || :
7efbcfc2
JK
578
579%post proxy-postgresql
c89ae9ca 580ln -sf zabbix_proxy-postgresql %{_sbindir}/zabbix_proxy || :
7efbcfc2
JK
581
582%post proxy-sqlite3
c89ae9ca 583ln -sf zabbix_proxy-sqlite3 %{_sbindir}/zabbix_proxy || :
7efbcfc2 584
06317756
JK
585%post proxy
586%systemd_post zabbix_proxy.service
587
588%preun proxy
589%systemd_preun zabbix_proxy.service
590
591%postun proxy
592%systemd_reload
593
594%post java
595%systemd_post zabbix_java.service
596
597%preun java
598%systemd_preun zabbix_java.service
599
600%postun java
601%systemd_reload
10a854a6 602
10a854a6
TO
603%files
604%defattr(644,root,root,755)
cd323295 605%doc AUTHORS ChangeLog README
06317756
JK
606
607%files common
608%defattr(644,root,root,755)
609%doc AUTHORS ChangeLog README
610%attr(751,root,zabbix) %dir %{_sysconfdir}
611%attr(751,root,http) %dir %{_sysconfdir}/frontend
e4c376d6 612%dir %{_appdir}
7dcff817 613%dir %{_appdir}/frontends
8d0f9b1e 614%dir %attr(770,root,zabbix) /var/run/zabbix
06317756 615%dir %attr(775,root,zabbix) /var/log/zabbix
6594aa3f 616%{systemdtmpfilesdir}/zabbix.conf
10a854a6 617
cd323295 618%files agentd
10a854a6 619%defattr(644,root,root,755)
3e3c35a0 620%doc conf/zabbix_agentd/*.conf
7dcff817 621%attr(640,root,zabbix) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/zabbix_agentd.conf
3e3c35a0 622%dir %attr(751,root,zabbix) %{_sysconfdir}/zabbix_agentd.conf.d
d93a02f8 623%attr(754,root,root) /etc/rc.d/init.d/zabbix_agentd
b0f13a65 624%attr(755,root,root) %{_sbindir}/zabbix_agentd
ed93a3d2 625%{_mandir}/man8/zabbix_agentd*
06317756 626%{systemdunitdir}/zabbix_agentd.service
10a854a6 627
b711b6e8
ER
628%if %{with agent2}
629%files agent2
630%defattr(644,root,root,755)
631%attr(640,root,zabbix) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/zabbix_agent2.conf
297b7196 632%dir %attr(751,root,zabbix) %{_sysconfdir}/zabbix_agent2.conf.d
7e22a8a5 633%attr(754,root,root) /etc/rc.d/init.d/zabbix_agent2
b711b6e8 634%attr(755,root,root) %{_sbindir}/zabbix_agent2
98ab823a 635%{_mandir}/man8/zabbix_agent2.8*
b711b6e8
ER
636%endif
637
7dcff817 638%files frontend-php
10a854a6 639%defattr(644,root,root,755)
7dcff817 640%attr(750,root,http) %dir %{_webapps}/%{_webapp}
7132ad20
ER
641%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_webapps}/%{_webapp}/apache.conf
642%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_webapps}/%{_webapp}/httpd.conf
06317756
JK
643%ghost %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/frontend/zabbix.conf.php
644%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/frontend/.htaccess
645%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/frontend/maintenance.inc.php
646%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/frontend/zabbix.conf.php.example
7132ad20 647%{_appdir}/frontends/php
10a854a6 648
a7e2963d 649%files get
10a854a6 650%defattr(644,root,root,755)
ed93a3d2 651%attr(755,root,root) %{_bindir}/zabbix_get
652%{_mandir}/man1/zabbix_get*
10a854a6 653
2a82feb1 654%if %{any_database}
1b6bdd87 655%files proxy
656%defattr(644,root,root,755)
cd323295 657%attr(640,root,zabbix) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/zabbix_proxy.conf
3e3c35a0 658%dir %attr(751,root,zabbix) %{_sysconfdir}/zabbix_proxy.conf.d
960b5033 659%ghost %{_sbindir}/zabbix_proxy
1b6bdd87 660%{_mandir}/man8/zabbix_proxy*
06317756 661%{systemdunitdir}/zabbix_proxy.service
2a82feb1 662%endif
1b6bdd87 663
7efbcfc2
JK
664%if %{with mysql}
665%files proxy-mysql
666%defattr(644,root,root,755)
667%attr(755,root,root) %{_sbindir}/zabbix_proxy-mysql
668%endif
669
670%if %{with pgsql}
671%files proxy-postgresql
672%defattr(644,root,root,755)
673%attr(755,root,root) %{_sbindir}/zabbix_proxy-postgresql
674%endif
675
676%if %{with sqlite3}
677%files proxy-sqlite3
678%defattr(644,root,root,755)
679%attr(755,root,root) %{_sbindir}/zabbix_proxy-sqlite3
680%endif
681
7dcff817
TP
682%files sender
683%defattr(644,root,root,755)
ed93a3d2 684%attr(755,root,root) %{_bindir}/zabbix_sender
685%{_mandir}/man1/zabbix_sender*
7dcff817 686
2a82feb1 687%if %{any_database}
a7e2963d 688%files server
10a854a6 689%defattr(644,root,root,755)
7efbcfc2 690%attr(640,root,zabbix) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/zabbix_server.conf
3e3c35a0 691%dir %attr(751,root,zabbix) %{_sysconfdir}/zabbix_server.conf.d
960b5033 692%ghost %{_sbindir}/zabbix_server
7efbcfc2
JK
693%{_mandir}/man8/zabbix_server*
694%{systemdunitdir}/zabbix_server.service
2a82feb1 695%endif
7efbcfc2 696
cd323295 697%if %{with mysql}
7efbcfc2
JK
698%files server-mysql
699%defattr(644,root,root,755)
9e6cf723 700%doc database/mysql/*.sql
7efbcfc2 701%attr(755,root,root) %{_sbindir}/zabbix_server-mysql
cd323295 702%endif
7efbcfc2 703
06317756 704%if %{with pgsql}
7efbcfc2
JK
705%files server-postgresql
706%defattr(644,root,root,755)
9e6cf723 707%doc database/postgresql/*.sql
7efbcfc2 708%attr(755,root,root) %{_sbindir}/zabbix_server-postgresql
cd323295 709%endif
7efbcfc2 710
cd323295
JK
711%if %{with java}
712%files java
713%defattr(644,root,root,755)
714%attr(755,root,root) %{_sbindir}/zabbix_java-start
715%attr(755,root,root) %{_sbindir}/zabbix_java-stop
716%attr(640,root,zabbix) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/zabbix_java.conf
06317756
JK
717%attr(640,root,zabbix) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/java-logback.xml
718%attr(640,root,zabbix) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/java-logback-console.xml
cd323295
JK
719%dir %{_datadir}/zabbix_java
720%{_datadir}/zabbix_java/bin
721%{_datadir}/zabbix_java/lib
722%{_datadir}/zabbix_java/settings.sh
723%attr(755,root,root) %{_datadir}/zabbix_java/shutdown.sh
724%attr(755,root,root) %{_datadir}/zabbix_java/startup.sh
06317756 725%{systemdunitdir}/zabbix_java.service
cd323295 726%endif
This page took 0.315527 seconds and 4 git commands to generate.