[rocprofiler-systems] Add retries to RHEL install steps (#1384)

* Add GHCR retry logic

* Add retries to Install ROCm Packages step in rocprofiler-systems-redhat.yml

* Update containers-ci.yml file to use latest RHEL9/10 releases

* Use build-docker-ci script in rocprofiler-systems-containers

* Remove working-directory from step in rocprofiler-systems-redhat.yml

* Remove shell bash from Install ROCm Packages step

* Revert RHEL version change in rocprofiler-systems-redhat.yml
This commit is contained in:
Jason Bonnell
2025-10-17 10:20:54 -04:00
committed by GitHub
parent b9b8b6110b
commit 9664f1dc91
4 changed files with 78 additions and 53 deletions
@@ -69,40 +69,45 @@ jobs:
with:
username: ${{ secrets.ROCPROF_SYS_DOCKER_LOGIN }}
password: ${{ secrets.ROCPROF_SYS_DOCKER_TOKEN }}
- name: Set up Docker variables
id: setup_vars
run: |
if [ ${{ matrix.distro }} = "opensuse" ]; then
DISTRO_IMAGE="opensuse/leap"
elif [ ${{ matrix.distro }} = "rhel" ]; then
DISTRO_IMAGE="rockylinux/rockylinux"
else
DISTRO_IMAGE=${{ matrix.distro }}
fi
echo "distro_image=${DISTRO_IMAGE}" >> $GITHUB_OUTPUT
if [ ${{ matrix.distro }} = "debian" ]; then
DOCKER_FILE=Dockerfile.ubuntu.ci
else
DOCKER_FILE=Dockerfile.${{ matrix.distro }}.ci
fi
echo "docker_file=${DOCKER_FILE}" >> $GITHUB_OUTPUT
- name: Build CI Base Container (Does not Push on PR)
uses: docker/build-push-action@v6
- name: Build CI Container (PR - No Push)
if: github.event_name == 'pull_request'
timeout-minutes: 45
uses: nick-fields/retry@v3
with:
file: projects/rocprofiler-systems/docker/${{ steps.setup_vars.outputs.docker_file }}
platforms: linux/amd64
push: ${{ github.event_name != 'pull_request' }}
build-args: |
DISTRO=${{ steps.setup_vars.outputs.distro_image }}
VERSION=${{ matrix.version }}
NJOBS=2
ELFUTILS_DOWNLOAD_VERSION=0.188
BOOST_DOWNLOAD_VERSION=1.79.0
tags: |
${{ secrets.ROCPROF_SYS_DOCKER_LOGIN }}/rocprofiler-systems:ci-base-${{ matrix.distro }}-${{ matrix.version }}
retry_wait_seconds: 60
timeout_minutes: 45
max_attempts: 3
command: |
pushd projects/rocprofiler-systems/docker
./build-docker-ci.sh \
--distro ${{ matrix.distro }} \
--versions ${{ matrix.version }} \
--user ${{ secrets.ROCPROF_SYS_DOCKER_LOGIN }} \
--jobs 2 \
--elfutils-version 0.188 \
--boost-version 1.79.0
popd
- name: Build Base Container (Push)
if: github.event_name != 'pull_request'
timeout-minutes: 45
uses: nick-fields/retry@v3
with:
retry_wait_seconds: 60
timeout_minutes: 45
max_attempts: 3
command: |
pushd projects/rocprofiler-systems/docker
./build-docker-ci.sh \
--distro ${{ matrix.distro }} \
--versions ${{ matrix.version }} \
--user ${{ secrets.ROCPROF_SYS_DOCKER_LOGIN }} \
--jobs 2 \
--elfutils-version 0.188 \
--boost-version 1.79.0 \
--push
popd
prepare_matrix_release:
if: github.repository == 'ROCm/rocm-systems'