Skip to content

Commit

Permalink
Implement automatic API docs generation
Browse files Browse the repository at this point in the history
  • Loading branch information
flobernd committed Nov 20, 2024
1 parent 82d283a commit 520a203
Showing 1 changed file with 71 additions and 0 deletions.
71 changes: 71 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
name: Test

on: [pull_request]

env:
# Configuration
GLOBAL_JSON_FILE: 'global.json'
CACHE_PATTERNS: '["**/*.[cf]sproj*", "**/*.Build.props"]'
# .NET SDK related environment variables
DOTNET_NOLOGO: 1
DOTNET_SKIP_FIRST_TIME_EXPERIENCE: 1
DOTNET_CLI_TELEMETRY_OPTOUT: 1
DOTNET_GENERATE_ASPNET_CERTIFICATE: 0
# Inputs
flavor: 'stack'
solution: 'Packages.Stack.slnf'

jobs:
docfx:
name: 'Generate API Documentation'
runs-on: 'ubuntu-latest'
steps:
- name: 'Parse Version'
id: 'version'
uses: 'zyactions/semver@v1'
with:
version: '0.0.0'
prefixes: 'serverless-'

- name: 'Checkout'
uses: 'actions/checkout@v4'

- name: '.NET Setup'
uses: 'actions/setup-dotnet@v4'
with:
global-json-file: '${{ github.workspace }}/${{ env.GLOBAL_JSON_FILE }}'

- name: 'DocFX Setup'
run: |-
dotnet tool update -g docfx
- name: '.NET Cache Packages'
uses: 'actions/cache@v4'
with:
path: '~/.nuget/packages'
key: '${{ runner.os }}-nuget-${{ env.flavor }}-${{ hashFiles(fromJson(env.CACHE_PATTERNS)) }}'
restore-keys: '${{ runner.os }}-nuget-${{ env.flavor }}-'

- name: '.NET Restore'
run: |-
dotnet restore "${{ github.workspace }}/${{ env.solution }}"
- name: 'DocFx Build'
working-directory: 'docfx'
run: |-
docfx docfx.json
mv ./_site ./../..
- name: 'Checkout'
uses: 'actions/checkout@v4'
with:
ref: 'refdoc'

- name: 'Commit'
run: |-
mv ../_site "./${{ steps.version.outputs.version }}"
git config --global user.name '${{ github.actor }}'
git config --global user.email '${{ github.actor }}@users.noreply.github.com'
git add .
git commit -am "Add ${{ steps.version.outputs.version }}"
git push

0 comments on commit 520a203

Please sign in to comment.