cpack #292
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Installer Packaging (CPack) | |
run-name: cpack | |
on: | |
workflow_dispatch: | |
push: | |
branches: [main, amd-mainline, release/**] | |
tags: | |
- "v[1-9].[0-9]+.[0-9]+*" | |
- "rocm-[1-9].[0-9]+.[0-9]+*" | |
paths-ignore: | |
- '*.md' | |
- 'docs/**' | |
- 'source/docs/**' | |
pull_request: | |
branches: [main, amd-mainline] | |
paths: | |
- '.github/workflows/cpack.yml' | |
- 'docker/**' | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
env: | |
GIT_DISCOVERY_ACROSS_FILESYSTEM: 1 | |
jobs: | |
installers: | |
if: github.repository == 'ROCm/omnitrace' | |
runs-on: ubuntu-20.04 | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
# ubuntu 20.04 | |
- os-distro: "ubuntu" | |
os-version: "20.04" | |
rocm-version: "0.0" | |
- os-distro: "ubuntu" | |
os-version: "20.04" | |
rocm-version: "5.4" | |
- os-distro: "ubuntu" | |
os-version: "20.04" | |
rocm-version: "5.5" | |
- os-distro: "ubuntu" | |
os-version: "20.04" | |
rocm-version: "5.6" | |
- os-distro: "ubuntu" | |
os-version: "20.04" | |
rocm-version: "5.7" | |
- os-distro: "ubuntu" | |
os-version: "20.04" | |
rocm-version: "6.0" | |
- os-distro: "ubuntu" | |
os-version: "20.04" | |
rocm-version: "6.1" | |
- os-distro: "ubuntu" | |
os-version: "20.04" | |
rocm-version: "6.2" | |
# ubuntu 22.04 | |
- os-distro: "ubuntu" | |
os-version: "22.04" | |
rocm-version: "0.0" | |
- os-distro: "ubuntu" | |
os-version: "22.04" | |
rocm-version: "5.4" | |
- os-distro: "ubuntu" | |
os-version: "22.04" | |
rocm-version: "5.5" | |
- os-distro: "ubuntu" | |
os-version: "22.04" | |
rocm-version: "5.6" | |
- os-distro: "ubuntu" | |
os-version: "22.04" | |
rocm-version: "5.7" | |
- os-distro: "ubuntu" | |
os-version: "22.04" | |
rocm-version: "6.0" | |
- os-distro: "ubuntu" | |
os-version: "22.04" | |
rocm-version: "6.1" | |
- os-distro: "ubuntu" | |
os-version: "22.04" | |
rocm-version: "6.2" | |
# 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" | |
- os-distro: "opensuse" | |
os-version: "15.3" | |
rocm-version: "5.4" | |
- os-distro: "opensuse" | |
os-version: "15.3" | |
rocm-version: "5.5" | |
# opensuse 15.4 | |
- 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" | |
- os-distro: "opensuse" | |
os-version: "15.4" | |
rocm-version: "5.5" | |
- os-distro: "opensuse" | |
os-version: "15.4" | |
rocm-version: "5.6" | |
- os-distro: "opensuse" | |
os-version: "15.4" | |
rocm-version: "5.7" | |
- os-distro: "opensuse" | |
os-version: "15.4" | |
rocm-version: "6.0" | |
- os-distro: "opensuse" | |
os-version: "15.4" | |
rocm-version: "6.1" | |
# opensuse 15.5 | |
- os-distro: "opensuse" | |
os-version: "15.5" | |
rocm-version: "0.0" | |
- os-distro: "opensuse" | |
os-version: "15.5" | |
rocm-version: "5.6" | |
- os-distro: "opensuse" | |
os-version: "15.5" | |
rocm-version: "5.7" | |
- os-distro: "opensuse" | |
os-version: "15.5" | |
rocm-version: "6.0" | |
- os-distro: "opensuse" | |
os-version: "15.5" | |
rocm-version: "6.1" | |
- os-distro: "opensuse" | |
os-version: "15.5" | |
rocm-version: "6.2" | |
# 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" | |
- os-distro: "rhel" | |
os-version: "8.7" | |
rocm-version: "5.5" | |
- os-distro: "rhel" | |
os-version: "8.7" | |
rocm-version: "5.6" | |
- os-distro: "rhel" | |
os-version: "8.7" | |
rocm-version: "5.7" | |
# RHEL 8.8 | |
- os-distro: "rhel" | |
os-version: "8.8" | |
rocm-version: "0.0" | |
- os-distro: "rhel" | |
os-version: "8.8" | |
rocm-version: "5.6" | |
- os-distro: "rhel" | |
os-version: "8.8" | |
rocm-version: "5.7" | |
- os-distro: "rhel" | |
os-version: "8.8" | |
rocm-version: "6.0" | |
- os-distro: "rhel" | |
os-version: "8.8" | |
rocm-version: "6.1" | |
# RHEL 8.9 | |
- os-distro: "rhel" | |
os-version: "8.9" | |
rocm-version: "0.0" | |
- os-distro: "rhel" | |
os-version: "8.9" | |
rocm-version: "6.0" | |
- os-distro: "rhel" | |
os-version: "8.9" | |
rocm-version: "6.1" | |
- os-distro: "rhel" | |
os-version: "8.9" | |
rocm-version: "6.2" | |
# RHEL 9.1 | |
- os-distro: "rhel" | |
os-version: "9.1" | |
rocm-version: "0.0" | |
- os-distro: "rhel" | |
os-version: "9.1" | |
rocm-version: "5.4" | |
- os-distro: "rhel" | |
os-version: "9.1" | |
rocm-version: "5.5" | |
- os-distro: "rhel" | |
os-version: "9.1" | |
rocm-version: "5.6" | |
- os-distro: "rhel" | |
os-version: "9.1" | |
rocm-version: "5.7" | |
# RHEL 9.2 | |
- os-distro: "rhel" | |
os-version: "9.2" | |
rocm-version: "0.0" | |
- os-distro: "rhel" | |
os-version: "9.2" | |
rocm-version: "6.0" | |
- os-distro: "rhel" | |
os-version: "9.2" | |
rocm-version: "6.1" | |
# RHEL 9.3 | |
- os-distro: "rhel" | |
os-version: "9.3" | |
rocm-version: "0.0" | |
- os-distro: "rhel" | |
os-version: "9.3" | |
rocm-version: "6.0" | |
- os-distro: "rhel" | |
os-version: "9.3" | |
rocm-version: "6.1" | |
- os-distro: "rhel" | |
os-version: "9.3" | |
rocm-version: "6.2" | |
steps: | |
- name: Free Disk Space | |
uses: jlumbroso/free-disk-space@v1.2.0 | |
with: | |
tool-cache: false | |
android: true | |
dotnet: true | |
haskell: true | |
large-packages: false | |
swap-storage: false | |
- uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- name: Configure ROCm Version | |
if: ${{ matrix.rocm-version == 0 }} | |
run: | | |
echo "CI_SCRIPT_ARGS=--core +python" >> $GITHUB_ENV | |
- name: Configure ROCm Version | |
if: ${{ matrix.rocm-version > 0 }} | |
run: | | |
echo "CI_SCRIPT_ARGS=--rocm +python" >> $GITHUB_ENV | |
- name: Configure Generators | |
run: | | |
echo "CI_GENERATOR_ARGS=--generators STGZ" >> $GITHUB_ENV | |
- name: Build Base Container | |
timeout-minutes: 30 | |
run: | | |
pushd docker | |
./build-docker.sh --distro ${{ matrix.os-distro }} --versions ${{ matrix.os-version }} --rocm-versions ${{ matrix.rocm-version }} | |
popd | |
- name: Build Release | |
timeout-minutes: 150 | |
run: | | |
pushd docker | |
./build-docker-release.sh --distro ${{ matrix.os-distro }} --versions ${{ matrix.os-version }} --rocm-versions ${{ matrix.rocm-version }} -- ${CI_SCRIPT_ARGS} ${CI_GENERATOR_ARGS} | |
popd | |
- name: List Files | |
timeout-minutes: 10 | |
run: | | |
find build-release -type f | egrep '\.(sh|deb|rpm)$' | |
- name: STGZ Artifacts | |
timeout-minutes: 10 | |
uses: actions/upload-artifact@v4 | |
with: | |
name: omnitrace-stgz-${{ matrix.os-distro }}-${{ matrix.os-version }}-rocm-${{ matrix.rocm-version }}-installer | |
path: | | |
build-release/stgz/*.sh | |
# before testing remove any artifacts of the build | |
- name: Remove Build | |
timeout-minutes: 10 | |
run: | | |
shopt -s nullglob | |
for i in $(find build-release -type f | egrep '/(stgz|deb|rpm)/.*\.(sh|deb|rpm)$'); do mv ${i} ./; done | |
sudo rm -rf build-release | |
sudo rm -rf /opt/omnitrace | |
- name: Test STGZ Install | |
timeout-minutes: 20 | |
run: | | |
set -v | |
for i in omnitrace-*.sh | |
do | |
./docker/test-docker-release.sh --distro ${{ matrix.os-distro }} --versions ${{ matrix.os-version }} --rocm-versions ${{ matrix.rocm-version }} -- --stgz ${i} | |
done | |
- name: Upload STGZ Release Assets | |
uses: softprops/action-gh-release@v2 | |
if: startsWith(github.ref, 'refs/tags/') && github.repository == 'ROCm/omnitrace' | |
with: | |
fail_on_unmatched_files: True | |
files: | | |
omnitrace-*.sh |