Skip to content

docs-deploy

docs-deploy #115

Workflow file for this run

name: "docs-deploy"
concurrency: "docs-deploy"
on:
push:
branches:
- v1
paths:
- 'docs/**'
workflow_run:
branches: [ v1 ]
workflows: [ 'release' ]
types: [ completed ]
workflow_dispatch:
env:
VSTEST_CONNECTION_TIMEOUT: 180
DOTNET_SKIP_FIRST_TIME_EXPERIENCE: 1
DOTNET_NOLOGO: true
DOTNET_SYSTEM_CONSOLE_ALLOW_ANSI_COLOR_REDIRECTION: 1
TERM: xterm
jobs:
deploy:
name: 📃 Deploy new version bunit.dev
if: github.ref == 'refs/heads/v1' || ${{ github.event.workflow_run.conclusion == 'success' }}
runs-on: ubuntu-latest
steps:
- name: 🛒 Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0
token: ${{ secrets.BUNIT_BOT_TOKEN }}
- name: ⚙️ Import GPG key
id: import_gpg
uses: crazy-max/ghaction-import-gpg@v6
with:
gpg_private_key: ${{ secrets.BUNIT_BOT_GPG_PRIVATE_KEY }}
passphrase: ${{ secrets.BUNIT_BOT_GPG_KEY_PASSPHRASE }}
- name: ⚙️ Setup CI GIT
run: |
git config user.name "${{ steps.import_gpg.outputs.name }}"
git config user.email ${{ steps.import_gpg.outputs.email }}
git config --global user.signingkey ${{ steps.import_gpg.outputs.keyid }}
git config --global commit.gpgsign true
- name: ⚙️ Setup GIT versioning
uses: dotnet/[email protected]
id: nbgv
with:
setAllVars: true
- name: 🛠️ Get Changelog Entry
id: changelog_reader
uses: mindsers/changelog-reader-action@v2
with:
path: ./CHANGELOG.md
- name: 🛠️ Update tokens in files
uses: cschleiden/replace-tokens@v1
with:
files: '["docs/site/*.md", "docs/**/*.md", "docs/**/docfx.json", "*.csproj", "**/*.csproj", "src/Directory.Build.props"]'
env:
RELEASE_VERSION: ${{ steps.changelog_reader.outputs.version }}
RELEASE_NOTES: ${{ steps.changelog_reader.outputs.changes }}
- name: ⚙️ Setup dotnet versions
uses: actions/setup-dotnet@v4
with:
dotnet-version: |
8.0.x
9.0.x
- name: 🎨 Setup color
run: |
echo "DOTNET_SYSTEM_CONSOLE_ALLOW_ANSI_COLOR_REDIRECTION=1" >> $GITHUB_ENV
echo "TERM=xterm" >> $GITHUB_ENV
- name: 🛠️ Building bUnit
run: dotnet build /p:PublicRelease=true -c release
- name: 🛠️ Verify docs samples
run: dotnet test docs/samples/samples.sln
- name: 📄 Building docs
working-directory: ./docs/site
run: |
dotnet tool install --global docfx --version 2.74.1
docfx metadata --logLevel error
docfx build
- name: 🛠️ Deploy to GitHub Pages
if: success()
uses: crazy-max/ghaction-github-pages@v4
with:
build_dir: docs/site/_site
fqdn: bunit.dev
repo: bUnit-dev/v1.bunit.dev
target_branch: main
keep_history: false
jekyll: false
committer: "bUnit bot <[email protected]>"
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GH_PAT: ${{ secrets.BUNIT_BOT_TOKEN }}