Skip to content

Auto generate and publish CLI docs on each release #888

Auto generate and publish CLI docs on each release

Auto generate and publish CLI docs on each release #888

Workflow file for this run

name: Continuous Integration
on:
pull_request:
workflow_dispatch:
release:
types: [published]
jobs:
update:
runs-on: ubuntu-latest
defaults:
run:
shell: bash
steps:
- name: Get user info from GitHub API
id: get_user
run: |
echo "GitHub actor: ${{ github.actor }}"
# Query the GitHub API for the user's details.
curl -s -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \
https://api.github.com/users/${{ github.actor }} > user.json
# Extract the user's full name if available, default to the username otherwise.
git_name=$(jq -r '.name // empty' user.json)
if [ -z "$git_name" ]; then
git_name="${{ github.actor }}"
fi
git_email="${{ github.actor }}@users.noreply.github.com"
# Set the outputs for subsequent steps.
echo "GIT_NAME=$git_name" >> $GITHUB_OUTPUT
echo "GIT_EMAIL=$git_email" >> $GITHUB_OUTPUT
BRANCH_NAME="cli-update-docs-${{ github.ref_name }}"
echo "BRANCH_NAME=${BRANCH_NAME%/merge}" >> $GITHUB_OUTPUT
- name: Generate token
id: generate_token
uses: actions/create-github-app-token@v1
with:
app-id: ${{ secrets.TEMPORAL_CICD_APP_ID }}
private-key: ${{ secrets.TEMPORAL_CICD_PRIVATE_KEY }}
owner: ${{ github.repository_owner }}
repositories: documentation # generate a token with permissions to trigger GHA in documentation repo
# TODO: change this to main once docs side PR lands in main
- name: Trigger Documentation Workflow
env:
GITHUB_TOKEN: ${{ steps.generate_token.outputs.token }}
run: |
gh workflow run update-cli-docs.yml \
-R temporalio/documentation \
-r cli-docs-autoupdate \
-f cli_branch="${{ steps.get_user.outputs.BRANCH_NAME }}" \
-f commit_author="${{ steps.get_user.outputs.GIT_NAME }}" \
-f commit_author_email="${{ steps.get_user.outputs.GIT_EMAIL }}" \
-f commit_message="Update CLI docs for release ${{ github.ref_name }}"