diff --git a/tools/install-tester/config/jobs.yaml b/tools/install-tester/config/jobs.yaml index 4834c3cc9644..9d9a477e03a4 100644 --- a/tools/install-tester/config/jobs.yaml +++ b/tools/install-tester/config/jobs.yaml @@ -6,16 +6,16 @@ - amazon-linux - ubuntu - debian - - rhel + - rhel:9 skip: - 3.2.x/debian/enterprise/package - 3.2.x/debian/enterprise/repository - 3.3.x/debian/enterprise/package - 3.3.x/debian/enterprise/repository - - 3.2.x/rhel/enterprise/package - - 3.2.x/rhel/enterprise/repository - - 3.3.x/rhel/enterprise/package - - 3.3.x/rhel/enterprise/repository + - 3.2.x/rhel:9/enterprise/package + - 3.2.x/rhel:9/enterprise/repository + - 3.3.x/rhel:9/enterprise/package + - 3.3.x/rhel:9/enterprise/repository arch: - linux/arm64 outputs: @@ -29,7 +29,7 @@ distros: - amazon-linux - ubuntu - - rhel + - rhel:7 - debian arch: - linux/amd64 @@ -43,7 +43,7 @@ - enterprise distros: - ubuntu - - rhel + - rhel:7 - amazon-linux - debian - centos diff --git a/tools/install-tester/config/setup.yaml b/tools/install-tester/config/setup.yaml index 8775ca5475e4..592574fb4128 100644 --- a/tools/install-tester/config/setup.yaml +++ b/tools/install-tester/config/setup.yaml @@ -14,7 +14,13 @@ debian: - useradd tester -m -p password - usermod -aG sudo tester - "echo 'ALL ALL = (ALL) NOPASSWD: ALL' > /etc/sudoers.d/tester" -rhel: +"rhel:7": + image: "registry.access.redhat.com/ubi7/ubi-init:latest" + setup: + - yum install -y curl gpg sudo + - useradd tester -m -p password + - "echo 'ALL ALL = (ALL) NOPASSWD: ALL' > /etc/sudoers.d/tester" +"rhel:9": image: "registry.access.redhat.com/ubi9/ubi-init:latest" setup: - yum install -y gpg sudo diff --git a/tools/install-tester/index.js b/tools/install-tester/index.js index 3a61f05288ed..80b1316f11b6 100644 --- a/tools/install-tester/index.js +++ b/tools/install-tester/index.js @@ -47,12 +47,13 @@ const expectedFailures = yaml.load( const config = loadConfig(); for (let job of config) { for (let distro of job.distros) { + const osOnly = distro.split(":")[0]; for (let arch of job.arch) { let installOptions; if (job.version.slice(0, 2) === "2.") { - installOptions = await extractV2(job.version, distro); + installOptions = await extractV2(job.version, osOnly); } else { - installOptions = await extractV3(job.version, distro); + installOptions = await extractV3(job.version, osOnly); } for (let installOption of installOptions) { await runSingleJob(distro, job, arch, installOption, conditions); @@ -72,6 +73,7 @@ async function runSingleJob2(distro, job, arch, installOption, conditions) { } async function runSingleJob(distro, job, arch, installOption, conditions) { + const osOnly = distro.split(":")[0]; const marker = `${installOption.package}@${job.version} via ${installOption.type}`; const ref = `${job.version}/${distro}/${ installOption.package @@ -132,7 +134,6 @@ async function runSingleJob(distro, job, arch, installOption, conditions) { ); if (expected !== version) { - // Check if the package exists on download.konghq.com // Only supports RHEL at the moment let existsOnOldSite = "❓"; @@ -147,7 +148,10 @@ async function runSingleJob(distro, job, arch, installOption, conditions) { if (distro === "rhel") { // 2.x packages are noarch for enterprise on RHEL - if (installOption.package == "enterprise" && expectedVersion[0] == "2") { + if ( + installOption.package == "enterprise" && + expectedVersion[0] == "2" + ) { packageArch = "noarch"; } url = `https://download.konghq.com/gateway-${expectedVersion[0]}.x-rhel-7/Packages/k/${packageName}-${expectedVersion}.rhel7.${packageArch}.rpm`; @@ -203,7 +207,8 @@ function shouldSkip( } not in [${conditions.version.join(", ")}]`; } - if (conditions.distro.length && !conditions.distro.includes(distro)) { + const osOnly = distro.split(":")[0]; + if (conditions.distro.length && !conditions.distro.includes(distro) && !conditions.distro.includes(osOnly)) { return `⌛ ${summary} skipped | Distro ${distro} not in [${conditions.distro.join( ", ", )}]`;