diff --git a/internal/buildscripts/packaging/tests/deployments/puppet/images/rpm/Dockerfile.opensuse-15 b/internal/buildscripts/packaging/tests/deployments/puppet/images/rpm/Dockerfile.opensuse-15 index a18426a590..a30d22289d 100644 --- a/internal/buildscripts/packaging/tests/deployments/puppet/images/rpm/Dockerfile.opensuse-15 +++ b/internal/buildscripts/packaging/tests/deployments/puppet/images/rpm/Dockerfile.opensuse-15 @@ -12,7 +12,7 @@ RUN rpm --import https://yum.puppet.com/RPM-GPG-KEY-puppet-20250406 ARG PUPPET_RELEASE="6" RUN rpm -Uvh https://yum.puppet.com/puppet${PUPPET_RELEASE}-release-sles-15.noarch.rpm && \ zypper --gpg-auto-import-keys -n refresh && \ - zypper install -y puppet-agent + zypper install -y puppet-agent procps RUN wget -O /tmp/nodejs.tar.gz https://nodejs.org/dist/v16.20.2/node-v16.20.2-linux-x64.tar.gz && \ mkdir -p /opt/ && \ diff --git a/internal/buildscripts/packaging/tests/deployments/salt/images/rpm/Dockerfile.opensuse-15 b/internal/buildscripts/packaging/tests/deployments/salt/images/rpm/Dockerfile.opensuse-15 index 452fc94a35..6bbbb0869b 100644 --- a/internal/buildscripts/packaging/tests/deployments/salt/images/rpm/Dockerfile.opensuse-15 +++ b/internal/buildscripts/packaging/tests/deployments/salt/images/rpm/Dockerfile.opensuse-15 @@ -5,7 +5,7 @@ ENV container docker RUN sed -i 's|download.opensuse.org|provo-mirror.opensuse.org|' /etc/zypp/repos.d/*.repo RUN zypper -n install -l curl dbus-1 systemd-sysvinit tar wget python3-pip ca-certificates gzip -RUN zypper install -y salt salt-minion salt-master +RUN zypper install -y salt salt-minion salt-master procps RUN wget -O /tmp/nodejs.tar.gz https://nodejs.org/dist/v16.20.2/node-v16.20.2-linux-x64.tar.gz && \ mkdir -p /opt/ && \ diff --git a/internal/buildscripts/packaging/tests/helpers/util.py b/internal/buildscripts/packaging/tests/helpers/util.py index 1ca5e6c254..f57566e520 100644 --- a/internal/buildscripts/packaging/tests/helpers/util.py +++ b/internal/buildscripts/packaging/tests/helpers/util.py @@ -19,6 +19,7 @@ from contextlib import contextmanager from io import BytesIO from pathlib import Path +from typing import Optional, Tuple import docker @@ -121,7 +122,7 @@ def run_distro_container(distro, arch="amd64", dockerfile=None, path=TESTS_DIR, container.remove(force=True, v=True) -def run_container_cmd(container, cmd, env=None, exit_code=0, timeout=None, user='', workdir=None): +def run_container_cmd(container, cmd, env=None, exit_code:Optional[int]=0, timeout=None, user='', workdir=None) -> Tuple[int, bytes]: if timeout: cmd = f"timeout {timeout} {cmd}" print(f"Running '{cmd}' ...") @@ -181,7 +182,8 @@ def ensure_always(test, timeout=DEFAULT_TIMEOUT, interval=1): def service_is_running(container, service_name=SERVICE_NAME, service_owner=SERVICE_OWNER, process=OTELCOL_BIN): - cmd = f"sh -ec 'systemctl status {service_name} && pgrep -a -u {service_owner} -f {process}'" + # For some reason, opensuse-15 and sometimes rocky-8 don't set the path correctly? + cmd = f"""sh -ec 'systemctl status {service_name} && PATH="$PATH:/bin/" pgrep -a -u {service_owner} -f {process}'""" code, _ = run_container_cmd(container, cmd, exit_code=None) return code == 0 diff --git a/internal/buildscripts/packaging/tests/images/rpm/Dockerfile.opensuse-15 b/internal/buildscripts/packaging/tests/images/rpm/Dockerfile.opensuse-15 index cdeaa32fda..b0ae43b987 100644 --- a/internal/buildscripts/packaging/tests/images/rpm/Dockerfile.opensuse-15 +++ b/internal/buildscripts/packaging/tests/images/rpm/Dockerfile.opensuse-15 @@ -2,10 +2,13 @@ # `-d --privileged -v /sys/fs/cgroup:/sys/fs/cgroup:ro` flags FROM opensuse/leap:15 -ENV container docker +ENV container=docker RUN sed -i 's|download.opensuse.org|provo-mirror.opensuse.org|' /etc/zypp/repos.d/*.repo RUN zypper -n install -l curl dbus-1 systemd-sysvinit tar wget +RUN zypper install -y procps +RUN pgrep --help +RUN echo "PATH=$PATH:/bin" >> /etc/profile RUN (cd /usr/lib/systemd/system/sysinit.target.wants/; for i in *; do [ $i = \ "systemd-tmpfiles-setup.service" ] || rm -f $i; done); \ diff --git a/internal/buildscripts/packaging/tests/instrumentation/images/rpm/Dockerfile.opensuse-15 b/internal/buildscripts/packaging/tests/instrumentation/images/rpm/Dockerfile.opensuse-15 index 121c00baf5..22742d5167 100644 --- a/internal/buildscripts/packaging/tests/instrumentation/images/rpm/Dockerfile.opensuse-15 +++ b/internal/buildscripts/packaging/tests/instrumentation/images/rpm/Dockerfile.opensuse-15 @@ -30,7 +30,7 @@ RUN bash /opt/setup-express.sh COPY instrumentation/setup-dotnet.sh /opt RUN if [ "$TARGETARCH" = "amd64" ]; then \ - zypper -n install libicu && \ + zypper -n install libicu procps && \ bash /opt/setup-dotnet.sh; \ fi