diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 0000000000000..e5ed887a46c34 --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,66 @@ +name: build-test +on: + # makes workflow reusable + workflow_call: + inputs: + build_label: + description: "requested runner label (specifies instance)" + type: string + required: true + timeout: + description: "time limit for run in minutes " + type: string + required: true + gitref: + description: "git commit hash or branch name" + type: string + required: true + Gi_per_thread: + description: 'requested GiB to reserve per thread' + type: string + required: true + python: + description: "python version, e.g. 3.10.12" + type: string + required: true + + # makes workflow manually callable + workflow_dispatch: + inputs: + build_label: + description: "requested runner label (specifies instance)" + type: string + required: true + timeout: + description: "time limit for run in minutes " + type: string + required: true + gitref: + description: "git commit hash or branch name" + type: string + required: true + Gi_per_thread: + description: 'requested GiB to reserve per thread' + type: string + required: true + python: + description: "python version, e.g. 3.10.12" + type: string + required: true + +jobs: + + BUILD: + + runs-on: ${{ inputs.build_label }} + timeout-minutes: ${{ fromJson(inputs.timeout) }} + + steps: + + - name: checkout + id: checkout + uses: actions/checkout@v4 + with: + fetch-depth: 0 + ref: ${{ inputs.gitref }} + submodules: recursive diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml new file mode 100644 index 0000000000000..697ae9eca7aca --- /dev/null +++ b/.github/workflows/test.yml @@ -0,0 +1,74 @@ +name: build-test +on: + # makes workflow reusable + workflow_call: + inputs: + test_label: + description: "requested runner label (specifies instance)" + type: string + required: true + timeout: + description: "time limit for run in minutes " + type: string + required: true + gitref: + description: "git commit hash or branch name" + type: string + required: true + python: + description: "python version, e.g. 3.10.12" + type: string + required: true + whl: + description: "whl to test (variable appears late binding so unusable outside 'download artifact')" + type: string + required: true + test_skip_list: + description: 'file containing tests to skip' + type: string + required: true + + # makes workflow manually callable + workflow_dispatch: + inputs: + test_label: + description: "requested runner label (specifies instance)" + type: string + required: true + timeout: + description: "time limit for run in minutes " + type: string + required: true + gitref: + description: "git commit hash or branch name" + type: string + required: true + python: + description: "python version, e.g. 3.10.12" + type: string + required: true + whl: + description: "whl to test (variable appears late binding so unusable outside 'download artifact')" + type: string + required: true + test_skip_list: + description: 'file containing tests to skip' + type: string + required: true + +jobs: + + TEST: + + runs-on: ${{ inputs.test_label }} + timeout-minutes: ${{ fromJson(inputs.timeout) }} + + steps: + + - name: checkout + id: checkout + uses: actions/checkout@v4 + with: + fetch-depth: 0 + ref: ${{ inputs.gitref }} + submodules: recursive