ceilometer: Fix libvirt-bin group name for armband. 61/13561/1
authorAlexandru Avadanii <Alexandru.Avadanii@enea.com>
Mon, 18 Apr 2016 16:51:15 +0000 (18:51 +0200)
committerAlexandru Avadanii <Alexandru.Avadanii@enea.com>
Mon, 2 May 2016 14:32:22 +0000 (14:32 +0000)
Upstream mirrors use a custom version of libvirt, ported from
Debian, while keeping the Ubuntu ceilometer package, leading to a
libvirt group name mismatch between the two.

Fuel-library hardcodes a deb-version test for libvirt-bin, which
enforces the use of "libvirt" instead of "libvirtd" for 1.2.9 or
newer libvirt-bin [1].

Armband brings its own 1.3.2 libvirt-bin package, which respects
Ubuntu standard group naming ("libvirtd"), but since 1.3.2 > 1.2.9,
the old group name ("libvirt") is still used.

This patch extends the version checking introduced in [1]:
 - libvirt-bin 1.3.2 or newer will use "libvirtd" naming;
 - libvirt-bin 1.2.9 ... <1.3.2 will use "libvirt".

[1] https://review.openstack.org/#/c/200602/8/deployment/puppet/
    openstack/manifests/ceilometer.pp

Change-Id: I11861e1863d7971a844c62dc08f22dbbab63b3e1
(cherry picked from commit c3b6de80481baba29fed8eb35259e28e2022bc7c)

patches/fuel-library/0012-ceilometer-Fix-libvirt-bin-group-name-for-armband.patch [new file with mode: 0644]

diff --git a/patches/fuel-library/0012-ceilometer-Fix-libvirt-bin-group-name-for-armband.patch b/patches/fuel-library/0012-ceilometer-Fix-libvirt-bin-group-name-for-armband.patch
new file mode 100644 (file)
index 0000000..b1d4450
--- /dev/null
@@ -0,0 +1,46 @@
+From: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
+Date: Mon, 18 Apr 2016 18:44:27 +0200
+Subject: [PATCH] ceilometer: Fix libvirt-bin group name for armband.
+
+Upstream mirrors use a custom version of libvirt, ported from
+Debian, while keeping the Ubuntu ceilometer package, leading to a
+libvirt group name mismatch between the two.
+
+Fuel-library hardcodes a deb-version test for libvirt-bin, which
+enforces the use of "libvirt" instead of "libvirtd" for 1.2.9 or
+newer libvirt-bin [1].
+
+Armband brings its own 1.3.2 libvirt-bin package, which respects
+Ubuntu standard group naming ("libvirtd"), but since 1.3.2 > 1.2.9,
+the old group name ("libvirt") is still used.
+
+This patch extends the version checking introduced in [1]:
+ - libvirt-bin 1.3.2 or newer will use "libvirtd" naming;
+ - libvirt-bin 1.2.9 ... <1.3.2 will use "libvirt".
+
+[1] https://review.openstack.org/#/c/200602/8/deployment/puppet/
+    openstack/manifests/ceilometer.pp
+---
+ deployment/puppet/openstack/manifests/ceilometer.pp | 8 +++++++-
+ 1 file changed, 7 insertions(+), 1 deletion(-)
+
+diff --git a/deployment/puppet/openstack/manifests/ceilometer.pp b/deployment/puppet/openstack/manifests/ceilometer.pp
+index 8311731..1d7af2b 100644
+--- a/deployment/puppet/openstack/manifests/ceilometer.pp
++++ b/deployment/puppet/openstack/manifests/ceilometer.pp
+@@ -195,8 +195,14 @@ class openstack::ceilometer (
+
+   if ($on_compute) {
+     if $::operatingsystem == 'Ubuntu' and $::ceilometer::params::libvirt_group {
++      # Armband libvirt-bin deb package (1.3.2 version) creates 'libvirtd' group on Ubuntu
++      if (versioncmp($::libvirt_package_version, '1.3.2') >= 0) {
++        User<| name == 'ceilometer' |> {
++          groups => ['nova', 'libvirtd'],
++        }
++      }
+       # Our libvirt-bin deb package (1.2.9 version) creates 'libvirt' group on Ubuntu
+-      if (versioncmp($::libvirt_package_version, '1.2.9') >= 0) {
++      elsif (versioncmp($::libvirt_package_version, '1.2.9') >= 0) {
+         User<| name == 'ceilometer' |> {
+           groups => ['nova', 'libvirt'],
+         }