summaryrefslogtreecommitdiff
path: root/.github
diff options
context:
space:
mode:
Diffstat (limited to '.github')
-rw-r--r--.github/workflows/accelsim.yml39
-rw-r--r--.github/workflows/cmake.yml45
-rw-r--r--.github/workflows/format_check.yml32
-rw-r--r--.github/workflows/main.yml127
-rw-r--r--.github/workflows/sst_integration.yml4
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: