Run-Frequent #112
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Run-Frequent | |
# Performs workloads we want to run as frequently as possible | |
# Currently that is building/testing a variety of targets | |
# Current compute time estimate: | |
# ~116 hrs every 6 hours | |
# There are 20 github runners, giving us a hard limit of 120 hrs every 6 hrs | |
on: | |
schedule: | |
# Run 4 times a day | |
- cron: 0 0,6,12,18 * * * | |
workflow_dispatch: | |
branches: | |
- main | |
inputs: | |
gcchash: | |
description: 'GCC Hash' | |
required: true | |
multi_target: | |
description: 'Targets to run (libc:arch-abi;...)' | |
required: true | |
issue_num: | |
description: 'Bisection Issue Number (Optional)' | |
required: false | |
jobs: | |
init-submodules: | |
uses: ./.github/workflows/init-submodules.yaml | |
creg: # Check Regressions. Short name so I can see the matrix string in github | |
needs: [init-submodules] | |
strategy: | |
fail-fast: false | |
matrix: | |
mode: [newlib, linux] | |
target: | |
[ | |
rv32gc-ilp32d, | |
rv64gc-lp64d, | |
rv32gc_zba_zbb_zbc_zbs-ilp32d, # rv32 bitmanip | |
rv64gc_zba_zbb_zbc_zbs-lp64d, # rv64 bitmanip | |
] | |
multilib: [non-multilib] | |
uses: ./.github/workflows/build-test.yaml | |
with: | |
mode: ${{ matrix.mode }} | |
target: ${{ matrix.target }} | |
gcchash: ${{ needs.init-submodules.outputs.gcchash }} | |
multilib: ${{ matrix.multilib }} | |
multitarget: ${{ github.event.inputs.multi_target }} | |
run_on_self_hosted: false | |
cmreg-self-hosted: # Check Multilib Regressions. Short name so I can see the matrix string in github | |
needs: [init-submodules] | |
strategy: | |
fail-fast: false | |
matrix: | |
mode: [newlib, linux] | |
target: [rv64gcv-lp64d] # Dummy placeholder. | |
# Actually runs rv32/rv64 multilib: | |
# rv32gcv-ilp32d, # rv32 vector | |
# rv64gcv-lp64d, # rv64 vector | |
# rv64gcv_zvbb_zvbc_zvkg_zvkn_zvknc_zvkned_zvkng_zvknha_zvknhb_zvks_zvksc_zvksed_zvksg_zvksh_zvkt-lp64d, # rv64 vector crypto | |
# rv64imafdcv_zicond_zawrs_zbc_zvkng_zvksg_zvbb_zvbc_zicsr_zba_zbb_zbs_zicbom_zicbop_zicboz_zfhmin_zkt_zfh_zfa_zihintpause-lp64d, # RVA23U64 profile with optional extensions, excluding unsupported extensions | |
multilib: [multilib] | |
uses: ./.github/workflows/build-test.yaml | |
with: | |
mode: ${{ matrix.mode }} | |
target: ${{ matrix.target }} | |
gcchash: ${{ needs.init-submodules.outputs.gcchash }} | |
multilib: ${{ matrix.multilib }} | |
multitarget: ${{ github.event.inputs.multi_target }} | |
run_on_self_hosted: true | |
summarize: | |
if: "!cancelled()" # Generate github issues even when some (or all) targets fail to build | |
needs: [init-submodules, creg, cmreg-self-hosted] | |
permissions: | |
issues: write | |
uses: ./.github/workflows/generate-summary.yaml | |
with: | |
gcchash: ${{ needs.init-submodules.outputs.gcchash }} | |
issue_num: ${{ github.event.inputs.issue_num }} |