diff options
Diffstat (limited to '.github')
| -rw-r--r-- | .github/workflows/accelsim.yml | 39 | ||||
| -rw-r--r-- | .github/workflows/cmake.yml | 45 | ||||
| -rw-r--r-- | .github/workflows/format_check.yml | 32 | ||||
| -rw-r--r-- | .github/workflows/main.yml | 127 | ||||
| -rw-r--r-- | .github/workflows/sst_integration.yml | 4 |
5 files changed, 105 insertions, 142 deletions
diff --git a/.github/workflows/accelsim.yml b/.github/workflows/accelsim.yml deleted file mode 100644 index f152c0d..0000000 --- a/.github/workflows/accelsim.yml +++ /dev/null @@ -1,39 +0,0 @@ -# Test backend changes with Accel-Sim - -name: Short-Tests-AccelSim - -# Controls when the workflow will run -on: - push: - branches-ignore: - - "gh-readonly-queue**" - merge_group: - pull_request: - - # Allows you to run this workflow manually from the Actions tab - workflow_dispatch: - -# By default regress against accel-sim's dev branch -env: - ACCELSIM_REPO: https://github.com/purdue-aalp/accel-sim-framework-public.git - ACCELSIM_BRANCH: dev - -# A workflow run is made up of one or more jobs that can run sequentially or in parallel -jobs: - build-QV100: - strategy: - matrix: - image_tags: - - ubuntu-24.04-cuda-12.8-minimal - - ubuntu-22.04-cuda-11.7.1-minimal - runs-on: ubuntu-latest - container: - image: ghcr.io/accel-sim/accel-sim-framework:${{ matrix.image_tags }} - - # Steps represent a sequence of tasks that will be executed as part of the job - steps: - # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - - uses: actions/checkout@v4 - - name: Run Simulation - run: /bin/bash $GITHUB_WORKSPACE/short-tests-accelsim.sh - diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml deleted file mode 100644 index c61f5b3..0000000 --- a/.github/workflows/cmake.yml +++ /dev/null @@ -1,45 +0,0 @@ -# Workflow with cmake build system -name: Short-Tests-CMake - -# Controls when the workflow will run -on: - # Triggers the workflow on push or pull request events but only for the mydev branch - push: - branches-ignore: - - "gh-readonly-queue**" - merge_group: - pull_request: - - # Allows you to run this workflow manually from the Actions tab - workflow_dispatch: - -# A workflow run is made up of one or more jobs that can run sequentially or in parallel -jobs: - build: - strategy: - matrix: - app: - - rodinia_2.0-ft - config: - - TITANV - - TITANV-LOCALXBAR - - QV100 - - RTX2060 - - RTX3070 - image_tags: - - ubuntu-24.04-cuda-12.8-minimal - - ubuntu-22.04-cuda-11.7.1-minimal - runs-on: ubuntu-latest - name: Build ${{ matrix.app }} on ${{ matrix.image_tags }} with ${{ matrix.config }} - container: - image: ghcr.io/accel-sim/accel-sim-framework:${{ matrix.image_tags }} - env: - CONFIG: ${{ matrix.config }} - APP: ${{ matrix.app }} - - # Steps represent a sequence of tasks that will be executed as part of the job - steps: - # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - - uses: actions/checkout@v4 - - name: Run Simulation - run: /bin/bash $GITHUB_WORKSPACE/short-tests-cmake.sh diff --git a/.github/workflows/format_check.yml b/.github/workflows/format_check.yml new file mode 100644 index 0000000..db94ee0 --- /dev/null +++ b/.github/workflows/format_check.yml @@ -0,0 +1,32 @@ +name: Format Check + +on: + pull_request: + +jobs: + check-format: + runs-on: tgrogers-raid + steps: + - uses: actions/checkout@v4 + - name: Check code formatting + run: | + # Run the formatter to see if it would make any changes + /bin/bash ./format-code.sh + + # Check if there are any uncommitted changes + if git diff --quiet; then + echo "✅ Code is properly formatted" + else + echo "❌ Code formatting check failed. The following files need formatting:" + git diff --name-only + echo "" + echo "Please run the formatter locally and commit the changes:" + echo "/bin/bash ./format-code.sh" + exit 1 + fi + + # skip the runs in PRs. Will run in the merge queue + CI-Success: + runs-on: ubuntu-latest + steps: + - run: echo "CI skipped. Will run in the merge queue"
\ No newline at end of file diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 4c12f58..0cb61e4 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -1,6 +1,6 @@ # This is a basic workflow to help you get started with Actions -name: Short-Tests +name: CI Tests # Controls when the workflow will run on: @@ -8,33 +8,48 @@ on: branches-ignore: - "gh-readonly-queue**" merge_group: - pull_request: - # Allows you to run this workflow manually from the Actions tab workflow_dispatch: # A workflow run is made up of one or more jobs that can run sequentially or in parallel jobs: - build-TITANV: - runs-on: ubuntu-latest - container: - image: ghcr.io/accel-sim/accel-sim-framework:ubuntu-24.04-cuda-12.8-minimal - env: - CONFIG: TITANV - - # Steps represent a sequence of tasks that will be executed as part of the job + check-format: + runs-on: tgrogers-raid steps: - # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - uses: actions/checkout@v4 - - name: Run Simulation - run: /bin/bash $GITHUB_WORKSPACE/short-tests.sh + + - name: Check code formatting + run: | + # Run the formatter to see if it would make any changes + /bin/bash ./format-code.sh + + # Check if there are any uncommitted changes + if git diff --quiet; then + echo "✅ Code is properly formatted" + else + echo "❌ Code formatting check failed. The following files need formatting:" + git diff --name-only + echo "" + echo "Please run the formatter locally and commit the changes:" + echo "/bin/bash ./format-code.sh" + exit 1 + fi - build-TITANV-LOCALXBAR: + build-Makefile: + # minimal tests - Makefile is deprecated + strategy: + matrix: + config: + - QV100 + image_tags: + - ubuntu-24.04-cuda-12.8-minimal runs-on: ubuntu-latest + needs: check-format + name: build-Makefile container: - image: ghcr.io/accel-sim/accel-sim-framework:ubuntu-24.04-cuda-12.8-minimal + image: ghcr.io/accel-sim/accel-sim-framework:${{ matrix.image_tags }} env: - CONFIG: TITANV-LOCALXBAR + CONFIG: ${{ matrix.config }} # Steps represent a sequence of tasks that will be executed as part of the job steps: @@ -43,63 +58,65 @@ jobs: - name: Run Simulation run: /bin/bash $GITHUB_WORKSPACE/short-tests.sh - build-QV100: + build-CMake: + strategy: + matrix: + app: + - rodinia_2.0-ft + config: + - TITANV + - TITANV-LOCALXBAR + - QV100 + - RTX2060 + - RTX3070 + image_tags: + - ubuntu-24.04-cuda-12.8-minimal + - ubuntu-22.04-cuda-11.7.1-minimal runs-on: ubuntu-latest + needs: check-format + name: build-CMake container: - image: ghcr.io/accel-sim/accel-sim-framework:ubuntu-24.04-cuda-12.8-minimal + image: ghcr.io/accel-sim/accel-sim-framework:${{ matrix.image_tags }} env: - CONFIG: QV100 + CONFIG: ${{ matrix.config }} + APP: ${{ matrix.app }} # Steps represent a sequence of tasks that will be executed as part of the job steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - uses: actions/checkout@v4 - name: Run Simulation - run: /bin/bash $GITHUB_WORKSPACE/short-tests.sh + run: /bin/bash $GITHUB_WORKSPACE/short-tests-cmake.sh - build-2060: + build-AccelSim: + strategy: + matrix: + image_tags: + - ubuntu-24.04-cuda-12.8-minimal + - ubuntu-22.04-cuda-11.7.1-minimal runs-on: ubuntu-latest + needs: check-format + name: build-AccelSim container: - image: ghcr.io/accel-sim/accel-sim-framework:ubuntu-24.04-cuda-12.8-minimal + image: ghcr.io/accel-sim/accel-sim-framework:${{ matrix.image_tags }} env: - CONFIG: RTX2060 + ACCELSIM_REPO: https://github.com/accel-sim/accel-sim-framework.git + ACCELSIM_BRANCH: dev # Steps represent a sequence of tasks that will be executed as part of the job steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - uses: actions/checkout@v4 - name: Run Simulation - run: /bin/bash $GITHUB_WORKSPACE/short-tests.sh + run: /bin/bash $GITHUB_WORKSPACE/short-tests-accelsim.sh - build-3070: + CI-Success: runs-on: ubuntu-latest - container: - image: ghcr.io/accel-sim/accel-sim-framework:ubuntu-24.04-cuda-12.8-minimal - env: - CONFIG: RTX3070 - - # Steps represent a sequence of tasks that will be executed as part of the job + needs: [check-format, build-Makefile, build-CMake, build-AccelSim] steps: - # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - - uses: actions/checkout@v4 - - name: Run Simulation - run: /bin/bash $GITHUB_WORKSPACE/short-tests.sh - #format-code: - # if: github.event_name == 'pull_request' - # runs-on: tgrogers-raid - # needs: [build-TITANV, build-TITANV-LOCALXBAR, build-QV100, build-2060, build-3070] - # steps: - # - uses: actions/checkout@v4 - # with: - # ref: ${{github.event.pull_request.head.ref}} - # repository: ${{github.event.pull_request.head.repo.full_name}} - # ssh-key: '' - - # - name: Run clang-format - # run: | - # git config user.name "purdue-jenkins" - # git config user.email "[email protected]" - # git remote set-url origin [email protected]:${{github.event.pull_request.head.repo.full_name}} - # git remote -v - # /bin/bash ./format-code.sh - # if git status --untracked-files=no | grep -q "nothing to commit"; then echo "No changes to commit."; else git commit -a -m "Automated Format"; git push; fi + - run: | + echo "✅ All CI tests completed successfully!" + echo "Format check: ✅" + echo "Makefile build: ✅" + echo "CMake build: ✅" + echo "AccelSim build: ✅" diff --git a/.github/workflows/sst_integration.yml b/.github/workflows/sst_integration.yml index cb94de4..f491f59 100644 --- a/.github/workflows/sst_integration.yml +++ b/.github/workflows/sst_integration.yml @@ -7,14 +7,12 @@ on: push: branches-ignore: - "gh-readonly-queue**" - pull_request: - - # Allows you to run this workflow manually from the Actions tab workflow_dispatch: # A workflow run is made up of one or more jobs that can run sequentially or in parallel jobs: build-QV100: + name: SST-QV100 runs-on: ubuntu-latest defaults: run: |
