From 6f89cada2d538f96a66095807dad7cce38307e73 Mon Sep 17 00:00:00 2001 From: Tomas Hozza Date: Tue, 14 Sep 2021 19:54:04 +0200 Subject: [PATCH] generate-all-test-cases: don't use cloud-init to install RPMs Previously cloud-init was used to install necessary packages on the runner. This would not be practical in the future with other types of runners, which would not use cloud-init. Install all necessary RPMs by directly running DNF command on the runner. Signed-off-by: Tomas Hozza --- .../files/run/provision-scripts/deploy.sh | 9 --------- tools/deploy/gen-test-data/user-data.yml | 2 -- tools/test-case-generators/generate-all-test-cases | 12 ++++++++++++ 3 files changed, 12 insertions(+), 11 deletions(-) delete mode 100755 tools/deploy/gen-test-data/files/run/provision-scripts/deploy.sh diff --git a/tools/deploy/gen-test-data/files/run/provision-scripts/deploy.sh b/tools/deploy/gen-test-data/files/run/provision-scripts/deploy.sh deleted file mode 100755 index f27c7810b..000000000 --- a/tools/deploy/gen-test-data/files/run/provision-scripts/deploy.sh +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/bash - -set -euxo pipefail - -dnf -y install osbuild \ - osbuild-selinux \ - osbuild-ostree \ - osbuild-composer \ - golang diff --git a/tools/deploy/gen-test-data/user-data.yml b/tools/deploy/gen-test-data/user-data.yml index 7d4d68eff..5bf631049 100644 --- a/tools/deploy/gen-test-data/user-data.yml +++ b/tools/deploy/gen-test-data/user-data.yml @@ -16,5 +16,3 @@ ssh_pwauth: True chpasswd: expire: False sudo: 'ALL=(ALL) NOPASSWD:ALL' -runcmd: - - /run/provision-scripts/deploy.sh diff --git a/tools/test-case-generators/generate-all-test-cases b/tools/test-case-generators/generate-all-test-cases index cfab97c3a..628d8afe9 100755 --- a/tools/test-case-generators/generate-all-test-cases +++ b/tools/test-case-generators/generate-all-test-cases @@ -622,6 +622,16 @@ class TestCaseMatrixGenerator(contextlib.AbstractContextManager): "s390x": S390xQEMURunner } + # packages to be installed on the Runner before generating test cases + INSTALL_RPMS = [ + "osbuild", + "osbuild-selinux", + "osbuild-ostree", + "osbuild-composer", + "golang", + "python3-pyyaml" # needed by image-info + ] + def __init__(self, images, ci_userdata, arch_gen_matrix, output, keep_image_info): """ 'images' is a dict of qcow2 image paths for each supported architecture, @@ -702,6 +712,8 @@ class TestCaseMatrixGenerator(contextlib.AbstractContextManager): guest_osbuild_store_dir = "/home/admin/osbuild-store" runner.run_command_check_call(f"sudo mkdir {guest_osbuild_store_dir}") + # install necessary packages + runner.run_command_check_call("sudo dnf install -y " + " ".join(TestCaseMatrixGenerator.INSTALL_RPMS)) # Log installed versions of important RPMs rpm_versions, _, _ = runner.run_command("rpm -q osbuild osbuild-composer") log.info("Installed packages: %s", " ".join(rpm_versions.split("\n")))