116 lines
4.5 KiB
YAML
116 lines
4.5 KiB
YAML
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"
|