From 39cfb3096df4a13d87dbf84fec667800aaf38309 Mon Sep 17 00:00:00 2001 From: Gregor Sturm Date: Mon, 29 Jun 2026 08:19:49 +0200 Subject: [PATCH] Clean up redundancies in runner setup --- packer/cirun-runner.pkr.hcl | 4 ---- packer/scripts/install-docker.sh | 7 +++++- packer/scripts/preinstall-tools.sh | 36 +++++++++++++++++++--------- packer/scripts/setup-common-tools.sh | 24 ------------------- packer/scripts/setup-runner.sh | 24 ------------------- 5 files changed, 31 insertions(+), 64 deletions(-) delete mode 100644 packer/scripts/setup-common-tools.sh delete mode 100644 packer/scripts/setup-runner.sh diff --git a/packer/cirun-runner.pkr.hcl b/packer/cirun-runner.pkr.hcl index f607d43..f89f094 100644 --- a/packer/cirun-runner.pkr.hcl +++ b/packer/cirun-runner.pkr.hcl @@ -108,10 +108,6 @@ build { script = "scripts/install-docker.sh" } - provisioner "shell" { - script = "scripts/setup-runner.sh" - } - provisioner "shell" { script = "scripts/install-nvidia-drivers.sh" } diff --git a/packer/scripts/install-docker.sh b/packer/scripts/install-docker.sh index b15b36b..941c46b 100644 --- a/packer/scripts/install-docker.sh +++ b/packer/scripts/install-docker.sh @@ -1,8 +1,13 @@ #!/bin/bash set -e -# Update package index +# Update package index and bring the base image up to date first. +# The Ubuntu 24.04 base AMI ships with older gnupg/libksba8/gpg-agent +# packages; installing gnupg below pulls newer versions that require an +# updated libksba8 (>= 1.6.3), which fails with "unmet dependencies" +# unless the base packages are upgraded beforehand. sudo apt-get update +sudo apt-get upgrade -y # Install packages to allow apt to use a repository over HTTPS sudo apt-get install -y \ diff --git a/packer/scripts/preinstall-tools.sh b/packer/scripts/preinstall-tools.sh index e98d172..c52b004 100644 --- a/packer/scripts/preinstall-tools.sh +++ b/packer/scripts/preinstall-tools.sh @@ -10,22 +10,37 @@ sudo apt-get update sudo useradd -m -s /bin/bash runnerx sudo usermod -aG docker runnerx -# Install essential tools from workflow analysis +# Install AWS CLI v2 +curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip" +unzip awscliv2.zip +sudo ./aws/install +rm -rf awscliv2.zip aws/ + +# Install essential tools for CI runner sudo apt-get install -y \ jq \ hub \ xvfb \ curl \ wget \ - unzip - -# Remove conflicting packages first -sudo apt-get remove -y nodejs npm libnode-dev nodejs-doc || true -sudo apt-get autoremove -y - -# Install Node.js 20 (version specified in workflow) -curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash - -sudo apt-get install -y nodejs + unzip \ + python3-pip \ + python3-venv \ + pipx \ + uv \ + git \ + build-essential \ + nodejs \ + npm \ + gh + +# # Remove conflicting packages first +# sudo apt-get remove -y nodejs npm libnode-dev nodejs-doc || true +# sudo apt-get autoremove -y + +# # Install Node.js 20 (version specified in workflow) +# curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash - +# sudo apt-get install -y nodejs # Install miniconda for runnerx user (matching CI runner environment) sudo -u runnerx wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O /home/runnerx/miniconda.sh @@ -38,7 +53,6 @@ echo 'export PATH="/home/runnerx/miniconda3/bin:$PATH"' | sudo tee -a /home/runn # Install pipx for Python package management sudo apt-get install -y python3-pip python3-venv pipx - # Create necessary directories sudo mkdir -p /opt/runnerx sudo chown ubuntu:ubuntu /opt/runnerx diff --git a/packer/scripts/setup-common-tools.sh b/packer/scripts/setup-common-tools.sh deleted file mode 100644 index f1176b5..0000000 --- a/packer/scripts/setup-common-tools.sh +++ /dev/null @@ -1,24 +0,0 @@ -#!/bin/bash -set -e - -# Install common tools for CI runners -sudo apt-get update -sudo apt-get install -y \ - git \ - curl \ - wget \ - unzip \ - jq \ - build-essential \ - python3 \ - python3-pip \ - nodejs \ - npm - -# Install AWS CLI v2 -curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip" -unzip awscliv2.zip -sudo ./aws/install -rm -rf awscliv2.zip aws/ - -echo "Runner setup completed" diff --git a/packer/scripts/setup-runner.sh b/packer/scripts/setup-runner.sh deleted file mode 100644 index d4c245b..0000000 --- a/packer/scripts/setup-runner.sh +++ /dev/null @@ -1,24 +0,0 @@ -#!/bin/bash -set -e - -# Install common tools for CI runners -sudo apt-get update -sudo apt-get install -y \ - git \ - curl \ - wget \ - unzip \ - jq \ - build-essential \ - python3 \ - python3-pip \ - nodejs \ - npm - -# Install AWS CLI v2 -curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip" -unzip awscliv2.zip -sudo ./aws/install -rm -rf awscliv2.zip aws/ - -echo "Runner setup completed" \ No newline at end of file