Skip to content

Use workflow_dispatch to trigger binding tests #9

Use workflow_dispatch to trigger binding tests

Use workflow_dispatch to trigger binding tests #9

name: Extended Binding Tests
on:
pull_request:
types: [opened, synchronize, reopened, labeled]
branches:
- master
concurrency:
# Cancels pending runs when a PR gets updated.
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
permissions: write-all
jobs:
binding-refs:
if: contains(github.event.pull_request.labels.*.name, 'PR-testing')
uses: ./.github/workflows/pr-binding-refs.yml
with:
pull_request: ${{ github.event.pull_request.number }}
openjdk:
runs-on: ubuntu-22.04
needs: binding-refs
if: contains(github.event.pull_request.labels.*.name, 'PR-testing')
steps:
- name: Split owner/repo
id: split-repo
run: |
owner=$(echo "${{ needs.binding-refs.outputs.openjdk_binding_repo }}" | cut -d'/' -f1)
repo=$(echo "${{ needs.binding-refs.outputs.openjdk_binding_repo}}" | cut -d'/' -f2)
echo "owner=$owner" >> $GITHUB_OUTPUT
echo "repo=$repo" >> $GITHUB_OUTPUT
# - name: Invoke binding workflows
# uses: convictional/trigger-workflow-and-wait@v1.6.5
# with:
# owner: ${{ steps.split-repo.outputs.owner }}
# repo: ${{ steps.split-repo.outputs.repo }}
# ref: ${{ needs.binding-refs.outputs.openjdk_binding_ref }}
# github_token: ${{ secrets.GITHUB_TOKEN }}
# workflow_file_name: test-core-extended.yml
# client_payload: '{ "mmtk-core-repo": "${{ github.repository }}", "mmtk-core-ref": "${{ github.sha }}" }'
# wait_workflow: true
# wait_interval: 300
- name: Trigger Workflow
uses: actions/github-script@v6
with:
script: |
github.rest.actions.createWorkflowDispatch({
owner: '${{ steps.split-repo.outputs.owner }}',
repo: '${{ steps.split-repo.outputs.repo }}',
workflow_id: 'test-core-extended.yml',
ref: '${{ needs.binding-refs.outputs.openjdk_binding_ref }}',
})