From 6b477445065c72844acbc4b7cdd7d8f62896d1dd Mon Sep 17 00:00:00 2001 From: Lukas Audzevicius Date: Wed, 21 Jan 2026 10:48:00 +0000 Subject: [PATCH 1/7] (CAT-2511) Test docker provisioned SLES 15 Testing SLES 15 through docker. Do not merge. --- Gemfile | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Gemfile b/Gemfile index 4e7de031..999619c1 100644 --- a/Gemfile +++ b/Gemfile @@ -64,8 +64,7 @@ group :development, :release_prep do gem "puppet-blacksmith", '~> 7.0', require: false end group :system_tests do - gem "puppet_litmus", '~> 2.0', require: false, platforms: [:ruby, :x64_mingw] if !ENV['PUPPET_FORGE_TOKEN'].to_s.empty? - gem "puppet_litmus", '~> 1.0', require: false, platforms: [:ruby, :x64_mingw] if ENV['PUPPET_FORGE_TOKEN'].to_s.empty? + gem "puppet_litmus", git: 'https://github.com/puppetlabs/puppet_litmus', branch: 'CAT-2476-Address_SLES_failures', require: false, platforms: [:ruby, :x64_mingw] gem "CFPropertyList", '< 3.0.7', require: false, platforms: [:mswin, :mingw, :x64_mingw] gem "serverspec", '~> 2.41', require: false end From 157f64b6b9d0ba32de436587cab5a84c944cee1b Mon Sep 17 00:00:00 2001 From: Lukas Audzevicius Date: Wed, 21 Jan 2026 13:06:35 +0000 Subject: [PATCH 2/7] test against release --- .github/workflows/ci.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2cdfc30f..a5738adb 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -14,6 +14,4 @@ jobs: Acceptance: needs: Spec uses: "puppetlabs/cat-github-actions/.github/workflows/module_acceptance.yml@main" - with: - flags: "--nightly" secrets: "inherit" From e40d6a34c09462b81e58e975362d64e96768c282 Mon Sep 17 00:00:00 2001 From: Lukas Audzevicius Date: Wed, 21 Jan 2026 13:07:18 +0000 Subject: [PATCH 3/7] test only against sles15 --- .github/workflows/ci.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a5738adb..7894692a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -14,4 +14,6 @@ jobs: Acceptance: needs: Spec uses: "puppetlabs/cat-github-actions/.github/workflows/module_acceptance.yml@main" + with: + flags: "--platforn-include sles-15" secrets: "inherit" From 7d0571554c6d21e6e02dccc649d5c341d260a4c9 Mon Sep 17 00:00:00 2001 From: Lukas Audzevicius Date: Wed, 21 Jan 2026 13:13:56 +0000 Subject: [PATCH 4/7] syntax --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 7894692a..454906c5 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -15,5 +15,5 @@ jobs: needs: Spec uses: "puppetlabs/cat-github-actions/.github/workflows/module_acceptance.yml@main" with: - flags: "--platforn-include sles-15" + flags: "--platform-include sles-15" secrets: "inherit" From 5a41c8f401316cba52a7cd36a3aac15de957c2f5 Mon Sep 17 00:00:00 2001 From: Lukas Audzevicius Date: Wed, 21 Jan 2026 13:21:01 +0000 Subject: [PATCH 5/7] potential fix --- manifests/init.pp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/manifests/init.pp b/manifests/init.pp index 31750303..ea1ba48d 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -111,11 +111,13 @@ } # If the OS is SLES >= 15.3, enable the legacy repo to install net-tools-deprecated package + # Only attempt this if SUSEConnect is available and the system is registered if ($facts['os']['family'] in ['SLES', 'SUSE']) and (versioncmp($facts['os']['release']['full'], '15.3') >= 0) { exec { 'Enable legacy repos': path => '/bin:/usr/bin/:/sbin:/usr/sbin', - command => "SUSEConnect --product sle-module-legacy/${facts['os']['release']['full']}/x86_64", - unless => "SUSEConnect --status-text | grep sle-module-legacy/${facts['os']['release']['full']}/x86_64", + command => "SUSEConnect --product sle-module-legacy/${facts['os']['release']['major']}/x86_64", + onlyif => 'test -x /usr/bin/SUSEConnect', + unless => "SUSEConnect --status-text | grep -q 'Not Registered' || SUSEConnect --status-text | grep -q sle-module-legacy/${facts['os']['release']['major']}/x86_64", } } From 5c2c3a194b2a195d426b97ec5e0312a1fc459800 Mon Sep 17 00:00:00 2001 From: Lukas Audzevicius Date: Wed, 21 Jan 2026 13:29:43 +0000 Subject: [PATCH 6/7] adjustment --- manifests/init.pp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/manifests/init.pp b/manifests/init.pp index ea1ba48d..8851f7c5 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -116,8 +116,7 @@ exec { 'Enable legacy repos': path => '/bin:/usr/bin/:/sbin:/usr/sbin', command => "SUSEConnect --product sle-module-legacy/${facts['os']['release']['major']}/x86_64", - onlyif => 'test -x /usr/bin/SUSEConnect', - unless => "SUSEConnect --status-text | grep -q 'Not Registered' || SUSEConnect --status-text | grep -q sle-module-legacy/${facts['os']['release']['major']}/x86_64", + unless => "test ! -x /usr/bin/SUSEConnect || SUSEConnect --status-text | grep -qE '(Not Registered|sle-module-legacy/${facts['os']['release']['major']}/x86_64)'", } } From 63be4e6bd15896a67eda806e3ce9f72443765a8e Mon Sep 17 00:00:00 2001 From: Lukas Audzevicius Date: Wed, 21 Jan 2026 13:41:06 +0000 Subject: [PATCH 7/7] add puppet mirror with java 8 --- spec/acceptance/install_spec.rb | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/spec/acceptance/install_spec.rb b/spec/acceptance/install_spec.rb index 6e3a1d3f..8f508c16 100644 --- a/spec/acceptance/install_spec.rb +++ b/spec/acceptance/install_spec.rb @@ -211,6 +211,21 @@ MANIFEST describe 'installing' do + before(:all) do + # Configure Puppet Labs internal mirror for SLES (required for java-1_8_0-openjdk packages) + if os[:family] == 'sles' + sles_version = os[:release].split('.').first # Get major version (15 from 15.x) + mirror_manifest = <<-MANIFEST + exec { 'add osmirror repo': + command => "zypper addrepo -G -c -n 'localmirror-os' 'http://osmirror.delivery.puppetlabs.net/sles-#{sles_version}-gm-x86_64/RPMS.os' localmirror-os", + path => ['/usr/bin', '/bin'], + unless => 'zypper lr | grep -q localmirror-os', + } + MANIFEST + apply_manifest(mirror_manifest, catch_failures: true) + end + end + context 'when installing java jre' do it 'installs jre' do idempotent_apply(java_class_jre)