From e51a4a5bbeb148c173cf23bed8742aeef4a6719e Mon Sep 17 00:00:00 2001 From: zhipengl Date: Fri, 7 Sep 2018 01:06:10 +0800 Subject: [PATCH] CentOS 7.5 upgrade for puppet-haproxy package This change can fix the issue during package upgrade that causes config_controller failed at step 6. Root cause is that package update introduced a warning output in frontend.pp file which will cause puppet-manifest-apply failure as it do not allow any warning existed in puppet log. Story: 2003389 Task: 24504 Depends-On: https://review.openstack.org/#/c/600359/ Change-Id: Iabfa73e80859feeccbc1e6c81032169f94812013 Signed-off-by: zhipengl --- ...te-package-versioning-for-TIS-format.patch | 12 +- .../meta_patches/0002-Add-TIS-patch.patch | 6 +- ...-disable-config-validation-prechecks.patch | 4 +- .../0004-Add-global_options-patch.patch | 4 +- .../0005-Stop-invalid-warning-message.patch | 33 +++++ .../centos/meta_patches/PATCH_ORDER | 2 + .../patches/0001-Roll-up-TIS-patches.patch | 24 ++-- ...-disable-config-validation-prechecks.patch | 113 ++++++++++++++++-- ...Fix-global_options-log-default-value.patch | 7 +- .../patches/0004-Stop-invalid-warning-message | 31 +++++ .../puppet-haproxy-1.5.0/centos/srpm_path | 2 +- 11 files changed, 198 insertions(+), 40 deletions(-) create mode 100644 config/puppet-modules/puppet-haproxy-1.5.0/centos/meta_patches/0005-Stop-invalid-warning-message.patch create mode 100644 config/puppet-modules/puppet-haproxy-1.5.0/centos/patches/0004-Stop-invalid-warning-message diff --git a/config/puppet-modules/puppet-haproxy-1.5.0/centos/meta_patches/0001-Update-package-versioning-for-TIS-format.patch b/config/puppet-modules/puppet-haproxy-1.5.0/centos/meta_patches/0001-Update-package-versioning-for-TIS-format.patch index bf72c73f5..a3ce7e230 100644 --- a/config/puppet-modules/puppet-haproxy-1.5.0/centos/meta_patches/0001-Update-package-versioning-for-TIS-format.patch +++ b/config/puppet-modules/puppet-haproxy-1.5.0/centos/meta_patches/0001-Update-package-versioning-for-TIS-format.patch @@ -3,25 +3,23 @@ From: Scott Little Date: Mon, 20 Mar 2017 11:10:38 -0400 Subject: [PATCH 1/2] WRS: 0001-Update-package-versioning-for-TIS-format.patch -Conflicts: - SPECS/puppet-haproxy.spec --- SPECS/puppet-haproxy.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/SPECS/puppet-haproxy.spec b/SPECS/puppet-haproxy.spec -index 6944e73..a975f60 100644 +index 7d4b215..afb20d5 100644 --- a/SPECS/puppet-haproxy.spec +++ b/SPECS/puppet-haproxy.spec @@ -8,7 +8,7 @@ Name: puppet-haproxy Version: 1.5.0 --Release: 2%{?alphatag}%{?dist} -+Release: 2.6ee8180git.el7%{?_tis_dist}.%{tis_patch_ver} +-Release: 4%{?alphatag}%{?dist} ++Release: 4.6ffcb07git.el7%{?_tis_dist}.%{tis_patch_ver} Summary: Configures HAProxy servers and manages the configuration of backend member servers. - License: Apache-2.0 + License: ASL 2.0 -- -1.8.3.1 +2.7.4 diff --git a/config/puppet-modules/puppet-haproxy-1.5.0/centos/meta_patches/0002-Add-TIS-patch.patch b/config/puppet-modules/puppet-haproxy-1.5.0/centos/meta_patches/0002-Add-TIS-patch.patch index 98a8119ed..736d7c05f 100644 --- a/config/puppet-modules/puppet-haproxy-1.5.0/centos/meta_patches/0002-Add-TIS-patch.patch +++ b/config/puppet-modules/puppet-haproxy-1.5.0/centos/meta_patches/0002-Add-TIS-patch.patch @@ -8,10 +8,10 @@ Subject: [PATCH 2/2] WRS: 0002-Add-TIS-patch.patch 1 file changed, 2 insertions(+) diff --git a/SPECS/puppet-haproxy.spec b/SPECS/puppet-haproxy.spec -index a975f60..a843f00 100644 +index afb20d5..f58bd74 100644 --- a/SPECS/puppet-haproxy.spec +++ b/SPECS/puppet-haproxy.spec -@@ -15,6 +15,7 @@ License: Apache-2.0 +@@ -15,6 +15,7 @@ License: ASL 2.0 URL: https://github.com/puppetlabs/puppetlabs-haproxy Source0: https://github.com/puppetlabs/%{upstream_name}/archive/%{commit}.tar.gz#/%{upstream_name}-%{shortcommit}.tar.gz @@ -28,5 +28,5 @@ index a975f60..a843f00 100644 find . -type f -name ".*" -exec rm {} + find . -size 0 -exec rm {} + -- -1.8.3.1 +2.7.4 diff --git a/config/puppet-modules/puppet-haproxy-1.5.0/centos/meta_patches/0003-disable-config-validation-prechecks.patch b/config/puppet-modules/puppet-haproxy-1.5.0/centos/meta_patches/0003-disable-config-validation-prechecks.patch index 45843fcd7..581a5b987 100644 --- a/config/puppet-modules/puppet-haproxy-1.5.0/centos/meta_patches/0003-disable-config-validation-prechecks.patch +++ b/config/puppet-modules/puppet-haproxy-1.5.0/centos/meta_patches/0003-disable-config-validation-prechecks.patch @@ -8,7 +8,7 @@ Subject: [PATCH] 0003-disable-config-validation-prechecks 1 file changed, 2 insertions(+) diff --git a/SPECS/puppet-haproxy.spec b/SPECS/puppet-haproxy.spec -index a843f00..a0a9be1 100644 +index f58bd74..106ae3e 100644 --- a/SPECS/puppet-haproxy.spec +++ b/SPECS/puppet-haproxy.spec @@ -16,6 +16,7 @@ URL: https://github.com/puppetlabs/puppetlabs-haproxy @@ -28,5 +28,5 @@ index a843f00..a0a9be1 100644 find . -type f -name ".*" -exec rm {} + find . -size 0 -exec rm {} + -- -1.8.3.1 +2.7.4 diff --git a/config/puppet-modules/puppet-haproxy-1.5.0/centos/meta_patches/0004-Add-global_options-patch.patch b/config/puppet-modules/puppet-haproxy-1.5.0/centos/meta_patches/0004-Add-global_options-patch.patch index 003253db9..d8da9fb18 100644 --- a/config/puppet-modules/puppet-haproxy-1.5.0/centos/meta_patches/0004-Add-global_options-patch.patch +++ b/config/puppet-modules/puppet-haproxy-1.5.0/centos/meta_patches/0004-Add-global_options-patch.patch @@ -8,7 +8,7 @@ Subject: [PATCH] Add global_options patch 1 file changed, 2 insertions(+) diff --git a/SPECS/puppet-haproxy.spec b/SPECS/puppet-haproxy.spec -index a0a9be1..a446384 100644 +index 106ae3e..fb11c75 100644 --- a/SPECS/puppet-haproxy.spec +++ b/SPECS/puppet-haproxy.spec @@ -17,6 +17,7 @@ URL: https://github.com/puppetlabs/puppetlabs-haproxy @@ -28,5 +28,5 @@ index a0a9be1..a446384 100644 find . -type f -name ".*" -exec rm {} + find . -size 0 -exec rm {} + -- -1.8.3.1 +2.7.4 diff --git a/config/puppet-modules/puppet-haproxy-1.5.0/centos/meta_patches/0005-Stop-invalid-warning-message.patch b/config/puppet-modules/puppet-haproxy-1.5.0/centos/meta_patches/0005-Stop-invalid-warning-message.patch new file mode 100644 index 000000000..912015d3b --- /dev/null +++ b/config/puppet-modules/puppet-haproxy-1.5.0/centos/meta_patches/0005-Stop-invalid-warning-message.patch @@ -0,0 +1,33 @@ +From da48355594342a9f9cb9afd2936aeef0651f008e Mon Sep 17 00:00:00 2001 +From: zhipengl +Date: Fri, 7 Sep 2018 19:02:21 +0800 +Subject: [PATCH] 0005-Stop-invalid-warning-message + +Signed-off-by: zhipengl +--- + SPECS/puppet-haproxy.spec | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/SPECS/puppet-haproxy.spec b/SPECS/puppet-haproxy.spec +index fb11c75..1b671aa 100644 +--- a/SPECS/puppet-haproxy.spec ++++ b/SPECS/puppet-haproxy.spec +@@ -18,6 +18,7 @@ Source0: https://github.com/puppetlabs/%{upstream_name}/archive/%{commit} + Patch0001: 0001-Roll-up-TIS-patches.patch + Patch0002: 0002-disable-config-validation-prechecks.patch + Patch0003: 0003-Fix-global_options-log-default-value.patch ++Patch0004: 0004-Stop-invalid-warning-message + + BuildArch: noarch + +@@ -33,6 +34,7 @@ Configures HAProxy servers and manages the configuration of backend member serve + %patch0001 -p1 + %patch0002 -p1 + %patch0003 -p1 ++%patch0004 -p1 + + find . -type f -name ".*" -exec rm {} + + find . -size 0 -exec rm {} + +-- +2.7.4 + diff --git a/config/puppet-modules/puppet-haproxy-1.5.0/centos/meta_patches/PATCH_ORDER b/config/puppet-modules/puppet-haproxy-1.5.0/centos/meta_patches/PATCH_ORDER index 893476741..84b9ea0d9 100644 --- a/config/puppet-modules/puppet-haproxy-1.5.0/centos/meta_patches/PATCH_ORDER +++ b/config/puppet-modules/puppet-haproxy-1.5.0/centos/meta_patches/PATCH_ORDER @@ -2,3 +2,5 @@ 0002-Add-TIS-patch.patch 0003-disable-config-validation-prechecks.patch 0004-Add-global_options-patch.patch +0005-Stop-invalid-warning-message.patch + diff --git a/config/puppet-modules/puppet-haproxy-1.5.0/centos/patches/0001-Roll-up-TIS-patches.patch b/config/puppet-modules/puppet-haproxy-1.5.0/centos/patches/0001-Roll-up-TIS-patches.patch index e2a87934d..15b3575d6 100644 --- a/config/puppet-modules/puppet-haproxy-1.5.0/centos/patches/0001-Roll-up-TIS-patches.patch +++ b/config/puppet-modules/puppet-haproxy-1.5.0/centos/patches/0001-Roll-up-TIS-patches.patch @@ -9,10 +9,10 @@ Subject: [PATCH] Roll up TIS patches 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/manifests/config.pp b/manifests/config.pp -index 781b6fa..785740d 100644 +index 51c2741..4007bb8 100644 --- a/manifests/config.pp +++ b/manifests/config.pp -@@ -68,8 +68,8 @@ define haproxy::config ( +@@ -75,8 +75,8 @@ define haproxy::config ( if $_global_options['chroot'] { file { $_global_options['chroot']: ensure => directory, @@ -24,20 +24,20 @@ index 781b6fa..785740d 100644 } } diff --git a/manifests/init.pp b/manifests/init.pp -index e2d3d92..b0369f7 100644 +index f1109d0..54a1640 100644 --- a/manifests/init.pp +++ b/manifests/init.pp -@@ -101,8 +101,8 @@ +@@ -110,8 +110,8 @@ class haproxy ( - $package_ensure = 'present', - $package_name = $haproxy::params::package_name, -- $service_ensure = 'running', -- $service_manage = true, + $package_ensure = 'present', + $package_name = $haproxy::params::package_name, +- $service_ensure = 'running', +- $service_manage = true, + $service_ensure = false, + $service_manage = false, - $service_options = $haproxy::params::service_options, - $sysconfig_options = $haproxy::params::sysconfig_options, - $global_options = $haproxy::params::global_options, + $service_options = $haproxy::params::service_options, + $sysconfig_options = $haproxy::params::sysconfig_options, + $global_options = $haproxy::params::global_options, -- -1.8.3.1 +2.7.4 diff --git a/config/puppet-modules/puppet-haproxy-1.5.0/centos/patches/0002-disable-config-validation-prechecks.patch b/config/puppet-modules/puppet-haproxy-1.5.0/centos/patches/0002-disable-config-validation-prechecks.patch index 0f99586c3..43c306749 100644 --- a/config/puppet-modules/puppet-haproxy-1.5.0/centos/patches/0002-disable-config-validation-prechecks.patch +++ b/config/puppet-modules/puppet-haproxy-1.5.0/centos/patches/0002-disable-config-validation-prechecks.patch @@ -1,4 +1,4 @@ -From 73b4a43227e36aa32103e7d8a69bcb35678f7e6c Mon Sep 17 00:00:00 2001 +From 50ef964cc4f918982d2889610c5f6e7506741518 Mon Sep 17 00:00:00 2001 From: Kam Nasim Date: Fri, 26 May 2017 17:04:32 -0400 Subject: [PATCH] disable configuration validation during haproxy manifest @@ -10,21 +10,114 @@ Subject: [PATCH] disable configuration validation during haproxy manifest sane bits) on a validation failure --- - manifests/config.pp | 1 - - 1 file changed, 1 deletion(-) + manifests/config.pp | 8 -------- + manifests/init.pp | 7 ------- + manifests/instance.pp | 7 ------- + manifests/params.pp | 1 - + 4 files changed, 23 deletions(-) diff --git a/manifests/config.pp b/manifests/config.pp -index 785740d..4d084fa 100644 +index 4007bb8..b8d4ef4 100644 --- a/manifests/config.pp +++ b/manifests/config.pp -@@ -47,7 +47,6 @@ define haproxy::config ( - owner => '0', - group => '0', - mode => '0644', -- validate_cmd => '/usr/sbin/haproxy -f % -c', +@@ -8,7 +8,6 @@ define haproxy::config ( + $config_dir = undef, # A default is required for Puppet 2.7 compatibility. When 2.7 is no longer supported, this parameter default should be removed. + $custom_fragment = undef, # A default is required for Puppet 2.7 compatibility. When 2.7 is no longer supported, this parameter default should be removed. + $merge_options = $haproxy::merge_options, +- $config_validate_cmd = $haproxy::config_validate_cmd + ) { + + if $caller_module_name != $module_name { +@@ -50,13 +49,6 @@ define haproxy::config ( + mode => '0640', } +- # validate_cmd introduced in Puppet 3.5 +- if ((!defined('$::puppetversion') or (versioncmp($::puppetversion, '3.5') >= 0)) and (!defined('$::serverversion') or versioncmp($::serverversion, '3.5') >= 0)) { +- Concat[$_config_file] { +- validate_cmd => $config_validate_cmd, +- } +- } +- # Simple Header + concat::fragment { "${instance_name}-00-header": + target => $_config_file, +diff --git a/manifests/init.pp b/manifests/init.pp +index 54a1640..d84755e 100644 +--- a/manifests/init.pp ++++ b/manifests/init.pp +@@ -72,11 +72,6 @@ + # Optional. Path to the haproxy config file. + # Default depends on platform. + # +-# [*config_validate_cmd*] +-# Optional. Command used by concat validate_cmd to validate new +-# config file concat is a valid haproxy config. +-# Default /usr/sbin/haproxy -f % -c +-# + # === Examples + # + # class { 'haproxy': +@@ -122,7 +117,6 @@ class haproxy ( + $config_dir = $haproxy::params::config_dir, + $config_file = $haproxy::params::config_file, + $manage_config_dir = $haproxy::params::manage_config_dir, +- $config_validate_cmd = $haproxy::params::config_validate_cmd, + + # Deprecated + $manage_service = undef, +@@ -183,7 +177,6 @@ class haproxy ( + merge_options => $merge_options, + service_options => $service_options, + sysconfig_options => $sysconfig_options, +- config_validate_cmd => $config_validate_cmd, + } + + } +diff --git a/manifests/instance.pp b/manifests/instance.pp +index 3dffdae..7f37751 100644 +--- a/manifests/instance.pp ++++ b/manifests/instance.pp +@@ -63,11 +63,6 @@ + # The parent directory will be created automatically. + # Defaults to undef. + # +-# [*config_validate_cmd*] +-# Command used by concat validate_cmd to validate new +-# config file concat is a valid haproxy config. +-# Default /usr/sbin/haproxy -f % -c +-# + # === Examples + # + # A single instance of haproxy with all defaults +@@ -153,7 +148,6 @@ define haproxy::instance ( + $merge_options = $haproxy::params::merge_options, + $service_options = $haproxy::params::service_options, + $sysconfig_options = $haproxy::params::sysconfig_options, +- $config_validate_cmd = $haproxy::params::config_validate_cmd, + ) { + + if $service_ensure != true and $service_ensure != false { +@@ -208,7 +202,6 @@ define haproxy::instance ( + custom_fragment => $custom_fragment, + merge_options => $merge_options, + package_ensure => $package_ensure, +- config_validate_cmd => $config_validate_cmd, + } + haproxy::install { $title: + package_name => $package_name, +diff --git a/manifests/params.pp b/manifests/params.pp +index d7b9fa9..21e6bb0 100644 +--- a/manifests/params.pp ++++ b/manifests/params.pp +@@ -10,7 +10,6 @@ class haproxy::params { + + $service_options = "ENABLED=1\n" # Only used by Debian. + $sysconfig_options = 'OPTIONS=""' #Only used by Redhat/CentOS etc +- $config_validate_cmd = '/usr/sbin/haproxy -f % -c' + + case $::osfamily { + 'Archlinux', 'Debian', 'Redhat', 'Gentoo', 'Suse' : { -- -1.8.3.1 +2.7.4 diff --git a/config/puppet-modules/puppet-haproxy-1.5.0/centos/patches/0003-Fix-global_options-log-default-value.patch b/config/puppet-modules/puppet-haproxy-1.5.0/centos/patches/0003-Fix-global_options-log-default-value.patch index 44a6ec0cd..79d1e82ab 100644 --- a/config/puppet-modules/puppet-haproxy-1.5.0/centos/patches/0003-Fix-global_options-log-default-value.patch +++ b/config/puppet-modules/puppet-haproxy-1.5.0/centos/patches/0003-Fix-global_options-log-default-value.patch @@ -1,8 +1,9 @@ -From 872a041122b1e443e23a16e5816c3d8aa18714f8 Mon Sep 17 00:00:00 2001 +From 16163f14c8f9b1b81b6e394c31c72030938435c7 Mon Sep 17 00:00:00 2001 From: Don Penney -Date: Sun, 24 Sep 2017 00:14:25 -0400 +Date: Tue, 4 Sep 2018 20:01:53 +0800 Subject: [PATCH] Fix global_options log default value +Signed-off-by: zhipengl --- manifests/params.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) @@ -21,5 +22,5 @@ index 21e6bb0..b29e427 100644 'pidfile' => '/var/run/haproxy.pid', 'maxconn' => '4000', -- -1.8.3.1 +2.7.4 diff --git a/config/puppet-modules/puppet-haproxy-1.5.0/centos/patches/0004-Stop-invalid-warning-message b/config/puppet-modules/puppet-haproxy-1.5.0/centos/patches/0004-Stop-invalid-warning-message new file mode 100644 index 000000000..44c9b5220 --- /dev/null +++ b/config/puppet-modules/puppet-haproxy-1.5.0/centos/patches/0004-Stop-invalid-warning-message @@ -0,0 +1,31 @@ +From 7e1cff1503d9980e6fa346ec0e9cb93dc69774bf Mon Sep 17 00:00:00 2001 +From: zhipengl +Date: Fri, 7 Sep 2018 19:24:01 +0800 +Subject: [PATCH] Stop-invalid-warning-message.patch + +It can fix config_controller failure at step 6. + +The upstream fix is at below link +https://github.com/puppetlabs/puppetlabs-haproxy/commit/20db4474c5938c21ac441f0092254c78b5978cc4 + +Signed-off-by: zhipengl +--- + manifests/frontend.pp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/manifests/frontend.pp b/manifests/frontend.pp +index 1623115..709a08c 100644 +--- a/manifests/frontend.pp ++++ b/manifests/frontend.pp +@@ -102,7 +102,7 @@ define haproxy::frontend ( + $defaults_use_backend = true, + $config_file = undef, + # Deprecated +- $bind_options = undef, ++ $bind_options = '', + ) { + if $ports and $bind { + fail('The use of $ports and $bind is mutually exclusive, please choose either one') +-- +2.7.4 + diff --git a/config/puppet-modules/puppet-haproxy-1.5.0/centos/srpm_path b/config/puppet-modules/puppet-haproxy-1.5.0/centos/srpm_path index c4e216add..d270e8e79 100644 --- a/config/puppet-modules/puppet-haproxy-1.5.0/centos/srpm_path +++ b/config/puppet-modules/puppet-haproxy-1.5.0/centos/srpm_path @@ -1 +1 @@ -mirror:Source/puppet-haproxy-1.5.0-2.6ee8180git.el7.src.rpm +mirror:Source/puppet-haproxy-1.5.0-4.6ffcb07git.el7.src.rpm