TGC-ISS/.gitea/workflows/run_act.yaml

71 lines
2.5 KiB
YAML
Raw Normal View History

2024-03-24 17:01:34 +01:00
name: Run architectural test suite on backends
2024-03-24 15:58:38 +01:00
on: push
jobs:
2024-03-24 17:59:36 +01:00
build_and_test_job:
2024-03-24 18:00:41 +01:00
name: Build ISS, Setup TGC-COMPLIANCE, Run tests on backends
2024-03-24 15:58:38 +01:00
runs-on: ubuntu-latest
container:
image: git.minres.com/tooling/riscof_sail:latest
2024-04-22 18:49:03 +02:00
valid_volumes:
- act-runtime
2024-04-22 17:12:20 +02:00
volumes:
- act-runtime:/mnt/act-runtime
2024-03-24 15:58:38 +01:00
steps:
2024-04-22 18:24:04 +02:00
- name: Checkout repository code
2024-03-24 15:58:38 +01:00
run: git clone --recursive -b ${{gitea.ref_name}} https://git.minres.com/TGFS/TGC-ISS.git
2024-03-24 17:01:34 +01:00
2024-03-24 15:58:38 +01:00
- name: Checkout TGC-COMPLIANCE
run: |
echo "${{ secrets.ACTRUNNER_PRIVATE_SSHKEY }}" > ssh_key
chmod 600 ssh_key
git clone --recursive -c core.sshCommand="/usr/bin/ssh -i ssh_key -o StrictHostKeyChecking=accept-new" ssh://git@git.minres.com:2221/TGFS/TGC-COMPLIANCE.git
2024-03-24 17:01:34 +01:00
2024-03-24 15:58:38 +01:00
- name: Build tgc-sim executable
run: |
2024-03-24 17:33:23 +01:00
conan profile new --detect --force default
2024-03-24 17:29:17 +01:00
cmake -S TGC-ISS -B TGC-ISS/build -DCMAKE_BUILD_TYPE=Debug -DWITH_ASMJIT=ON -DWITH_TCC=ON -DWITH_LLVM=OFF
2024-03-24 15:58:38 +01:00
cmake --build TGC-ISS/build -j24
2024-03-24 17:06:56 +01:00
2024-03-24 17:59:36 +01:00
- name: Test interp backend
continue-on-error: true
id: interp
2024-03-24 18:21:23 +01:00
run: |
mkdir interp
python3 TGC-COMPLIANCE/run_act.py -core TGC5C -sim TGC-ISS/build/dbt-rise-tgc/tgc-sim -w interp --dockerless --backend interp
2024-03-24 17:06:56 +01:00
2024-03-24 17:59:36 +01:00
- name: Test llvm backend
continue-on-error: true
id: llvm
2024-03-24 18:21:23 +01:00
run: |
mkdir llvm
echo "llvm takes too long to build, so it is skipped"
2024-04-22 18:32:59 +02:00
exit 1
2024-03-24 18:21:23 +01:00
##run: python3 TGC-COMPLIANCE/run_act.py -core TGC5C -sim TGC-ISS/build/dbt-rise-tgc/tgc-sim -w llvm --dockerless --backend llvm
2024-03-24 17:06:56 +01:00
2024-03-24 17:59:36 +01:00
- name: Test tcc backend
continue-on-error: true
id: tcc
2024-03-24 18:21:23 +01:00
run: |
mkdir tcc
python3 TGC-COMPLIANCE/run_act.py -core TGC5C -sim TGC-ISS/build/dbt-rise-tgc/tgc-sim -w tcc --dockerless --backend tcc
2024-03-24 17:29:17 +01:00
2024-03-24 17:59:36 +01:00
- name: Test asmjit backend
continue-on-error: true
id: asmjit
2024-03-24 18:21:23 +01:00
run: |
mkdir asmjit
python3 TGC-COMPLIANCE/run_act.py -core TGC5C -sim TGC-ISS/build/dbt-rise-tgc/tgc-sim -w asmjit --dockerless --backend asmjit
2024-04-22 20:36:03 +02:00
- name: Indicate Failure
run: |
2024-04-22 20:36:50 +02:00
echo ${{ failure() }}
echo "Failure detected"
exit ${{ failure() }}
2024-04-22 20:36:03 +02:00
2024-04-22 20:20:55 +02:00
- name: Indicate Failure 2
2024-04-22 20:19:18 +02:00
if: ${{ failure() }}
2024-04-22 20:36:03 +02:00
run: echo "Failure detected"
- name: Indicate Failure 3
if: steps.tcc.outcome != 'success'
run: echo "Failure detected"