From dd35c891856a58e8895c724919bcf84a09f998b6 Mon Sep 17 00:00:00 2001 From: Josh Cooper Date: Mon, 10 Jul 2023 09:38:32 -0700 Subject: [PATCH 1/4] (PA-5651) Skip msgfmt l10n on AIX 7.2 We disabled i18n by default some time ago, so skip building `puppet.mo` localization files on AIX. When i18n is diabled, fast_gettext will resolve strings using the defaults. --- configs/components/puppet.rb | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/configs/components/puppet.rb b/configs/components/puppet.rb index fbd46f6e07..a3345972f2 100644 --- a/configs/components/puppet.rb +++ b/configs/components/puppet.rb @@ -10,10 +10,7 @@ pkg.build_requires "gettext" elsif platform.is_windows? pkg.build_requires "pl-gettext-#{platform.architecture}" - elsif platform.is_aix? - pkg.build_requires "http://pl-build-tools.delivery.puppetlabs.net/aix/#{platform.os_version}/ppc/pl-gcc-5.2.0-11.aix#{platform.os_version}.ppc.rpm" - pkg.build_requires "http://pl-build-tools.delivery.puppetlabs.net/aix/#{platform.os_version}/ppc/pl-gettext-0.19.8-2.aix#{platform.os_version}.ppc.rpm" - elsif platform.is_solaris? + elsif platform.is_solaris? || platform.is_aix? # do nothing else #rubocop:disable Lint/DuplicateBranch pkg.build_requires "gettext" @@ -90,14 +87,12 @@ pkg.install_configfile 'puppet-agent.conf', File.join(settings[:tmpfilesdir], 'puppet-agent.conf') end - # We do not currently support i18n on Solaris - unless platform.is_solaris? + # We do not currently support i18n on Solaris or AIX + unless platform.is_solaris? || platform.is_aix? if platform.is_windows? msgfmt = "/cygdrive/c/tools/pl-build-tools/bin/msgfmt.exe" elsif platform.is_macos? msgfmt = "/usr/local/opt/gettext/bin/msgfmt" - elsif platform.is_aix? - msgfmt = "/opt/pl-build-tools/bin/msgfmt" else msgfmt = "msgfmt" end From 3c5287312b49f746f1d6a4a98e5f8df5787da636 Mon Sep 17 00:00:00 2001 From: Josh Cooper Date: Thu, 13 Jul 2023 15:31:26 -0700 Subject: [PATCH 2/4] (PA-5651) Build and ship AIX 7.2 Delete AIX 7.1 platform definition and add 7.2 --- configs/platforms/{aix-7.1-ppc.rb => aix-7.2-ppc.rb} | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) rename configs/platforms/{aix-7.1-ppc.rb => aix-7.2-ppc.rb} (83%) diff --git a/configs/platforms/aix-7.1-ppc.rb b/configs/platforms/aix-7.2-ppc.rb similarity index 83% rename from configs/platforms/aix-7.1-ppc.rb rename to configs/platforms/aix-7.2-ppc.rb index 72308dbbd6..e80c1bf104 100644 --- a/configs/platforms/aix-7.1-ppc.rb +++ b/configs/platforms/aix-7.2-ppc.rb @@ -1,4 +1,4 @@ -platform "aix-7.1-ppc" do |plat| +platform "aix-7.2-ppc" do |plat| plat.servicetype "aix" plat.make "gmake" @@ -9,6 +9,9 @@ # Basic vanagon operations require mktemp, rsync, coreutils, make, tar and sed so leave this in there plat.provision_with "rpm -Uvh --replacepkgs http://osmirror.delivery.puppetlabs.net/AIX_MIRROR/mktemp-1.7-1.aix5.1.ppc.rpm http://osmirror.delivery.puppetlabs.net/AIX_MIRROR/rsync-3.0.6-1.aix5.3.ppc.rpm http://osmirror.delivery.puppetlabs.net/AIX_MIRROR/coreutils-5.2.1-2.aix5.1.ppc.rpm http://osmirror.delivery.puppetlabs.net/AIX_MIRROR/sed-4.1.1-1.aix5.1.ppc.rpm http://osmirror.delivery.puppetlabs.net/AIX_MIRROR/make-3.80-1.aix5.1.ppc.rpm http://osmirror.delivery.puppetlabs.net/AIX_MIRROR/tar-1.22-1.aix6.1.ppc.rpm" + # lots of things expect mktemp to be installed in the usual place, so link it + plat.provision_with "ln -sf /opt/freeware/bin/mktemp /usr/bin/mktemp" + # We use --force with rpm because the pl-gettext and pl-autoconf # packages conflict with a charset.alias file. # @@ -16,5 +19,5 @@ # for pl-autoconf) we'll need to force the installation # Sean P. McD. plat.install_build_dependencies_with "rpm -Uvh --replacepkgs --force " - plat.vmpooler_template "aix-7.1-power" + plat.vmpooler_template "aix-7.2-power" end From a09d687347d86a20a196134f5c6534d978a21663 Mon Sep 17 00:00:00 2001 From: Josh Cooper Date: Thu, 13 Jul 2023 15:36:14 -0700 Subject: [PATCH 3/4] (PA-5651) Skip validate vendored ruby for now Installing a native gem doesn't work yet, filed as PA-5654 --- acceptance/tests/validate_vendored_ruby.rb | 1 + 1 file changed, 1 insertion(+) diff --git a/acceptance/tests/validate_vendored_ruby.rb b/acceptance/tests/validate_vendored_ruby.rb index b9075d515e..9bf54a7979 100644 --- a/acceptance/tests/validate_vendored_ruby.rb +++ b/acceptance/tests/validate_vendored_ruby.rb @@ -3,6 +3,7 @@ extend Puppet::Acceptance::CommandUtils confine :except, :platform => 'sles-12-ppc64le' +confine :except, :platform => 'aix-7.2-power' # PA-5654 def package_installer(agent) # for some reason, beaker does not have a configured package installer From 4bc74f9de018edb52c4609ad8e7cf9813ef065c2 Mon Sep 17 00:00:00 2001 From: Josh Cooper Date: Wed, 12 Jul 2023 20:36:26 -0700 Subject: [PATCH 4/4] (maint) Pin to head of resource_api Pin to the head of resource_api which includes the commit to no longer require git to be installed, which is needed for AIX. See puppetlabs/puppet-resource_api@fdd92fd --- configs/components/puppet-resource_api.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configs/components/puppet-resource_api.json b/configs/components/puppet-resource_api.json index 0cbef0331a..a7df94d752 100644 --- a/configs/components/puppet-resource_api.json +++ b/configs/components/puppet-resource_api.json @@ -1 +1 @@ -{"url":"git@github.com:puppetlabs/puppet-resource_api.git","ref":"refs/tags/1.8.16"} +{"url":"git@github.com:puppetlabs/puppet-resource_api.git","ref":"aa3f867d905d70673d17badaef190a0f47e66f2d"}