On 12/06/2011 06:47 PM, Eric Blake wrote:
https://bugzilla.redhat.com/show_bug.cgi?id=694403 reports that the specfile is incorrectly checking for a running libvirt-guests service. For example, $ LC_ALL=es_ES chkconfig --list libvirt-guests libvirt-guests 0:desactivado 1:desactivado 2:desactivado 3:activo 4:activo 5:activo 6:desactivado will fail to find 5:on, even though it is active. But chkconfig already has a mode where you can silently use the exit status to check for an active service. * libvirt.spec.in (%post): Use simpler chkconfig options, to avoid issues with localization. --- v3: new patch libvirt.spec.in | 6 ++---- 1 files changed, 2 insertions(+), 4 deletions(-) diff --git a/libvirt.spec.in b/libvirt.spec.in index c2c926d..ecaeee4 100644 --- a/libvirt.spec.in +++ b/libvirt.spec.in @@ -887,8 +887,7 @@ getent passwd qemu>/dev/null || \ # We want to install the default network for initial RPM installs # or on the first upgrade from a non-network aware libvirt only. # We check this by looking to see if the daemon is already installed -/sbin/chkconfig --list libvirtd 1>/dev/null 2>&1 -if test $? != 0&& test ! -f %{_sysconfdir}/libvirt/qemu/networks/default.xml +if ! /sbin/chkconfig&& test ! -f %{_sysconfdir}/libvirt/qemu/networks/default.xml then UUID=`/usr/bin/uuidgen` sed -e "s,</name>,</name>\n<uuid>$UUID</uuid>," \ @@ -1021,8 +1020,7 @@ fi /sbin/chkconfig --add libvirt-guests if [ $1 -ge 1 ]; then level=$(/sbin/runlevel | /bin/cut -d ' ' -f 2) - if /sbin/chkconfig --list libvirt-guests 2>/dev/null \ - | /bin/grep -q $level:on ; then + if /sbin/chkconfig --levels $level libvirt-guests; then # this doesn't do anything but allowing for libvirt-guests to be # stopped on the first shutdown /sbin/service libvirt-guests start> /dev/null 2>&1 || true
ACK. -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list