Files
nvbench/.github/workflows/build-and-test-linux.yml
2024-04-04 21:42:43 +00:00

48 lines
1.3 KiB
YAML

name: build and test
defaults:
run:
shell: bash -exo pipefail {0}
on:
workflow_call:
inputs:
cpu: {type: string, required: true}
test_name: {type: string, required: false}
build_script: {type: string, required: false}
test_script: {type: string, required: false}
container_image: {type: string, required: false}
run_tests: {type: boolean, required: false, default: true}
permissions:
contents: read
jobs:
build:
name: Build ${{inputs.test_name}}
permissions:
id-token: write
contents: read
uses: ./.github/workflows/run-as-coder.yml
with:
name: Build ${{inputs.test_name}}
runner: linux-${{inputs.cpu}}-cpu16
image: ${{ inputs.container_image }}
command: |
${{ inputs.build_script }}
test:
needs: build
permissions:
id-token: write
contents: read
if: ${{ !cancelled() && ( needs.build.result == 'success' || needs.build.result == 'skipped' ) && inputs.run_tests}}
name: Test ${{inputs.test_name}}
uses: ./.github/workflows/run-as-coder.yml
with:
name: Test ${{inputs.test_name}}
runner: linux-${{inputs.cpu}}-gpu-v100-latest-1
image: ${{inputs.container_image}}
command: |
${{ inputs.test_script }}