61 lines
2.3 KiB
YAML
61 lines
2.3 KiB
YAML
name: Trigger Documentation Update on Release
|
|
|
|
on:
|
|
# Can be triggered by external workflows using repository_dispatch
|
|
repository_dispatch:
|
|
types: [influxdb3-release]
|
|
|
|
# Can also be triggered via GitHub API
|
|
# Example:
|
|
# curl -X POST \
|
|
# -H "Authorization: token $GITHUB_TOKEN" \
|
|
# -H "Accept: application/vnd.github.v3+json" \
|
|
# https://api.github.com/repos/influxdata/docs-v2/dispatches \
|
|
# -d '{"event_type":"influxdb3-release","client_payload":{"product":"core","version":"3.0.0","previous_version":"2.9.0"}}'
|
|
|
|
jobs:
|
|
trigger-release-workflow:
|
|
name: Trigger Release Documentation
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- name: Validate payload
|
|
run: |
|
|
if [ -z "${{ github.event.client_payload.product }}" ]; then
|
|
echo "Error: product is required in client_payload"
|
|
exit 1
|
|
fi
|
|
|
|
if [ -z "${{ github.event.client_payload.version }}" ]; then
|
|
echo "Error: version is required in client_payload"
|
|
exit 1
|
|
fi
|
|
|
|
if [ -z "${{ github.event.client_payload.previous_version }}" ]; then
|
|
echo "Error: previous_version is required in client_payload"
|
|
exit 1
|
|
fi
|
|
|
|
echo "Received release notification:"
|
|
echo "Product: ${{ github.event.client_payload.product }}"
|
|
echo "Version: ${{ github.event.client_payload.version }}"
|
|
echo "Previous Version: ${{ github.event.client_payload.previous_version }}"
|
|
|
|
- name: Trigger release documentation workflow
|
|
uses: actions/github-script@v7
|
|
with:
|
|
script: |
|
|
await github.rest.actions.createWorkflowDispatch({
|
|
owner: context.repo.owner,
|
|
repo: context.repo.repo,
|
|
workflow_id: 'influxdb3-release.yml',
|
|
ref: 'master',
|
|
inputs: {
|
|
product: '${{ github.event.client_payload.product }}',
|
|
version: '${{ github.event.client_payload.version }}',
|
|
previous_version: '${{ github.event.client_payload.previous_version }}',
|
|
dry_run: '${{ github.event.client_payload.dry_run || 'false' }}'
|
|
}
|
|
});
|
|
|
|
console.log('Successfully triggered release documentation workflow'); |