[packages/asterisk/ASTERISK_12] systemd unit added
jajcus
jajcus at pld-linux.org
Wed Jan 8 16:05:48 CET 2014
commit 4aac1f31eaf97f4c496275c9b205f7e9791af5aa
Author: Jacek Konieczny <j.konieczny at eggsoft.pl>
Date: Wed Jan 8 15:08:32 2014 +0100
systemd unit added
asterisk.service | 16 ++++++++++++++++
asterisk.spec | 19 +++++++++++++++----
2 files changed, 31 insertions(+), 4 deletions(-)
---
diff --git a/asterisk.spec b/asterisk.spec
index 2c9a4c3..6ca4329 100644
--- a/asterisk.spec
+++ b/asterisk.spec
@@ -36,6 +36,7 @@ Source1: %{name}.init
Source2: %{name}.sysconfig
Source3: %{name}.tmpfiles
Source5: %{name}.logrotate
+Source6: %{name}.service
# menuselect.* -> make menuconfig; choose options; copy resulting files here
Source12: menuselect.makedeps
Source13: menuselect.makeopts
@@ -101,13 +102,15 @@ BuildRequires: popt-devel
BuildRequires: ptlib-devel
%endif
%{?with_radius:BuildRequires: radiusclient-ng-devel}
-BuildRequires: rpmbuild(macros) >= 1.583
+BuildRequires: rpmbuild(macros) >= 1.671
BuildRequires: sed >= 4.0
BuildRequires: spandsp-devel >= 0.0.5
BuildRequires: speex-devel
%{?with_sqlite2:BuildRequires: sqlite-devel}
BuildRequires: sqlite3-devel
BuildRequires: srtp-devel
+Requires(post,preun,postun): systemd-units >= 38
+Requires: systemd-units >= 0.38
%{?with_odbc:BuildRequires: unixODBC-devel}
BuildRequires: uriparser-devel
%{?with_ilbc:BuildRequires: webrtc-libilbc-devel}
@@ -707,7 +710,7 @@ touch apps/app_voicemail.so
%install
rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT{/var/{log/asterisk/cdr-csv,spool/asterisk/monitor},/etc/{rc.d/init.d,sysconfig,logrotate.d}} \
- $RPM_BUILD_ROOT{/usr/lib/tmpfiles.d,%{_mandir}/man1}
+ $RPM_BUILD_ROOT{%{systemdunitdir},%{systemdtmpfilesdir},%{_mandir}/man1}
export ASTCFLAGS="%{rpmcflags}"
@@ -739,8 +742,9 @@ install -D -p apps/app_voicemail_plain.so $RPM_BUILD_ROOT%{_libdir}/asterisk/mod
install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
cp -a %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/%{name}
cp -a %{SOURCE5} $RPM_BUILD_ROOT/etc/logrotate.d/%{name}
+install -p %{SOURCE6} $RPM_BUILD_ROOT%{systemdunitdir}/%{name}.service
-install %{SOURCE3} $RPM_BUILD_ROOT/usr/lib/tmpfiles.d/%{name}.conf
+install %{SOURCE3} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/%{name}.conf
# create some directories that need to be packaged
install -d $RPM_BUILD_ROOT%{_datadir}/asterisk/moh
@@ -835,17 +839,20 @@ if [ "$1" = 0 ]; then
%userremove asterisk
%groupremove asterisk
fi
+%systemd_reload
%post
/sbin/chkconfig --add asterisk
# use -n (NOOP) as restart would be breaking all current calls.
%service -n asterisk restart "Asterisk daemon"
+%systemd_post %{name}.service
%preun
if [ "$1" = "0" ]; then
%service asterisk stop
/sbin/chkconfig --del asterisk
fi
+%systemd_preun %{name}.service
%triggerpostun -- %{name} < 1.6.1.12-0.1
# chown to asterisk previously root owned files
@@ -854,6 +861,9 @@ fi
chown -R asterisk:asterisk /var/spool/asterisk
chown -R asterisk:asterisk /var/lib/asterisk
+%triggerpostun -- %{name} < 12.0.0
+%systemd_trigger %{name}.service
+
%files
%defattr(644,root,root,755)
%doc README *.txt ChangeLog BUGS CREDITS configs
@@ -875,6 +885,7 @@ chown -R asterisk:asterisk /var/lib/asterisk
%attr(754,root,root) /etc/rc.d/init.d/%{name}
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/%{name}
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name}
+%{systemdunitdir}/%{name}.service
%attr(750,root,asterisk) %dir %{_sysconfdir}/asterisk
%attr(640,root,asterisk) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asterisk/adsi.conf
@@ -1139,7 +1150,7 @@ chown -R asterisk:asterisk /var/lib/asterisk
%attr(755,root,root) %{_libdir}/asterisk/modules/res_timing_pthread.so
%attr(755,root,root) %{_libdir}/asterisk/modules/res_timing_timerfd.so
%attr(755,root,root) %{_libdir}/asterisk/modules/res_statsd.so
-/usr/lib/tmpfiles.d/%{name}.conf
+%{systemdtmpfilesdir}/%{name}.conf
%dir %{_datadir}/asterisk
%dir %{_datadir}/asterisk/agi-bin
diff --git a/asterisk.service b/asterisk.service
new file mode 100644
index 0000000..fce9061
--- /dev/null
+++ b/asterisk.service
@@ -0,0 +1,16 @@
+[Unit]
+Description=Asterisk PBX
+Documentation=man:asterisk(8)
+Wants=network.target
+After=network.target nss-lookup.target
+
+[Service]
+Environment=AST_CONFIG=/etc/asterisk/asterisk.conf AST_USER=asterisk ASTERISK_OPTS=
+EnvironmentFile=-/etc/sysconfig/asterisk
+ExecStart=/usr/sbin/asterisk -f -U ${AST_USER} -C ${AST_CONFIG} $ASTERISK_OPTS
+ExecStop=/usr/bin/asterisk -rx 'core stop now'
+ExecReload=/usr/bin/asterisk -rx 'core reload'
+Restart=always
+
+[Install]
+WantedBy=multi-user.target
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/asterisk.git/commitdiff/353c2faa173186278727315a04fc22dd8863457e
More information about the pld-cvs-commit
mailing list