name: packaging on: push: tags: - "v[1-9].[0-9]+.[0-9]+*" - "rocm-[0-9]+.[0-9]+.[0-9]+*" concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true jobs: distbuild: runs-on: ubuntu-latest name: Create release distribution env: INSTALL_DIR: /tmp steps: - name: Checkout code uses: actions/checkout@v4 - name: Verify VERSION file consistent with tag run: utils/ver_check.py --tag ${{github.ref_name}} - name: Install Python uses: actions/setup-python@v5 with: python-version: '3.8' - name: Python dependency installs run: python3 -m pip install -t${INSTALL_DIR}/python-libs -r requirements.txt - name: Configure run: | mkdir build cd build cmake -DPYTHON_DEPS=${INSTALL_DIR}/python-libs .. - name: Release tarball run: | cd build make package_source - name: Rename tarball run: mv build/rocprofiler-compute-*.tar.gz build/rocprofiler-compute-${{github.ref_name}}.tar.gz - name: Archive tarball uses: actions/upload-artifact@v4 with: name: rocprofiler-compute-${{github.ref_name}}.tar.gz path: build/rocprofiler-compute-${{github.ref_name}}.tar.gz - name: Set version run: echo "VERSION=$(cat VERSION)" >> $GITHUB_ENV - name: Determine release name run: | if [[ ${{github.ref_name}} == rocm-* ]]; then echo "RELEASE_NAME=rocprofiler-compute ${{ env.VERSION }} for ${{github.ref_name}}" else echo "RELEASE_NAME=rocprofiler-compute ${{ env.VERSION }}" fi >> $GITHUB_ENV - name: Upload tarball Release Asset uses: softprops/action-gh-release@v2 if: startsWith(github.ref, 'refs/tags/') && github.repository == 'ROCm/rocprofiler-compute' with: fail_on_unmatched: True generate_release_notes: True draft: False # toggle for debugging files: | build/rocprofiler-compute-${{github.ref_name}}.tar.gz name: ${{ env.RELEASE_NAME }}