Skip to content

Commit 3b09e81

Browse files
authored
Merge pull request #154 from LunfanZhang/private/luzhan/CA-381643
CA-381643 Replace systemV Services control with systemd
2 parents 4be6540 + 694ff10 commit 3b09e81

File tree

1 file changed

+22
-4
lines changed

1 file changed

+22
-4
lines changed

mk/xe-guest-utilities.spec.in

Lines changed: 22 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ mkdir -p %{buildroot}/usr/sbin/
4141
mkdir -p %{buildroot}/usr/share/doc/%{name}-%{version}/examples/
4242
mkdir -p %{buildroot}/etc/init.d
4343
mkdir -p %{buildroot}/etc/udev/rules.d
44+
mkdir -p %{buildroot}/usr/lib/systemd/system
4445

4546
cp %{SOURCE0} %{buildroot}/usr/sbin/xe-linux-distribution
4647
chmod 755 %{buildroot}/usr/sbin/xe-linux-distribution
@@ -51,6 +52,9 @@ chmod 755 %{buildroot}/etc/init.d/xe-linux-distribution
5152
cp %{SOURCE3} %{buildroot}/usr/sbin/xe-daemon
5253
chmod 755 %{buildroot}/usr/sbin/xe-daemon
5354

55+
cp mk/xe-linux-distribution.service %{buildroot}/usr/lib/systemd/system/xe-linux-distribution.service
56+
chmod 644 %{buildroot}/usr/lib/systemd/system/xe-linux-distribution.service
57+
5458
cp %{SOURCE5} %{buildroot}/usr/share/doc/%{name}-%{version}/examples/
5559

5660
install -d %{buildroot}/usr/bin/
@@ -75,8 +79,16 @@ cp %{SOURCE8} %{buildroot}/usr/share/doc/%{name}-xenstore-%{version}/
7579
rm -rf %{buildroot}
7680

7781
%post
78-
/sbin/chkconfig --add xe-linux-distribution >/dev/null
79-
[ -n "${EXTERNAL_P2V}" ] || service xe-linux-distribution start >/dev/null 2>&1
82+
#!/bin/bash
83+
if command -v systemctl >/dev/null 2>&1; then
84+
xe_install_path=/usr/sbin
85+
sed -i "s#/usr/share/oem/xs#$xe_install_path#g" /usr/lib/systemd/system/xe-linux-distribution.service
86+
systemctl enable /usr/lib/systemd/system/xe-linux-distribution.service >/dev/null 2>&1
87+
systemctl start xe-linux-distribution.service >/dev/null 2>&1
88+
else
89+
/sbin/chkconfig --add xe-linux-distribution >/dev/null
90+
[ -n "${EXTERNAL_P2V}" ] || service xe-linux-distribution start >/dev/null 2>&1
91+
fi
8092

8193
eval $(/usr/sbin/xe-linux-distribution)
8294

@@ -94,8 +106,13 @@ fi
94106

95107
%preun
96108
if [ $1 -eq 0 ] ; then
97-
service xe-linux-distribution stop >/dev/null 2>&1
98-
/sbin/chkconfig --del xe-linux-distribution >/dev/null
109+
if command -v systemctl >/dev/null 2>&1; then
110+
systemctl stop xe-linux-distribution.service >/dev/null 2>&1
111+
systemctl disable xe-linux-distribution.service >/dev/null 2>&1
112+
else
113+
service xe-linux-distribution stop >/dev/null 2>&1
114+
/sbin/chkconfig --del xe-linux-distribution >/dev/null
115+
fi
99116
fi
100117

101118
%files
@@ -105,6 +122,7 @@ fi
105122
/usr/sbin/xe-daemon
106123
/etc/udev/rules.d/z10-xen-vcpu-hotplug.rules
107124
/usr/share/doc/%{name}-%{version}/LICENSE
125+
/usr/lib/systemd/system/xe-linux-distribution.service
108126

109127
%files xenstore
110128
%defattr(-,root,root,-)

0 commit comments

Comments
 (0)