constellation/.github/workflows/update-cli-reference.yml
Paul Meyer 411dfed18f ci: unified order and style of workflows/actions
Signed-off-by: Paul Meyer <49727155+katexochen@users.noreply.github.com>
2023-01-18 10:57:42 +01:00

68 lines
2.5 KiB
YAML

name: Publish CLI reference to documentation
on:
workflow_dispatch:
push:
branches:
- main
paths:
- "cli/cmd/**"
- "cli/internal/cmd/**"
- "hack/clidocgen/**"
jobs:
publish-to-docs:
runs-on: ubuntu-22.04
steps:
- name: Checkout Constellation
uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0
with:
ref: ${{ !github.event.pull_request.head.repo.fork && github.head_ref || '' }}
- name: Setup Go environment
uses: actions/setup-go@6edd4406fa81c3da01a34fa6f6343087c207a568 # v3.5.0
with:
go-version: "1.19.5"
cache: true
- name: Generate reference docs
working-directory: hack/clidocgen
run: go run . | cat header.md - > ../../cli.md
- name: Get commit sha
run: |
echo "COMMIT_END=$(echo ${{ github.sha }} | cut -c1-8)" >> "$GITHUB_ENV"
- name: Check if action branch exists
run: |
ex="$(git ls-remote --heads origin action/constellation/update-cli-reference)"
echo "EXISTS=$(if [[ -z "$ex" ]]; then echo 0; else echo 1; fi)" >> "$GITHUB_ENV"
- name: Publish new reference (create new branch)
if: env.EXISTS == 0
uses: dmnemec/copy_file_to_another_repo_action@c93037aa10fa8893de271f19978c980d0c1a9b37 # tag=v1.1.1
with:
source_file: "cli.md"
destination_repo: "edgelesssys/constellation"
destination_branch_create: "action/constellation/update-cli-reference"
destination_folder: "docs/docs/reference"
user_name: "${{ github.actor }}"
user_email: "${{ github.actor }}@users.noreply.github.com"
commit_message: "CLI reference was updated by edgelesssys/constellation@${{ env.COMMIT_END}}"
env:
API_TOKEN_GITHUB: ${{ secrets.CI_GITHUB_REPOSITORY }}
- name: Publish new reference (update branch)
if: env.EXISTS == 1
uses: dmnemec/copy_file_to_another_repo_action@c93037aa10fa8893de271f19978c980d0c1a9b37 # tag=v1.1.1
with:
source_file: "cli.md"
destination_repo: "edgelesssys/constellation"
destination_branch: "action/constellation/update-cli-reference"
destination_folder: "docs/docs/reference"
user_name: "${{ github.actor }}"
user_email: "${{ github.actor }}@users.noreply.github.com"
commit_message: "CLI reference was updated by edgelesssys/constellation@${{ env.COMMIT_END}}"
env:
API_TOKEN_GITHUB: ${{ secrets.CI_GITHUB_REPOSITORY }}