Skip to content

Feat/docs auto updater #107

Feat/docs auto updater

Feat/docs auto updater #107

Workflow file for this run

# Check docs are up-to-date only on pull request.
# Succeeds if it is.
# Fail if not, generates a new version then commits it.
name: Docs synchronizer
on:
pull_request:
branches: [master]
workflow_dispatch:
jobs:
docs-synch:
name: Auto-updates docs on pull requests when needed
runs-on: ubuntu-latest
permissions:
# Give the default GITHUB_TOKEN write permission to commit and push the changed files back to the repository.
contents: write
steps:
- uses: actions/checkout@v4
with:
ref: ${{ github.head_ref }}
- uses: actions/setup-go@v4
with:
go-version: '1.21'
- name: Get dependencies
run: go mod download
- name: Install tfplugindocs
run: go install github.com/hashicorp/terraform-plugin-docs/cmd/tfplugindocs
- name: Run tfplugindocs
run: go generate ./...
- name: Fail if any files changed
shell: bash
run: |
if [[ $(git status --porcelain=v1 docs/ | wc -l) -ne 0 ]]; then
echo "docs/ needs an update"
echo "Changed files:"
git diff docs/
git status docs/
exit 1
fi
- name: Commit docs update
if: |
failure()
uses: stefanzweifel/git-auto-commit-action@v5
with:
commit_message: auto-update documentations
file_pattern: 'docs/'
commit_user_name: Docs synchronizer Bot
commit_user_email: git-auto-commit-action@gusers.noreply.github.com