fuel-library: pp: cobbler: Fix CentOS ver detect 83/25983/2
authorAlexandru Avadanii <Alexandru.Avadanii@enea.com>
Wed, 14 Dec 2016 16:25:35 +0000 (17:25 +0100)
committerAlexandru Avadanii <Alexandru.Avadanii@enea.com>
Wed, 14 Dec 2016 16:54:12 +0000 (17:54 +0100)
Upstream fuel-library bug report: [1].

Recently, CentOS released version 7.3.1611, which triggered a latent
bug in fuel-library puppet scripts related to differentiating between
6.x and 7.x major versions: 7.3.1611 is wrongly detected as 6.x,
leading to the wrong packages being attempted to be installed,
leaving nailgun server service broken on the Fuel Master node.

This change forces the match at the beggining of the version string
(e.g. "/^6.+/: {" instead of "/6.+/: {"), so the new CentOS 7.3.1611
no longer matches the condition for 6.x).

This patch will soon be obsoleted by the Netwon switch.
However, until that happens, we need to ensure CentOS 7.3 is not
breaking the deploy.

[1] https://bugs.launchpad.net/fuel/+bug/1649895

JIRA: FUEL-238

Change-Id: Iebda7e13d66191614c3552dacb6c80091215baf5
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
patches/fuel-library/0004-puppet-cobbler-Fix-CentOS-version-detection.patch [new file with mode: 0644]
patches/fuel-library/multiarch-efi/0002-Add-cobbler-grub-aarch64-to-cobbler-dependencies.patch

diff --git a/patches/fuel-library/0004-puppet-cobbler-Fix-CentOS-version-detection.patch b/patches/fuel-library/0004-puppet-cobbler-Fix-CentOS-version-detection.patch
new file mode 100644 (file)
index 0000000..1ada615
--- /dev/null
@@ -0,0 +1,39 @@
+From: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
+Date: Wed, 14 Dec 2016 15:40:41 +0100
+Subject: [PATCH] puppet: cobbler: Fix CentOS version detection
+
+Recently, CentOS released version 7.3.1611, which triggered a latent
+bug in fuel-library puppet scripts related to differentiating between
+6.x and 7.x major versions: 7.3.1611 is wrongly detected as 6.x,
+leading to the wrong packages being attempted to be installed,
+leaving nailgun server service broken on the Fuel Master node.
+
+This change forces the match at the beggining of the version string
+(e.g. "/^6.+/: {" instead of "/6.+/: {"), so the new CentOS 7.3.1611
+no longer matches the condition for 6.x).
+
+Closes-bug: 1649895
+
+Change-Id: I8873701d24e406e2804b9e654decb776ec3bf61c
+Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
+---
+ deployment/puppet/cobbler/manifests/packages.pp | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/deployment/puppet/cobbler/manifests/packages.pp b/deployment/puppet/cobbler/manifests/packages.pp
+index 267c18c..3c14ea1 100644
+--- a/deployment/puppet/cobbler/manifests/packages.pp
++++ b/deployment/puppet/cobbler/manifests/packages.pp
+@@ -24,10 +24,10 @@ class cobbler::packages {
+       $openssh_package     = 'openssh-clients'
+       $pexpect_package     = 'pexpect'
+       case $::operatingsystemrelease {
+-        /6.+/: {
++        /^6.+/: {
+           $cobbler_additional_packages = ['xinetd', 'tftp-server', 'syslinux', 'wget', 'python-ipaddr','fence-agents', 'bind-utils']
+         }
+-        /7.+/: {
++        /^7.+/: {
+           $cobbler_additional_packages = ['xinetd', 'tftp-server', 'syslinux', 'wget', 'python-ipaddr','fence-agents-all', 'bind-utils']
+         }
+       }
index 14d06ef..8314663 100644 (file)
@@ -23,11 +23,11 @@ index 267c18c..9782c4c 100644
 @@ -25,10 +25,10 @@ class cobbler::packages {
        $pexpect_package     = 'pexpect'
        case $::operatingsystemrelease {
-         /6.+/: {
+         /^6.+/: {
 -          $cobbler_additional_packages = ['xinetd', 'tftp-server', 'syslinux', 'wget', 'python-ipaddr','fence-agents', 'bind-utils']
 +          $cobbler_additional_packages = ['xinetd', 'tftp-server', 'syslinux', 'wget', 'python-ipaddr','fence-agents', 'bind-utils', 'cobbler-grub-aarch64']
          }
-         /7.+/: {
+         /^7.+/: {
 -          $cobbler_additional_packages = ['xinetd', 'tftp-server', 'syslinux', 'wget', 'python-ipaddr','fence-agents-all', 'bind-utils']
 +          $cobbler_additional_packages = ['xinetd', 'tftp-server', 'syslinux', 'wget', 'python-ipaddr','fence-agents-all', 'bind-utils', 'cobbler-grub-aarch64']
          }