Markdown snippets can be run inside a GitHub Action by installing and using MarkdownSnippets.Tool. This can be useful to ensure md docs are in sync when .source files are edited online, and without needing to re-generate the docs locally.
Add the following to .github\workflows\on-push-do-doco.yml
in the target repository.
name: on-push-do-docs
on:
push:
jobs:
docs:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- name: Run MarkdownSnippets
run: |
dotnet tool install --global MarkdownSnippets.Tool
mdsnippets ${GITHUB_WORKSPACE}
shell: bash
- name: Push changes
run: |
git config --local user.email "[email protected]"
git config --local user.name "GitHub Action"
git commit -m "Docs changes" -a || echo "nothing to commit"
remote="https://${GITHUB_ACTOR}:${{secrets.GITHUB_TOKEN}}@github.com/${GITHUB_REPOSITORY}.git"
branch="${GITHUB_REF:11}"
git push "${remote}" ${branch} || echo "nothing to push"
shell: bash
This action performs the following tasks:
- Use the Checkout Action to pull down the source
- Install the MarkdownSnippets dotnet tool
- Run MarkdownSnippets against the current directory
- Push any changes back to GitHub