name: Notify External Repositories on: workflow_call: inputs: duckdb-sha: description: 'Vendor Specific DuckDB SHA' required: false default: '' type: 'string' target-branch: description: 'Which Branch to Target' required: true default: '' type: 'string' triggering-event: description: 'Which event triggered the run' default: '' type: 'string' should-publish: description: 'Should the called workflow push updates or not' default: 'false' type: 'string' is-success: description: 'True, if all the builds in InvokeCI had succeeded' default: 'false' type: 'string' override-git-describe: description: 'The name of the release tag, used for release builds' required: false default: '' type: string workflow_dispatch: inputs: duckdb-sha: description: 'Vendor Specific DuckDB SHA' required: false default: '' type: 'string' target-branch: description: 'Which Branch to Target' required: true default: '' type: 'string' triggering-event: description: 'Which event triggered the run' default: '' type: 'string' should-publish: description: 'Should the called workflow push updates' default: 'false' type: 'string' is-success: description: 'True, if all the builds in InvokeCI had succeeded' default: 'false' type: 'string' override-git-describe: description: 'The name of the release tag, used for release builds' required: false default: '' type: string concurrency: group: ${{ github.workflow }} cancel-in-progress: false env: PAT_USER: ${{ secrets.PAT_USERNAME }} PAT_TOKEN: ${{ secrets.PAT_TOKEN }} jobs: notify-odbc-run: name: Run ODBC Vendor runs-on: ubuntu-latest if: ${{ inputs.is-success == 'true' && inputs.override-git-describe == '' }} steps: - name: Run ODBC Vendor if: ${{ github.repository == 'duckdb/duckdb' }} run: | export URL=https://api.github.com/repos/duckdb/duckdb-odbc/actions/workflows/Vendor.yml/dispatches export DATA='{"ref": "${{ inputs.target-branch }}", "inputs": {"duckdb-sha": "${{ inputs.duckdb-sha }}"}}' curl -v -XPOST -u "${PAT_USER}:${PAT_TOKEN}" -H "Accept: application/vnd.github.everest-preview+json" -H "Content-Type: application/json" $URL --data "$DATA" notify-jdbc-run: name: Run JDBC Vendor runs-on: ubuntu-latest if: ${{ inputs.is-success == 'true' && inputs.override-git-describe == '' }} steps: - name: Run JDBC Vendor if: ${{ github.repository == 'duckdb/duckdb' }} run: | export URL=https://api.github.com/repos/duckdb/duckdb-java/actions/workflows/Vendor.yml/dispatches export DATA='{"ref": "${{ inputs.target-branch }}", "inputs": {"duckdb-sha": "${{ inputs.duckdb-sha }}"}}' curl -v -XPOST -u "${PAT_USER}:${PAT_TOKEN}" -H "Accept: application/vnd.github.everest-preview+json" -H "Content-Type: application/json" $URL --data "$DATA" notify-nightly-build-status: name: Run Nightly build status runs-on: ubuntu-latest steps: - name: Run Nightly build status if: ${{ github.repository == 'duckdb/duckdb' }} run: | export URL=https://api.github.com/repos/duckdb/duckdb-build-status/actions/workflows/NightlyBuildsCheck.yml/dispatches export DATA='{"ref": "${{ inputs.target-branch }}", "inputs": {"event": "${{ inputs.triggering-event }}", "should_publish": "${{ inputs.should-publish }}"}}' curl -v -XPOST -u "${PAT_USER}:${PAT_TOKEN}" -H "Accept: application/vnd.github.everest-preview+json" -H "Content-Type: application/json" $URL --data "$DATA" notify-python-nightly: name: Dispatch Python nightly build runs-on: ubuntu-latest steps: - name: Call /dispatch if: ${{ github.repository == 'duckdb/duckdb' && inputs.override-git-describe == '' }} run: | export URL=https://api.github.com/repos/duckdb/duckdb-python/actions/workflows/release.yml/dispatches export DATA='{"ref": "${{ inputs.target-branch }}", "inputs": {"duckdb-sha": "${{ inputs.duckdb-sha }}", "pypi-index": "prod" }}' curl -v -XPOST -u "${PAT_USER}:${PAT_TOKEN}" -H "Accept: application/vnd.github.everest-preview+json" -H "Content-Type: application/json" $URL --data "$DATA"