# macros.icinga file # macros for Icinga (sub-)package building - handle with care # # # directories # # install all plugins into this directory # Please note: we use the old Nagios directory here, as plugins are # currently compatible %icinga2_plugindir %{_prefix}/lib/nagios/plugins # install all event handler scripts into this directory %icinga2_eventhandlerdir %{_prefix}/lib/icinga/eventhandler # files like p1.pl are located directly in this directory %icinga2_libdir %{_prefix}/lib/icinga2 # Icinga uses this directory for status files %icinga2_localstatedir %{_var}/lib/icinga2 # Icinga configuration should be stored here %icinga2_sysconfdir %{_sysconfdir}/icinga2 # Icinga static webpages, stylesheets and theme(s), online documentation %icinga2_datadir %{_datadir}/icinga2 # Icinga spool dir %icinga2_spooldir %{_var}/spool/icinga2 # Icinga run dir %icinga2_rundir %{_localstatedir}/run/icinga2 # Icinga logfile dir %icinga2_logdir %{_var}/log/icinga2 # Icinga cgi directory %icinga2_cgidir %{_prefix}/lib/icinga2/cgi # Icinga cgi logging directory %icinga2_cgi_logdir %{icinga2_logdir}/www # Icinga check results spool directory %icinga2_checkresultdir %{icinga2_spooldir}/checkresults # Icinga external command file directory %icinga2_cmd_filedir %{icinga2_rundir} # Icinga temp directory %icinga2_tempdir %{icinga2_rundir}/tmp # # files # # This is where the current status of all monitored services and # hosts is stored %icinga2_status_file %{icinga2_spooldir}/status.dat # This is the file that Icinga should use to store host and # service state information before it shuts down. %icinga2_state_retention_file %{icinga2_spooldir}/retention.dat # Icinga lock file %icinga2_lockfile %{icinga2_rundir}/icinga2.pid # Icinga ido2db lock file %icinga2_ido2db_lockfile %{icinga2_rundir}/ido2db.pid # Icinga external command file - the name icinga.cmd is static, only the # directory is configurable %icinga2_cmdfile %{icinga2_cmd_filedir}/icinga2.cmd %icinga2_command_file %{icinga2_cmdfile} # Icinga ido2db socket file %icinga2_ido2db_socketfile %{icinga2_rundir}/ido2db.sock # Icinga initscript error file %icinga2_chkfile %{icinga2_spooldir}/icinga2.chk # Icinga idomod tmp file %icinga2_idomod_tmpfile %{icinga_spooldir}/idomod.tmp # Icinga HTTP auth file %icinga2_http_authfile %{icinga_sysconfdir}/htpasswd.users # Icinga logrotate file %icinga2_logrotatefile %{_sysconfdir}/logrotate.d/icinga2 # Icinga temp file %icinga2_tempfile %{icinga2_rundir}/icinga2.tmp # # users and groups # # User, Icinga runs under %icinga_user icinga # Group, Icinga runs under %icinga_group icinga # User, that can execute commands via %{icinga_command_file} %icinga_command_user wwwrun # Group, that can execute commands via %{icinga_command_file} %icinga_command_group icingacmd # Add Icinga user and groups %icinga_user_group_add() \ /usr/sbin/groupadd -r %{icinga_group} 2>/dev/null || :\ /usr/sbin/useradd -r -g %{icinga_group} -d %{icinga_localstatedir} -s /bin/false -c "User for Icinga" %{icinga_user} 2>/dev/null || :\ %{nil} %icinga_command_user_group_add() \ /usr/sbin/groupadd -r %{icinga_command_group} 2>/dev/null || :\ %if 0%{?suse_version} > 01220 \ /usr/sbin/usermod -a -G %{icinga_command_group} %{icinga_user} || :\ %else \ /usr/sbin/groupmod -A %{icinga_user} %{icinga_command_group} 2>/dev/null || :\ %endif \ %{nil}