From 953fd60e9be29df05b1658f5944e82543d8dfe2a Mon Sep 17 00:00:00 2001
From: Jason Bonnell <166553723+jbonnell-amd@users.noreply.github.com>
Date: Tue, 30 Sep 2025 15:15:12 -0400
Subject: [PATCH] rocprofiler GHCR Rename (#1112)
- Rename the GHCR packages for rocprofiler Docker images to reduce the number of packages that will be released on the repository
- Changed package name to only include the OS instead of OS+Version - version moved to the tag instead.
- Updated Dockerfile.*.ci files to specify target ROCm version from tarball in name.
---
.../workflows/rocprofiler-systems-ghcr.yml | 6 +++---
README.md | 2 +-
.../docker/Dockerfile.opensuse.ci | 19 ++++++++++++-------
.../docker/Dockerfile.rhel.ci | 19 ++++++++++++-------
.../docker/Dockerfile.ubuntu.ci | 19 ++++++++++++-------
5 files changed, 40 insertions(+), 25 deletions(-)
diff --git a/.github/workflows/rocprofiler-systems-ghcr.yml b/.github/workflows/rocprofiler-systems-ghcr.yml
index e7b739e59d..d1053ec87e 100644
--- a/.github/workflows/rocprofiler-systems-ghcr.yml
+++ b/.github/workflows/rocprofiler-systems-ghcr.yml
@@ -1,4 +1,4 @@
-name: Publish GHCR Packages for rocprofiler-systems CI Images
+name: rocprofiler-systems GHCR Packages for CI Images
on:
workflow_dispatch:
@@ -100,7 +100,7 @@ jobs:
id: meta
uses: docker/metadata-action@c1e51972afc2121e065aed6d45c65596fe445f3f # v5.7.9
with:
- images: ghcr.io/ROCm/rocprofiler-${{ matrix.system.distro }}-${{ matrix.system.version }}
+ images: ghcr.io/ROCm/rocprofiler-${{ matrix.system.distro }}
- name: Build CI GFX Container (Does not Push on PR)
uses: docker/build-push-action@263435318d21b8e681c14492fe198d362a7d2c83 # v6.18.0
@@ -118,5 +118,5 @@ jobs:
ELFUTILS_DOWNLOAD_VERSION=0.188
BOOST_DOWNLOAD_VERSION=1.79.0
tags: |
- ghcr.io/rocm/rocprofiler-${{ matrix.system.distro }}-${{ matrix.system.version }}:systems-ci-${{ matrix.gpu }}
+ ghcr.io/rocm/rocprofiler-${{ matrix.system.distro }}:${{ matrix.system.version }}-systems-ci-${{ matrix.gpu }}
labels: ${{ steps.meta.outputs.labels }}
diff --git a/README.md b/README.md
index 55c0ad1b3a..d98e4868c2 100644
--- a/README.md
+++ b/README.md
@@ -27,7 +27,7 @@ This table provides the current status of the migration of specific ROCm systems
| `rocprofiler-compute` | Public | Completed | | [](https://github.com/ROCm/rocm-systems/actions/workflows/rocprofiler-compute-formatting.yml)
[](https://github.com/ROCm/rocm-systems/actions/workflows/rocprofiler-compute-rhel-8.yml)
[](https://github.com/ROCm/rocm-systems/actions/workflows/rocprofiler-compute-tarball.yml)
[](https://github.com/ROCm/rocm-systems/actions/workflows/rocprofiler-compute-ubuntu-jammy.yml) |
| `rocprofiler-register` | Public | Completed | [](https://dev.azure.com/ROCm-CI/ROCm-CI/_build/latest?definitionId=327&repoName=ROCm%2Frocm-systems&branchName=develop) | [](https://github.com/ROCm/rocm-systems/actions/workflows/rocprofiler-register-continuous-integration.yml) |
| `rocprofiler-sdk` | Public | Completed | | [](https://github.com/ROCm/rocm-systems/actions/workflows/rocprofiler-sdk-code_coverage.yml)
[](https://github.com/ROCm/rocm-systems/actions/workflows/rocprofiler-sdk-codeql.yml)
[](https://github.com/ROCm/rocm-systems/actions/workflows/rocprofiler-sdk-continuous_integration.yml)
[](https://github.com/ROCm/rocm-systems/actions/workflows/rocprofiler-sdk-docs.yml)
[](https://github.com/ROCm/rocm-systems/actions/workflows/rocprofiler-sdk-formatting.yml)
[](https://github.com/ROCm/rocm-systems/actions/workflows/rocprofiler-sdk-python.yml)
[](https://github.com/ROCm/rocm-systems/actions/workflows/rocprofiler-sdk-restrictions.yml)
[](https://github.com/ROCm/rocm-systems/actions/workflows/rocprofiler-sdk-rocm_release_compatibility.yml) |
-| `rocprofiler-systems` | Public | Completed | | [](https://github.com/ROCm/rocm-systems/actions/workflows/rocprofiler-systems-containers.yml)
[](https://github.com/ROCm/rocm-systems/actions/workflows/rocprofiler-systems-cpack.yml)
[](https://github.com/ROCm/rocm-systems/actions/workflows/rocprofiler-systems-formatting.yml)
[](https://github.com/ROCm/rocm-systems/actions/workflows/rocprofiler-systems-opensuse.yml)
[](https://github.com/ROCm/rocm-systems/actions/workflows/rocprofiler-systems-python.yml)
[](https://github.com/ROCm/rocm-systems/actions/workflows/rocprofiler-systems-redhat.yml)
[](https://github.com/ROCm/rocm-systems/actions/workflows/rocprofiler-systems-ubuntu-jammy.yml)
[](https://github.com/ROCm/rocm-systems/actions/workflows/rocprofiler-systems-ubuntu-noble.yml) |
+| `rocprofiler-systems` | Public | Completed | | [](https://github.com/ROCm/rocm-systems/actions/workflows/rocprofiler-systems-containers.yml)
[](https://github.com/ROCm/rocm-systems/actions/workflows/rocprofiler-systems-ghcr.yml)
[](https://github.com/ROCm/rocm-systems/actions/workflows/rocprofiler-systems-cpack.yml)
[](https://github.com/ROCm/rocm-systems/actions/workflows/rocprofiler-systems-formatting.yml)
[](https://github.com/ROCm/rocm-systems/actions/workflows/rocprofiler-systems-opensuse.yml)
[](https://github.com/ROCm/rocm-systems/actions/workflows/rocprofiler-systems-python.yml)
[](https://github.com/ROCm/rocm-systems/actions/workflows/rocprofiler-systems-redhat.yml)
[](https://github.com/ROCm/rocm-systems/actions/workflows/rocprofiler-systems-ubuntu-jammy.yml)
[](https://github.com/ROCm/rocm-systems/actions/workflows/rocprofiler-systems-ubuntu-noble.yml) |
| `rocr-runtime` | Public | Completed | | |
| `roctracer` | Public | Completed | | |
diff --git a/projects/rocprofiler-systems/docker/Dockerfile.opensuse.ci b/projects/rocprofiler-systems/docker/Dockerfile.opensuse.ci
index d976e2ce51..afbf295e6d 100644
--- a/projects/rocprofiler-systems/docker/Dockerfile.opensuse.ci
+++ b/projects/rocprofiler-systems/docker/Dockerfile.opensuse.ci
@@ -2,15 +2,15 @@ ARG DISTRO=opensuse/leap
ARG VERSION=15.5
FROM ${DISTRO}:${VERSION}
-ENV HOME /root
-ENV SHELL /bin/bash
-ENV BASH_ENV /etc/bash.bashrc
-ENV DEBIAN_FRONTEND noninteractive
+ENV HOME=/root
+ENV SHELL=/bin/bash
+ENV BASH_ENV=/etc/bash.bashrc
+ENV DEBIAN_FRONTEND=noninteractive
WORKDIR /tmp
SHELL [ "/bin/bash", "-c" ]
-ENV PATH /usr/local/bin:${PATH}
+ENV PATH=/usr/local/bin:${PATH}
ARG EXTRA_PACKAGES=""
ARG ELFUTILS_DOWNLOAD_VERSION="0.188"
@@ -51,9 +51,14 @@ RUN wget https://github.com/conda-forge/miniforge/releases/latest/download/Minif
ARG GPU_TYPE=""
ARG GPU_TARBALL=""
RUN if [ -n "$GPU_TYPE" ] && [ -n "$GPU_TARBALL" ]; then \
+ VERSION=$(echo "$GPU_TARBALL" | sed -nE 's/.*([0-9]\.[0-9]\.[0-9]).*/\1/p'); \
+ if [ -z "$VERSION" ]; then \
+ echo "Error: Could not extract version from GPU_TARBALL ('$GPU_TARBALL')." >&2; \
+ exit 1; \
+ fi; \
python3 -m pip install -U awscli; \
- aws s3 cp "s3://therock-nightly-tarball/${GPU_TARBALL}" rocm-${GPU_TYPE}.tar.gz --no-sign-request; \
- mv rocm-${GPU_TYPE}.tar.gz /opt/rocm-${GPU_TYPE}.tar.gz; \
+ aws s3 cp "s3://therock-nightly-tarball/${GPU_TARBALL}" rocm-${VERSION}-${GPU_TYPE}.tar.gz --no-sign-request; \
+ mv rocm-${VERSION}-${GPU_TYPE}.tar.gz /opt/rocm-${VERSION}-${GPU_TYPE}.tar.gz; \
fi
WORKDIR /home
diff --git a/projects/rocprofiler-systems/docker/Dockerfile.rhel.ci b/projects/rocprofiler-systems/docker/Dockerfile.rhel.ci
index 859e20f4b1..1fd3566ab5 100644
--- a/projects/rocprofiler-systems/docker/Dockerfile.rhel.ci
+++ b/projects/rocprofiler-systems/docker/Dockerfile.rhel.ci
@@ -2,15 +2,15 @@ ARG DISTRO=rockylinux/rockylinux
ARG VERSION=8
FROM ${DISTRO}:${VERSION}
-ENV HOME /root
-ENV SHELL /bin/bash
-ENV BASH_ENV /etc/bash.bashrc
-ENV DEBIAN_FRONTEND noninteractive
+ENV HOME=/root
+ENV SHELL=/bin/bash
+ENV BASH_ENV=/etc/bash.bashrc
+ENV DEBIAN_FRONTEND=noninteractive
WORKDIR /tmp
SHELL [ "/bin/bash", "-c" ]
-ENV PATH /usr/lib64/openmpi/bin:/usr/local/bin:${PATH}
+ENV PATH=/usr/lib64/openmpi/bin:/usr/local/bin:${PATH}
ARG EXTRA_PACKAGES=""
ARG ELFUTILS_DOWNLOAD_VERSION="0.188"
@@ -42,9 +42,14 @@ RUN wget https://github.com/conda-forge/miniforge/releases/latest/download/Minif
ARG GPU_TYPE=""
ARG GPU_TARBALL=""
RUN if [ -n "$GPU_TYPE" ] && [ -n "$GPU_TARBALL" ]; then \
+ VERSION=$(echo "$GPU_TARBALL" | sed -nE 's/.*([0-9]\.[0-9]\.[0-9]).*/\1/p'); \
+ if [ -z "$VERSION" ]; then \
+ echo "Error: Could not extract version from GPU_TARBALL ('$GPU_TARBALL')." >&2; \
+ exit 1; \
+ fi; \
python3 -m pip install -U awscli; \
- aws s3 cp "s3://therock-nightly-tarball/${GPU_TARBALL}" rocm-${GPU_TYPE}.tar.gz --no-sign-request; \
- mv rocm-${GPU_TYPE}.tar.gz /opt/rocm-${GPU_TYPE}.tar.gz; \
+ aws s3 cp "s3://therock-nightly-tarball/${GPU_TARBALL}" rocm-${VERSION}-${GPU_TYPE}.tar.gz --no-sign-request; \
+ mv rocm-${VERSION}-${GPU_TYPE}.tar.gz /opt/rocm-${VERSION}-${GPU_TYPE}.tar.gz; \
fi
WORKDIR /home
diff --git a/projects/rocprofiler-systems/docker/Dockerfile.ubuntu.ci b/projects/rocprofiler-systems/docker/Dockerfile.ubuntu.ci
index 8f95bd3544..33f062ca5b 100644
--- a/projects/rocprofiler-systems/docker/Dockerfile.ubuntu.ci
+++ b/projects/rocprofiler-systems/docker/Dockerfile.ubuntu.ci
@@ -1,5 +1,5 @@
-ARG DISTRO
-ARG VERSION
+ARG DISTRO=ubuntu
+ARG VERSION=22.04
FROM ${DISTRO}:${VERSION}
ENV HOME=/root
@@ -17,9 +17,9 @@ ARG BOOST_DOWNLOAD_VERSION="1.79.0"
ARG NJOBS="8"
ENV PATH="/usr/local/bin:${PATH}"
-ENV LIBRARY_PATH="/usr/local/lib:/usr/local/lib64:${LIBRARY_PATH}"
-ENV LD_LIBRARY_PATH="/usr/local/lib:/usr/local/lib64:${LD_LIBRARY_PATH}"
-ENV CMAKE_PREFIX_PATH="/usr/local:${CMAKE_PREFIX_PATH}"
+ENV LIBRARY_PATH="/usr/local/lib:/usr/local/lib64"
+ENV LD_LIBRARY_PATH="/usr/local/lib:/usr/local/lib64"
+ENV CMAKE_PREFIX_PATH="/usr/local"
RUN apt-get update && \
apt-get dist-upgrade -y && \
@@ -55,10 +55,15 @@ RUN wget https://github.com/conda-forge/miniforge/releases/latest/download/Minif
ARG GPU_TYPE=""
ARG GPU_TARBALL=""
RUN if [ -n "$GPU_TYPE" ] && [ -n "$GPU_TARBALL" ]; then \
+ VERSION=$(echo "$GPU_TARBALL" | sed -nE 's/.*([0-9]\.[0-9]\.[0-9]).*/\1/p'); \
+ if [ -z "$VERSION" ]; then \
+ echo "Error: Could not extract version from GPU_TARBALL ('$GPU_TARBALL')." >&2; \
+ exit 1; \
+ fi; \
pip install --upgrade pip; \
pip install awscli --break-system-packages; \
- aws s3 cp "s3://therock-nightly-tarball/${GPU_TARBALL}" rocm-${GPU_TYPE}.tar.gz --no-sign-request; \
- mv rocm-${GPU_TYPE}.tar.gz /opt/rocm-${GPU_TYPE}.tar.gz; \
+ aws s3 cp "s3://therock-nightly-tarball/${GPU_TARBALL}" rocm-${VERSION}-${GPU_TYPE}.tar.gz --no-sign-request; \
+ mv rocm-${VERSION}-${GPU_TYPE}.tar.gz /opt/rocm-${VERSION}-${GPU_TYPE}.tar.gz; \
fi
ENV LC_ALL=C.UTF-8