Skip to content

Commit

Permalink
Installers for ROCm 5.7, Python 3.12 + Remove DEB and RPM installers (#…
Browse files Browse the repository at this point in the history
…313)

* Dockerfile update

- Python 3.12 support

* Bump version to 1.10.4

* Update docker scripts

- Support Python 3.12
- Set RETRY to 1 if less than 1
- Support ROCm 5.7

* Update scripts/build-release.sh

- Default to python 3.6-3.12 (i.e. add Python 3.12)

* Update cpack workflow

- Packaging for ROCm 5.7
  - Ubuntu 20.04
  - Ubuntu 22.04
  - OpenSUSE 15.4
  - RHEL 8.7
  - RHEL 9.1
- Packaging for older ROCms (by request)
  - RHEL 8.7 + ROCm 5.3
  - OpenSUSE 15.3 + ROCm 5.2
  - OpenSUSE 15.4 + ROCm 5.2
  - OpenSUSE 15.4 + ROCm 5.3
- Remove DEB and RPM installers
  - Only generate STGZ installers

* Update cpack workflow

- disable uploading DEB and RPM artifacts
  • Loading branch information
jrmadsen committed Oct 16, 2023
1 parent 227980f commit 2e581e2
Show file tree
Hide file tree
Showing 12 changed files with 112 additions and 73 deletions.
149 changes: 90 additions & 59 deletions .github/workflows/cpack.yml
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,9 @@ jobs:
- os-distro: "ubuntu"
os-version: "20.04"
rocm-version: "5.6"
- os-distro: "ubuntu"
os-version: "20.04"
rocm-version: "5.7"
# ubuntu 22.04
- os-distro: "ubuntu"
os-version: "22.04"
Expand All @@ -61,10 +64,16 @@ jobs:
- os-distro: "ubuntu"
os-version: "22.04"
rocm-version: "5.6"
- os-distro: "ubuntu"
os-version: "22.04"
rocm-version: "5.7"
# opensuse 15.3
- os-distro: "opensuse"
os-version: "15.3"
rocm-version: "0.0"
- os-distro: "opensuse"
os-version: "15.3"
rocm-version: "5.2"
- os-distro: "opensuse"
os-version: "15.3"
rocm-version: "5.3"
Expand All @@ -78,6 +87,12 @@ jobs:
- os-distro: "opensuse"
os-version: "15.4"
rocm-version: "0.0"
- os-distro: "opensuse"
os-version: "15.4"
rocm-version: "5.2"
- os-distro: "opensuse"
os-version: "15.4"
rocm-version: "5.3"
- os-distro: "opensuse"
os-version: "15.4"
rocm-version: "5.4"
Expand All @@ -87,10 +102,16 @@ jobs:
- os-distro: "opensuse"
os-version: "15.4"
rocm-version: "5.6"
- os-distro: "opensuse"
os-version: "15.4"
rocm-version: "5.7"
# RHEL 8.7
- os-distro: "rhel"
os-version: "8.7"
rocm-version: "0.0"
- os-distro: "rhel"
os-version: "8.7"
rocm-version: "5.3"
- os-distro: "rhel"
os-version: "8.7"
rocm-version: "5.4"
Expand All @@ -100,6 +121,9 @@ jobs:
- os-distro: "rhel"
os-version: "8.7"
rocm-version: "5.6"
- os-distro: "rhel"
os-version: "8.7"
rocm-version: "5.7"
# RHEL 9.1
- os-distro: "rhel"
os-version: "9.1"
Expand All @@ -113,6 +137,9 @@ jobs:
- os-distro: "rhel"
os-version: "9.1"
rocm-version: "5.6"
- os-distro: "rhel"
os-version: "9.1"
rocm-version: "5.7"

steps:
- name: Free Disk Space
Expand All @@ -139,20 +166,24 @@ jobs:
run: |
echo "CI_SCRIPT_ARGS=--rocm +python" >> $GITHUB_ENV
- name: Configure Ubuntu Generators
if: ${{ matrix.os-distro == 'ubuntu' }}
- name: Configure Generators
run: |
echo "CI_GENERATOR_ARGS=--generators STGZ DEB" >> $GITHUB_ENV
echo "CI_GENERATOR_ARGS=--generators STGZ" >> $GITHUB_ENV
- name: Configure OpenSUSE Generators
if: ${{ matrix.os-distro == 'opensuse' }}
run: |
echo "CI_GENERATOR_ARGS=--generators STGZ RPM" >> $GITHUB_ENV
# - name: Configure Ubuntu Generators
# if: ${{ matrix.os-distro == 'ubuntu' }}
# run: |
# echo "CI_GENERATOR_ARGS=--generators STGZ DEB" >> $GITHUB_ENV

- name: Configure RedHat Generators
if: ${{ matrix.os-distro == 'rhel' }}
run: |
echo "CI_GENERATOR_ARGS=--generators STGZ" >> $GITHUB_ENV
# - name: Configure OpenSUSE Generators
# if: ${{ matrix.os-distro == 'opensuse' }}
# run: |
# echo "CI_GENERATOR_ARGS=--generators STGZ RPM" >> $GITHUB_ENV

# - name: Configure RedHat Generators
# if: ${{ matrix.os-distro == 'rhel' }}
# run: |
# echo "CI_GENERATOR_ARGS=--generators STGZ" >> $GITHUB_ENV

- name: Build Base Container
timeout-minutes: 30
Expand Down Expand Up @@ -181,23 +212,23 @@ jobs:
path: |
build-release/stgz/*.sh
- name: DEB Artifacts
timeout-minutes: 10
if: ${{ matrix.os-distro == 'ubuntu' }}
uses: actions/upload-artifact@v3
with:
name: omnitrace-deb-${{ matrix.os-distro }}-${{ matrix.os-version }}-rocm-${{ matrix.rocm-version }}-installer
path: |
build-release/deb/*.deb
# - name: DEB Artifacts
# timeout-minutes: 10
# if: ${{ matrix.os-distro == 'ubuntu' }}
# uses: actions/upload-artifact@v3
# with:
# name: omnitrace-deb-${{ matrix.os-distro }}-${{ matrix.os-version }}-rocm-${{ matrix.rocm-version }}-installer
# path: |
# build-release/deb/*.deb

- name: RPM Artifacts
timeout-minutes: 10
if: ${{ matrix.os-distro == 'opensuse' }}
uses: actions/upload-artifact@v3
with:
name: omnitrace-rpm-${{ matrix.os-distro }}-${{ matrix.os-version }}-rocm-${{ matrix.rocm-version }}-installer
path: |
build-release/rpm/*.rpm
# - name: RPM Artifacts
# timeout-minutes: 10
# if: ${{ matrix.os-distro == 'opensuse' }}
# uses: actions/upload-artifact@v3
# with:
# name: omnitrace-rpm-${{ matrix.os-distro }}-${{ matrix.os-version }}-rocm-${{ matrix.rocm-version }}-installer
# path: |
# build-release/rpm/*.rpm

# before testing remove any artifacts of the build
- name: Remove Build
Expand Down Expand Up @@ -225,38 +256,38 @@ jobs:
files: |
omnitrace-*.sh
- name: Test DEB Install
timeout-minutes: 20
if: ${{ matrix.os-distro == 'ubuntu' }}
run: |
set -v
for i in omnitrace_*.deb
do
./docker/test-docker-release.sh --distro ${{ matrix.os-distro }} --versions ${{ matrix.os-version }} --rocm-versions ${{ matrix.rocm-version }} -- --deb ${i}
done
# - name: Test DEB Install
# timeout-minutes: 20
# if: ${{ matrix.os-distro == 'ubuntu' }}
# run: |
# set -v
# for i in omnitrace_*.deb
# do
# ./docker/test-docker-release.sh --distro ${{ matrix.os-distro }} --versions ${{ matrix.os-version }} --rocm-versions ${{ matrix.rocm-version }} -- --deb ${i}
# done

- name: Upload DEB Release Assets
uses: softprops/action-gh-release@v1
if: matrix.os-distro == 'ubuntu' && startsWith(github.ref, 'refs/tags/') && github.repository == 'AMDResearch/omnitrace'
with:
fail_on_unmatched_files: True
files: |
omnitrace_*.deb
# - name: Upload DEB Release Assets
# uses: softprops/action-gh-release@v1
# if: matrix.os-distro == 'ubuntu' && startsWith(github.ref, 'refs/tags/') && github.repository == 'AMDResearch/omnitrace'
# with:
# fail_on_unmatched_files: True
# files: |
# omnitrace_*.deb

- name: Test RPM Install
timeout-minutes: 20
if: ${{ matrix.os-distro == 'opensuse' }}
run: |
set -v
for i in omnitrace-*.rpm
do
./docker/test-docker-release.sh --distro opensuse --versions ${{ matrix.os-version }} --rocm-versions ${{ matrix.rocm-version }} -- --rpm ${i}
done
# - name: Test RPM Install
# timeout-minutes: 20
# if: ${{ matrix.os-distro == 'opensuse' }}
# run: |
# set -v
# for i in omnitrace-*.rpm
# do
# ./docker/test-docker-release.sh --distro opensuse --versions ${{ matrix.os-version }} --rocm-versions ${{ matrix.rocm-version }} -- --rpm ${i}
# done

- name: Upload RPM Release Assets
uses: softprops/action-gh-release@v1
if: matrix.os-distro == 'opensuse' && startsWith(github.ref, 'refs/tags/') && github.repository == 'AMDResearch/omnitrace'
with:
fail_on_unmatched_files: True
files: |
omnitrace-*.rpm
# - name: Upload RPM Release Assets
# uses: softprops/action-gh-release@v1
# if: matrix.os-distro == 'opensuse' && startsWith(github.ref, 'refs/tags/') && github.repository == 'AMDResearch/omnitrace'
# with:
# fail_on_unmatched_files: True
# files: |
# omnitrace-*.rpm
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
1.10.3
1.10.4
2 changes: 1 addition & 1 deletion docker/Dockerfile.opensuse
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ RUN if [ "${ROCM_VERSION}" != "0.0" ]; then \
zypper clean --all; \
fi

ARG PYTHON_VERSIONS="6 7 8 9 10 11"
ARG PYTHON_VERSIONS="6 7 8 9 10 11 12"

RUN wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh && \
bash miniconda.sh -b -p /opt/conda && \
Expand Down
2 changes: 1 addition & 1 deletion docker/Dockerfile.opensuse.ci
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ RUN cd /tmp/dyninst && \
shopt -s dotglob extglob && \
rm -rf *

ARG PYTHON_VERSIONS="6 7 8 9 10 11"
ARG PYTHON_VERSIONS="6 7 8 9 10 11 12"

RUN wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh && \
bash miniconda.sh -b -p /opt/conda && \
Expand Down
2 changes: 1 addition & 1 deletion docker/Dockerfile.rhel
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ RUN if [ "${ROCM_VERSION}" != "0.0" ]; then \
yum clean all; \
fi

ARG PYTHON_VERSIONS="6 7 8 9 10 11"
ARG PYTHON_VERSIONS="6 7 8 9 10 11 12"

RUN wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh && \
bash miniconda.sh -b -p /opt/conda && \
Expand Down
2 changes: 1 addition & 1 deletion docker/Dockerfile.rhel.ci
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ RUN cd /tmp/dyninst && \
shopt -s dotglob extglob && \
rm -rf *

ARG PYTHON_VERSIONS="6 7 8 9 10 11"
ARG PYTHON_VERSIONS="6 7 8 9 10 11 12"

RUN wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh && \
bash miniconda.sh -b -p /opt/conda && \
Expand Down
2 changes: 1 addition & 1 deletion docker/Dockerfile.ubuntu
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ ARG EXTRA_PACKAGES=""
ARG ROCM_REPO_VERSION="debian"
ARG ROCM_VERSION="0.0"
ARG ROCM_REPO_DIST="ubuntu"
ARG PYTHON_VERSIONS="6 7 8 9 10 11"
ARG PYTHON_VERSIONS="6 7 8 9 10 11 12"
ENV PATH ${HOME}/.local/bin:${PATH}

RUN apt-get update && \
Expand Down
2 changes: 1 addition & 1 deletion docker/Dockerfile.ubuntu.ci
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ ARG EXTRA_PACKAGES=""
ARG ELFUTILS_DOWNLOAD_VERSION="0.186"
ARG BOOST_DOWNLOAD_VERSION="1.79.0"
ARG NJOBS="12"
ARG PYTHON_VERSIONS="6 7 8 9 10 11"
ARG PYTHON_VERSIONS="6 7 8 9 10 11 12"

ENV PATH /usr/local/bin:${PATH}
ENV LIBRARY_PATH /usr/local/lib:/usr/local/lib64:${LIBRARY_PATH}
Expand Down
2 changes: 1 addition & 1 deletion docker/build-docker-ci.sh
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ set -e
: ${NJOBS=$(nproc)}
: ${ELFUTILS_VERSION:=0.186}
: ${BOOST_VERSION:=1.79.0}
: ${PYTHON_VERSIONS:="6 7 8 9 10 11"}
: ${PYTHON_VERSIONS:="6 7 8 9 10 11 12"}
: ${PUSH:=0}
: ${PULL:=--pull}

Expand Down
6 changes: 5 additions & 1 deletion docker/build-docker-release.sh
Original file line number Diff line number Diff line change
Expand Up @@ -101,7 +101,7 @@ reset-last
: ${VERSIONS:=20.04 18.04}
: ${ROCM_VERSIONS:=5.0 4.5 4.3}
: ${MPI:=0}
: ${PYTHON_VERSIONS:="6 7 8 9 10 11"}
: ${PYTHON_VERSIONS:="6 7 8 9 10 11 12"}
: ${RETRY:=3}

n=0
Expand Down Expand Up @@ -157,6 +157,10 @@ done

CODE_VERSION=$(cat VERSION)

if [ "${RETRY}" -lt 1 ]; then
RETRY=1
fi

if [ "${DISTRO}" = "rhel" ]; then
SCRIPT_ARGS="${SCRIPT_ARGS} --static-libstdcxx off"
fi
Expand Down
12 changes: 8 additions & 4 deletions docker/build-docker.sh
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
: ${ROCM_VERSIONS:="5.0"}
: ${DISTRO:=ubuntu}
: ${VERSIONS:=20.04}
: ${PYTHON_VERSIONS:="6 7 8 9 10 11"}
: ${PYTHON_VERSIONS:="6 7 8 9 10 11 12"}
: ${BUILD_CI:=""}
: ${PUSH:=0}
: ${PULL:=--pull}
Expand Down Expand Up @@ -144,6 +144,10 @@ done

DOCKER_FILE="Dockerfile.${DISTRO}"

if [ "${RETRY}" -lt 1 ]; then
RETRY=1
fi

if [ -n "${BUILD_CI}" ]; then DOCKER_FILE="${DOCKER_FILE}.ci"; fi
if [ ! -f ${DOCKER_FILE} ]; then cd docker; fi
if [ ! -f ${DOCKER_FILE} ]; then send-error "File \"${DOCKER_FILE}\" not found"; fi
Expand Down Expand Up @@ -173,7 +177,7 @@ do
4.1* | 4.0*)
ROCM_REPO_DIST="xenial"
;;
5.3* | 5.4* | 5.5* | 5.6*)
5.3 | 5.3.* | 5.4 | 5.4.* | 5.5 | 5.5.* | 5.6 | 5.6.* | 5.7 | 5.7.*)
case "${VERSION}" in
22.04)
ROCM_REPO_DIST="jammy"
Expand Down Expand Up @@ -204,7 +208,7 @@ do

# set the sub-URL in https://repo.radeon.com/amdgpu-install/<sub-URL>
case "${ROCM_VERSION}" in
5.3 | 5.3.* | 5.4 | 5.4.* | 5.5 | 5.5.* | 5.6 | 5.6.*)
5.3 | 5.3.* | 5.4 | 5.4.* | 5.5 | 5.5.* | 5.6 | 5.6.* | 5.7 | 5.7.*)
ROCM_RPM=${ROCM_VERSION}/rhel/${RPM_PATH}/amdgpu-install-${ROCM_MAJOR}.${ROCM_MINOR}.${ROCM_VERSN}-1${RPM_TAG}.noarch.rpm
;;
5.2 | 5.2.* | 5.1 | 5.1.* | 5.0 | 5.0.* | 4.*)
Expand Down Expand Up @@ -232,7 +236,7 @@ do
;;
esac
case "${ROCM_VERSION}" in
5.3 | 5.3.* | 5.4 | 5.4.* | 5.5 | 5.5.* | 5.6 | 5.6.*)
5.3 | 5.3.* | 5.4 | 5.4.* | 5.5 | 5.5.* | 5.6 | 5.6.* | 5.7 | 5.7.*)
ROCM_RPM=${ROCM_VERSION}/sle/${VERSION}/amdgpu-install-${ROCM_MAJOR}.${ROCM_MINOR}.${ROCM_VERSN}-1.noarch.rpm
;;
5.2 | 5.2.*)
Expand Down
2 changes: 1 addition & 1 deletion scripts/build-release.sh
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
: ${MAX_THREADS:=2048}
: ${PERFETTO_TOOLS:="ON"}
: ${HIDDEN_VIZ:="ON"}
: ${PYTHON_VERSIONS:="6 7 8 9 10 11"}
: ${PYTHON_VERSIONS:="6 7 8 9 10 11 12"}
: ${GENERATORS:="STGZ DEB RPM"}
: ${MPI_IMPL:="openmpi"}
: ${CLEAN:=0}
Expand Down

0 comments on commit 2e581e2

Please sign in to comment.