misc: Merge .github develop dir to stable (#1043)
This commit is contained in:
63
.github/workflows/ci-tests.yaml
vendored
63
.github/workflows/ci-tests.yaml
vendored
@@ -14,17 +14,17 @@ concurrency:
|
||||
jobs:
|
||||
pre-commit:
|
||||
# runs on github hosted runner
|
||||
runs-on: ubuntu-22.04
|
||||
runs-on: ubuntu-latest
|
||||
if: github.event.pull_request.draft == false
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-python@v3
|
||||
- uses: pre-commit/action@v3.0.0
|
||||
- uses: actions/setup-python@v5
|
||||
- uses: pre-commit/action@v3.0.1
|
||||
|
||||
# ensures we have a change-id in every commit, needed for gerrit
|
||||
check-for-change-id:
|
||||
# runs on github hosted runner
|
||||
runs-on: ubuntu-22.04
|
||||
runs-on: ubuntu-latest
|
||||
if: github.event.pull_request.draft == false
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
@@ -50,7 +50,7 @@ jobs:
|
||||
unittests-all-opt:
|
||||
runs-on: [self-hosted, linux, x64]
|
||||
if: github.event.pull_request.draft == false
|
||||
container: ghcr.io/gem5/ubuntu-22.04_all-dependencies:latest
|
||||
container: ghcr.io/gem5/ubuntu-24.04_all-dependencies:latest
|
||||
needs: [pre-commit, check-for-change-id] # only runs if pre-commit and change-id passes
|
||||
timeout-minutes: 60
|
||||
steps:
|
||||
@@ -65,15 +65,15 @@ jobs:
|
||||
if: github.event.pull_request.draft == false
|
||||
# In order to make sure the environment is exactly the same, we run in
|
||||
# the same container we use to build gem5 and run the testlib tests. This
|
||||
container: ghcr.io/gem5/ubuntu-22.04_all-dependencies:latest
|
||||
container: ghcr.io/gem5/ubuntu-24.04_all-dependencies:latest
|
||||
needs: [pre-commit, check-for-change-id]
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
# Unfortunately the 'ubunutu-latest' image doesn't have jq installed.
|
||||
# We therefore need to install it as a step here.
|
||||
# Unfortunately the image doesn't have jq installed.
|
||||
# We therefore need to install it as a step here.
|
||||
- name: Install jq
|
||||
run: apt install -y jq
|
||||
run: apt update && apt install -y jq
|
||||
|
||||
- name: Get directories for testlib-quick
|
||||
working-directory: ${{ github.workspace }}/tests
|
||||
@@ -108,7 +108,7 @@ jobs:
|
||||
testlib-quick-gem5-builds:
|
||||
runs-on: [self-hosted, linux, x64]
|
||||
if: github.event.pull_request.draft == false
|
||||
container: ghcr.io/gem5/ubuntu-22.04_all-dependencies:latest
|
||||
container: ghcr.io/gem5/ubuntu-24.04_all-dependencies:latest
|
||||
needs: [pre-commit, check-for-change-id, testlib-quick-matrix]
|
||||
strategy:
|
||||
matrix:
|
||||
@@ -138,7 +138,7 @@ jobs:
|
||||
testlib-quick-execution:
|
||||
runs-on: [self-hosted, linux, x64]
|
||||
if: github.event.pull_request.draft == false
|
||||
container: ghcr.io/gem5/ubuntu-22.04_all-dependencies:latest
|
||||
container: ghcr.io/gem5/ubuntu-24.04_all-dependencies:latest
|
||||
needs: [pre-commit, check-for-change-id, testlib-quick-matrix, testlib-quick-gem5-builds]
|
||||
timeout-minutes: 360 # 6 hours
|
||||
strategy:
|
||||
@@ -184,12 +184,49 @@ jobs:
|
||||
path: tests/testing-results
|
||||
retention-days: 30
|
||||
|
||||
pyunit:
|
||||
runs-on: [self-hosted, linux, x64]
|
||||
if: github.event.pull_request.draft == false
|
||||
container: ghcr.io/gem5/ubuntu-24.04_all-dependencies:latest
|
||||
needs: [pre-commit, check-for-change-id, testlib-quick-gem5-builds]
|
||||
timeout-minutes: 30
|
||||
steps:
|
||||
|
||||
# Checkout the repository then download the builds.
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: ci-tests-${{ github.run_number }}-testlib-quick-all-gem5-builds
|
||||
|
||||
# Check that the gem5 binaries exist and are executable.
|
||||
- name: Chmod gem5.{opt,debug,fast} to be executable
|
||||
run: |
|
||||
find . -name "gem5.opt" -exec chmod u+x {} \;
|
||||
find . -name "gem5.debug" -exec chmod u+x {} \;
|
||||
find . -name "gem5.fast" -exec chmod u+x {} \;
|
||||
|
||||
# Run the pyunit tests.
|
||||
# Note: these are all quick tests.
|
||||
- name: Run The pyunit tests
|
||||
id: run-tests
|
||||
working-directory: ${{ github.workspace }}/tests
|
||||
run: ./main.py run --skip-build -vv -j$(nproc) pyunit
|
||||
|
||||
# Upload the tests/testing-results directory as an artifact.
|
||||
- name: Upload pyunit test results
|
||||
if: success() || failure()
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: ci-tests-run-${{ github.run_number }}-attempt-${{ github.run_attempt }}-pyunit-status-${{ steps.run-tests.outcome }}-output
|
||||
path: tests/testing-results
|
||||
retention-days: 30
|
||||
|
||||
testlib-quick:
|
||||
# It is 'testlib-quick' which needs to pass for the pull request to be
|
||||
# merged. The 'testlib-quick-execution' is a matrix job which runs all the
|
||||
# the testlib quick tests. This job is therefore a stub which will pass if
|
||||
# all the testlib-quick-execution jobs pass.
|
||||
runs-on: ubuntu-22.04
|
||||
needs: testlib-quick-execution
|
||||
runs-on: ubuntu-latest
|
||||
needs: [testlib-quick-execution, pyunit]
|
||||
steps:
|
||||
- run: echo "This job's status is ${{ job.status }}."
|
||||
|
||||
4
.github/workflows/compiler-tests.yaml
vendored
4
.github/workflows/compiler-tests.yaml
vendored
@@ -18,7 +18,7 @@ jobs:
|
||||
matrix:
|
||||
image: [gcc-version-13, gcc-version-12, gcc-version-11, gcc-version-10, gcc-version-8, clang-version-16, clang-version-15, clang-version-14,
|
||||
clang-version-13, clang-version-12, clang-version-11, clang-version-10, clang-version-9, clang-version-8, clang-version-7, ubuntu-20.04_all-dependencies,
|
||||
ubuntu-22.04_all-dependencies, ubuntu-22.04_min-dependencies]
|
||||
ubuntu-22.04_all-dependencies, ubuntu-24.04_all-dependencies, ubuntu-24.04_min-dependencies]
|
||||
opts: [.opt, .fast]
|
||||
runs-on: [self-hosted, linux, x64]
|
||||
timeout-minutes: 2880 # 48 hours
|
||||
@@ -61,7 +61,7 @@ jobs:
|
||||
# I.e., if we want to stop pull requests from being merged if the
|
||||
# compiler tests are failing, we can add this job as a required status
|
||||
# check.
|
||||
runs-on: ubuntu-22.04
|
||||
runs-on: ubuntu-latest
|
||||
needs:
|
||||
- latest-compilers-all-gem5-builds
|
||||
- all-compilers
|
||||
|
||||
10
.github/workflows/daily-tests.yaml
vendored
10
.github/workflows/daily-tests.yaml
vendored
@@ -46,7 +46,7 @@ jobs:
|
||||
isa-option: 'NULL'
|
||||
runs-on: [self-hosted, linux, x64]
|
||||
needs: name-artifacts
|
||||
container: ghcr.io/gem5/ubuntu-22.04_all-dependencies:latest
|
||||
container: ghcr.io/gem5/ubuntu-24.04_all-dependencies:latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
@@ -74,7 +74,7 @@ jobs:
|
||||
matrix:
|
||||
type: [fast, debug]
|
||||
runs-on: [self-hosted, linux, x64]
|
||||
container: ghcr.io/gem5/ubuntu-22.04_all-dependencies:latest
|
||||
container: ghcr.io/gem5/ubuntu-24.04_all-dependencies:latest
|
||||
timeout-minutes: 60
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
@@ -93,7 +93,7 @@ jobs:
|
||||
test-type: [arm_boot_tests, fs, gpu, insttest_se, learning_gem5, m5threads_test_atomic, memory, multi_isa, replacement_policies, riscv_boot_tests,
|
||||
stdlib, x86_boot_tests]
|
||||
runs-on: [self-hosted, linux, x64]
|
||||
container: ghcr.io/gem5/ubuntu-22.04_all-dependencies:latest
|
||||
container: ghcr.io/gem5/ubuntu-24.04_all-dependencies:latest
|
||||
needs: [name-artifacts, build-gem5]
|
||||
timeout-minutes: 1440 # 24 hours for entire matrix to run
|
||||
steps:
|
||||
@@ -182,7 +182,7 @@ jobs:
|
||||
matrix:
|
||||
test-type: [gem5-library-example-x86-ubuntu-run-ALL-x86_64-opt, gem5-library-example-riscv-ubuntu-run-ALL-x86_64-opt, lupv-example-ALL-x86_64-opt,
|
||||
gem5-library-example-arm-ubuntu-run-test-ALL-x86_64-opt, gem5-library-example-riscvmatched-hello-ALL-x86_64-opt]
|
||||
container: ghcr.io/gem5/ubuntu-22.04_all-dependencies:latest
|
||||
container: ghcr.io/gem5/ubuntu-24.04_all-dependencies:latest
|
||||
needs: [name-artifacts, build-gem5]
|
||||
timeout-minutes: 1440 # 24 hours
|
||||
steps:
|
||||
@@ -304,7 +304,7 @@ jobs:
|
||||
# I.e., if we want to stop pull requests from being merged if the
|
||||
# daily tests are failing we can add this job as a required status
|
||||
# check.
|
||||
runs-on: ubuntu-22.04
|
||||
runs-on: ubuntu-latest
|
||||
needs:
|
||||
- unittests-fast-debug
|
||||
- testlib-long-tests
|
||||
|
||||
2
.github/workflows/docker-build.yaml
vendored
2
.github/workflows/docker-build.yaml
vendored
@@ -6,7 +6,7 @@ on:
|
||||
jobs:
|
||||
obtain-dockerfiles:
|
||||
runs-on: [self-hosted, linux, x64]
|
||||
container: ghcr.io/gem5/ubuntu-22.04_all-dependencies:latest
|
||||
container: ghcr.io/gem5/ubuntu-24.04_all-dependencies:latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
8
.github/workflows/weekly-tests.yaml
vendored
8
.github/workflows/weekly-tests.yaml
vendored
@@ -92,7 +92,7 @@ jobs:
|
||||
|
||||
build-gem5:
|
||||
runs-on: [self-hosted, linux, x64]
|
||||
container: ghcr.io/gem5/ubuntu-22.04_all-dependencies:latest
|
||||
container: ghcr.io/gem5/ubuntu-24.04_all-dependencies:latest
|
||||
outputs:
|
||||
build-name: ${{ steps.artifact-name.outputs.name }}
|
||||
steps:
|
||||
@@ -120,7 +120,7 @@ jobs:
|
||||
matrix:
|
||||
test-type: [gem5_library_example_tests, gem5_resources, parsec_benchmarks, x86_boot_tests]
|
||||
runs-on: [self-hosted, linux, x64]
|
||||
container: ghcr.io/gem5/ubuntu-22.04_all-dependencies:latest
|
||||
container: ghcr.io/gem5/ubuntu-24.04_all-dependencies:latest
|
||||
needs: [build-gem5]
|
||||
timeout-minutes: 4320 # 3 days
|
||||
steps:
|
||||
@@ -157,7 +157,7 @@ jobs:
|
||||
|
||||
dramsys-tests:
|
||||
runs-on: [self-hosted, linux, x64]
|
||||
container: ghcr.io/gem5/ubuntu-22.04_all-dependencies:latest
|
||||
container: ghcr.io/gem5/ubuntu-24.04_all-dependencies:latest
|
||||
timeout-minutes: 4320 # 3 days
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
@@ -187,7 +187,7 @@ jobs:
|
||||
# I.e., if we want to stop pull requests from being merged if the
|
||||
# weekly tests are failing we can add this job as a required status
|
||||
# check.
|
||||
runs-on: ubuntu-22.04
|
||||
runs-on: ubuntu-latest
|
||||
needs:
|
||||
- testlib-very-long-tests
|
||||
- dramsys-tests
|
||||
|
||||
Reference in New Issue
Block a user