name: Rerun Command - Continuous Integration on: issue_comment: types: [created] concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true env: # TODO(jrmadsen): replace LD_RUNPATH_FLAG, GPU_TARGETS, etc. with internal handling in cmake ROCM_PATH: "/opt/rocm" GPU_TARGETS: "gfx900 gfx906 gfx908 gfx90a gfx940 gfx941 gfx942 gfx1030 gfx1100 gfx1101 gfx1102" PATH: "/usr/bin:$PATH" EXCLUDED_TESTS: ".*pc_sampling.*" jobs: rerun-mi200: # See: https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix strategy: fail-fast: true matrix: runner: [mi200-runner-set] os: [ubuntu-22.04] build-type: [RelWithDebInfo] ci-flags: ['--linter clang-tidy'] name-tag: [''] if: | github.event.issue.pull_request && github.event.comment.body=='/rerun mi200' && github.event.issue.state=='open' runs-on: ${{ matrix.runner }} # define this for containers env: GIT_DISCOVERY_ACROSS_FILESYSTEM: 1 steps: # Post a start comment to the PR. - name: Add comment to PR uses: actions/github-script@v6 env: COMMENT_BODY: "Rerun Started!, Please check https://github.com/${{github.repository}}/commit/${{github.sha}}/checks/${{github.run_id}} for more details." with: github-token: ${{ secrets.TOKEN }} script: | const comment_body = process.env.COMMENT_BODY; github.rest.issues.createComment({ issue_number: context.issue.number, owner: context.repo.owner, repo: context.repo.repo, body: comment_body }) - uses: actions/checkout@v4 - name: Install requirements shell: bash run: | git config --global --add safe.directory '*' apt-get update apt-get install -y cmake clang-tidy g++-11 g++-12 python3-pip update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-11 10 --slave /usr/bin/g++ g++ /usr/bin/g++-11 update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 20 --slave /usr/bin/g++ g++ /usr/bin/g++-12 python3 -m pip install -r requirements.txt - name: List Files shell: bash run: | which-realpath() { echo -e "\n$1 resolves to $(realpath $(which $1))"; echo "$($(which $1) --version &> /dev/stdout | head -n 1)"; } for i in python python3 git cmake ctest; do which-realpath $i; done ls -la cat /sys/class/kfd/kfd/topology/nodes/*/gpu_id || true; /opt/rocm/bin/rocminfo | grep gfx - name: Configure, Build, and Test id: build-test timeout-minutes: 30 shell: bash run: python3 ./source/scripts/run-ci.py -B build --name ${{ github.repository }}-${{ github.ref_name }}-${{ matrix.os }}${{ matrix.name-tag }} --build-jobs 16 --site $(echo $RUNNER_HOSTNAME)-$(/opt/rocm/bin/rocm_agent_enumerator | sed -n '2 p') --gpu-targets ${{ env.GPU_TARGETS }} ${{ matrix.ci-flags }} -- -DROCPROFILER_DEP_ROCMCORE=ON -DROCPROFILER_BUILD_DOCS=ON -DCMAKE_BUILD_TYPE=${{ matrix.build-type }} -DCMAKE_INSTALL_PREFIX=/opt/rocprofiler-sdk -DCPACK_GENERATOR='DEB;RPM;TGZ' -DCPACK_PACKAGING_INSTALL_PREFIX="$(realpath /opt/rocm)" -DPython3_EXECUTABLE=$(which python3) -- -LE ${{ env.EXCLUDED_TESTS }} # Post a success comment to the PR. - name: Add comment to PR if: ${{ success() }} uses: actions/github-script@v6 env: COMMENT_BODY: "Rerun finished successfully!" with: github-token: ${{ secrets.TOKEN }} script: | const comment_body = process.env.COMMENT_BODY; github.rest.issues.createComment({ issue_number: context.issue.number, owner: context.repo.owner, repo: context.repo.repo, body: comment_body }) # Post a failure message when any of the previous steps fail. - name: Add failure comment to PR if: ${{ failure() }} uses: actions/github-script@v6 env: COMMENT_BODY: "Rerun Failed!" with: github-token: ${{ secrets.TOKEN }} script: | const comment_body = process.env.COMMENT_BODY; github.rest.issues.createComment({ issue_number: context.issue.number, owner: context.repo.owner, repo: context.repo.repo, body: comment_body }) rerun-mi300: # See: https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix strategy: fail-fast: true matrix: runner: [mi300-runner-set] os: [ubuntu-22.04] build-type: [RelWithDebInfo] ci-flags: ['--linter clang-tidy'] name-tag: [''] if: | github.event.issue.pull_request && github.event.comment.body=='/rerun mi300' && github.event.issue.state=='open' runs-on: ${{ matrix.runner }} # define this for containers env: GIT_DISCOVERY_ACROSS_FILESYSTEM: 1 steps: # Post a start comment to the PR. - name: Add comment to PR uses: actions/github-script@v6 env: COMMENT_BODY: "Rerun Started!, Please check https://github.com/${{github.repository}}/commit/${{github.sha}}/checks/${{github.run_id}} for more details." with: github-token: ${{ secrets.TOKEN }} script: | const comment_body = process.env.COMMENT_BODY; github.rest.issues.createComment({ issue_number: context.issue.number, owner: context.repo.owner, repo: context.repo.repo, body: comment_body }) - uses: actions/checkout@v4 - name: Install requirements shell: bash run: | git config --global --add safe.directory '*' apt-get update apt-get install -y cmake clang-tidy g++-11 g++-12 python3-pip update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-11 10 --slave /usr/bin/g++ g++ /usr/bin/g++-11 update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 20 --slave /usr/bin/g++ g++ /usr/bin/g++-12 python3 -m pip install -r requirements.txt - name: List Files shell: bash run: | which-realpath() { echo -e "\n$1 resolves to $(realpath $(which $1))"; echo "$($(which $1) --version &> /dev/stdout | head -n 1)"; } for i in python python3 git cmake ctest; do which-realpath $i; done ls -la cat /sys/class/kfd/kfd/topology/nodes/*/gpu_id || true; /opt/rocm/bin/rocminfo | grep gfx - name: Configure, Build, and Test id: build-test timeout-minutes: 30 shell: bash run: python3 ./source/scripts/run-ci.py -B build --name ${{ github.repository }}-${{ github.ref_name }}-${{ matrix.os }}${{ matrix.name-tag }} --build-jobs 16 --site $(echo $RUNNER_HOSTNAME)-$(/opt/rocm/bin/rocm_agent_enumerator | sed -n '2 p') --gpu-targets ${{ env.GPU_TARGETS }} ${{ matrix.ci-flags }} -- -DROCPROFILER_DEP_ROCMCORE=ON -DROCPROFILER_BUILD_DOCS=ON -DCMAKE_BUILD_TYPE=${{ matrix.build-type }} -DCMAKE_INSTALL_PREFIX=/opt/rocprofiler-sdk -DCPACK_GENERATOR='DEB;RPM;TGZ' -DCPACK_PACKAGING_INSTALL_PREFIX="$(realpath /opt/rocm)" -DPython3_EXECUTABLE=$(which python3) -- -LE ${{ env.EXCLUDED_TESTS }} # Post a success comment to the PR. - name: Add comment to PR if: ${{ success() }} uses: actions/github-script@v6 env: COMMENT_BODY: "Rerun finished successfully!" with: github-token: ${{ secrets.TOKEN }} script: | const comment_body = process.env.COMMENT_BODY; github.rest.issues.createComment({ issue_number: context.issue.number, owner: context.repo.owner, repo: context.repo.repo, body: comment_body }) # Post a failure message when any of the previous steps fail. - name: Add failure comment to PR if: ${{ failure() }} uses: actions/github-script@v6 env: COMMENT_BODY: "Rerun Failed!" with: github-token: ${{ secrets.TOKEN }} script: | const comment_body = process.env.COMMENT_BODY; github.rest.issues.createComment({ issue_number: context.issue.number, owner: context.repo.owner, repo: context.repo.repo, body: comment_body }) rerun-vega20: # See: https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix strategy: fail-fast: true matrix: runner: [vega20-runner-set] os: [ubuntu-22.04] build-type: [RelWithDebInfo] ci-flags: ['--linter clang-tidy'] name-tag: [''] if: | github.event.issue.pull_request && github.event.comment.body=='/rerun vega20' && github.event.issue.state=='open' runs-on: ${{ matrix.runner }} # define this for containers env: GIT_DISCOVERY_ACROSS_FILESYSTEM: 1 steps: # Post a start comment to the PR. - name: Add comment to PR uses: actions/github-script@v6 env: COMMENT_BODY: "Rerun Started!, Please check https://github.com/${{github.repository}}/commit/${{github.sha}}/checks/${{github.run_id}} for more details." with: github-token: ${{ secrets.TOKEN }} script: | const comment_body = process.env.COMMENT_BODY; github.rest.issues.createComment({ issue_number: context.issue.number, owner: context.repo.owner, repo: context.repo.repo, body: comment_body }) - uses: actions/checkout@v4 - name: Install requirements shell: bash run: | git config --global --add safe.directory '*' apt-get update apt-get install -y cmake clang-tidy g++-11 g++-12 python3-pip update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-11 10 --slave /usr/bin/g++ g++ /usr/bin/g++-11 update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 20 --slave /usr/bin/g++ g++ /usr/bin/g++-12 python3 -m pip install -r requirements.txt - name: List Files shell: bash run: | which-realpath() { echo -e "\n$1 resolves to $(realpath $(which $1))"; echo "$($(which $1) --version &> /dev/stdout | head -n 1)"; } for i in python python3 git cmake ctest; do which-realpath $i; done ls -la cat /sys/class/kfd/kfd/topology/nodes/*/gpu_id || true; /opt/rocm/bin/rocminfo | grep gfx - name: Configure, Build, and Test id: build-test timeout-minutes: 30 shell: bash run: python3 ./source/scripts/run-ci.py -B build --name ${{ github.repository }}-${{ github.ref_name }}-${{ matrix.os }}${{ matrix.name-tag }} --build-jobs 16 --site $(echo $RUNNER_HOSTNAME)-$(/opt/rocm/bin/rocm_agent_enumerator | sed -n '2 p') --gpu-targets ${{ env.GPU_TARGETS }} ${{ matrix.ci-flags }} -- -DROCPROFILER_DEP_ROCMCORE=ON -DROCPROFILER_BUILD_DOCS=ON -DCMAKE_BUILD_TYPE=${{ matrix.build-type }} -DCMAKE_INSTALL_PREFIX=/opt/rocprofiler-sdk -DCPACK_GENERATOR='DEB;RPM;TGZ' -DCPACK_PACKAGING_INSTALL_PREFIX="$(realpath /opt/rocm)" -DPython3_EXECUTABLE=$(which python3) -- -LE ${{ env.EXCLUDED_TESTS }} # Post a success comment to the PR. - name: Add comment to PR if: ${{ success() }} uses: actions/github-script@v6 env: COMMENT_BODY: "Rerun finished successfully!" with: github-token: ${{ secrets.TOKEN }} script: | const comment_body = process.env.COMMENT_BODY; github.rest.issues.createComment({ issue_number: context.issue.number, owner: context.repo.owner, repo: context.repo.repo, body: comment_body }) # Post a failure message when any of the previous steps fail. - name: Add failure comment to PR if: ${{ failure() }} uses: actions/github-script@v6 env: COMMENT_BODY: "Rerun Failed!" with: github-token: ${{ secrets.TOKEN }} script: | const comment_body = process.env.COMMENT_BODY; github.rest.issues.createComment({ issue_number: context.issue.number, owner: context.repo.owner, repo: context.repo.repo, body: comment_body }) rerun-navi3: # See: https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix strategy: fail-fast: true matrix: runner: [navi3-runner-set] os: [ubuntu-22.04] build-type: [RelWithDebInfo] ci-flags: ['--linter clang-tidy'] name-tag: [''] if: | github.event.issue.pull_request && github.event.comment.body=='/rerun navi3' && github.event.issue.state=='open' runs-on: ${{ matrix.runner }} # define this for containers env: GIT_DISCOVERY_ACROSS_FILESYSTEM: 1 steps: # Post a start comment to the PR. - name: Add comment to PR uses: actions/github-script@v6 env: COMMENT_BODY: "Rerun Started!, Please check https://github.com/${{github.repository}}/commit/${{github.sha}}/checks/${{github.run_id}} for more details." with: github-token: ${{ secrets.TOKEN }} script: | const comment_body = process.env.COMMENT_BODY; github.rest.issues.createComment({ issue_number: context.issue.number, owner: context.repo.owner, repo: context.repo.repo, body: comment_body }) - uses: actions/checkout@v4 - name: Install requirements shell: bash run: | git config --global --add safe.directory '*' apt-get update apt-get install -y cmake clang-tidy g++-11 g++-12 python3-pip update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-11 10 --slave /usr/bin/g++ g++ /usr/bin/g++-11 update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 20 --slave /usr/bin/g++ g++ /usr/bin/g++-12 python3 -m pip install -r requirements.txt - name: List Files shell: bash run: | which-realpath() { echo -e "\n$1 resolves to $(realpath $(which $1))"; echo "$($(which $1) --version &> /dev/stdout | head -n 1)"; } for i in python python3 git cmake ctest; do which-realpath $i; done ls -la cat /sys/class/kfd/kfd/topology/nodes/*/gpu_id || true; /opt/rocm/bin/rocminfo | grep gfx - name: Configure, Build, and Test id: build-test timeout-minutes: 30 shell: bash run: python3 ./source/scripts/run-ci.py -B build --name ${{ github.repository }}-${{ github.ref_name }}-${{ matrix.os }}${{ matrix.name-tag }} --build-jobs 16 --site $(echo $RUNNER_HOSTNAME)-$(/opt/rocm/bin/rocm_agent_enumerator | sed -n '2 p') --gpu-targets ${{ env.GPU_TARGETS }} ${{ matrix.ci-flags }} -- -DROCPROFILER_DEP_ROCMCORE=ON -DROCPROFILER_BUILD_DOCS=ON -DCMAKE_BUILD_TYPE=${{ matrix.build-type }} -DCMAKE_INSTALL_PREFIX=/opt/rocprofiler-sdk -DCPACK_GENERATOR='DEB;RPM;TGZ' -DCPACK_PACKAGING_INSTALL_PREFIX="$(realpath /opt/rocm)" -DPython3_EXECUTABLE=$(which python3) -- -LE ${{ env.EXCLUDED_TESTS }} # Post a success comment to the PR. - name: Add comment to PR if: ${{ success() }} uses: actions/github-script@v6 env: COMMENT_BODY: "Rerun finished successfully!" with: github-token: ${{ secrets.TOKEN }} script: | const comment_body = process.env.COMMENT_BODY; github.rest.issues.createComment({ issue_number: context.issue.number, owner: context.repo.owner, repo: context.repo.repo, body: comment_body }) # Post a failure message when any of the previous steps fail. - name: Add failure comment to PR if: ${{ failure() }} uses: actions/github-script@v6 env: COMMENT_BODY: "Rerun Failed!" with: github-token: ${{ secrets.TOKEN }} script: | const comment_body = process.env.COMMENT_BODY; github.rest.issues.createComment({ issue_number: context.issue.number, owner: context.repo.owner, repo: context.repo.repo, body: comment_body }) rerun-pc-sampling: # See: https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix strategy: fail-fast: true matrix: runner: [pc-sampling-runner-set] os: [ubuntu-22.04] build-type: [RelWithDebInfo] ci-flags: ['--linter clang-tidy'] name-tag: [''] if: | github.event.issue.pull_request && github.event.comment.body=='/rerun pc-sampling' && github.event.issue.state=='open' runs-on: ${{ matrix.runner }} # define this for containers env: GIT_DISCOVERY_ACROSS_FILESYSTEM: 1 steps: # Post a start comment to the PR. - name: Add comment to PR uses: actions/github-script@v6 env: COMMENT_BODY: "Rerun Started!, Please check https://github.com/${{github.repository}}/commit/${{github.sha}}/checks/${{github.run_id}} for more details." with: github-token: ${{ secrets.TOKEN }} script: | const comment_body = process.env.COMMENT_BODY; github.rest.issues.createComment({ issue_number: context.issue.number, owner: context.repo.owner, repo: context.repo.repo, body: comment_body }) - uses: actions/checkout@v4 - name: Install requirements shell: bash run: | git config --global --add safe.directory '*' apt-get update apt-get install -y cmake clang-tidy g++-11 g++-12 python3-pip update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-11 10 --slave /usr/bin/g++ g++ /usr/bin/g++-11 update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 20 --slave /usr/bin/g++ g++ /usr/bin/g++-12 python3 -m pip install -r requirements.txt - name: List Files shell: bash run: | which-realpath() { echo -e "\n$1 resolves to $(realpath $(which $1))"; echo "$($(which $1) --version &> /dev/stdout | head -n 1)"; } for i in python python3 git cmake ctest; do which-realpath $i; done ls -la cat /sys/class/kfd/kfd/topology/nodes/*/gpu_id || true; /opt/rocm/bin/rocminfo | grep gfx - name: Configure, Build, and Test id: build-test timeout-minutes: 30 shell: bash run: python3 ./source/scripts/run-ci.py -B build --name ${{ github.repository }}-${{ github.ref_name }}-${{ matrix.os }}${{ matrix.name-tag }} --build-jobs 16 --site $(echo $RUNNER_HOSTNAME)-$(/opt/rocm/bin/rocm_agent_enumerator | sed -n '2 p') --gpu-targets ${{ env.GPU_TARGETS }} ${{ matrix.ci-flags }} -- -DROCPROFILER_DEP_ROCMCORE=ON -DROCPROFILER_BUILD_DOCS=ON -DCMAKE_BUILD_TYPE=${{ matrix.build-type }} -DCMAKE_INSTALL_PREFIX=/opt/rocprofiler-sdk -DCPACK_GENERATOR='DEB;RPM;TGZ' -DCPACK_PACKAGING_INSTALL_PREFIX="$(realpath /opt/rocm)" -DPython3_EXECUTABLE=$(which python3) -- -L ${{ env.EXCLUDED_TESTS }} # Post a success comment to the PR. - name: Add comment to PR if: ${{ success() }} uses: actions/github-script@v6 env: COMMENT_BODY: "Rerun finished successfully!" with: github-token: ${{ secrets.TOKEN }} script: | const comment_body = process.env.COMMENT_BODY; github.rest.issues.createComment({ issue_number: context.issue.number, owner: context.repo.owner, repo: context.repo.repo, body: comment_body }) # Post a failure message when any of the previous steps fail. - name: Add failure comment to PR if: ${{ failure() }} uses: actions/github-script@v6 env: COMMENT_BODY: "Rerun Failed!" with: github-token: ${{ secrets.TOKEN }} script: | const comment_body = process.env.COMMENT_BODY; github.rest.issues.createComment({ issue_number: context.issue.number, owner: context.repo.owner, repo: context.repo.repo, body: comment_body })