2021-06-12 16:27:10 +00:00
|
|
|
name: Documentation
|
2021-08-09 21:21:21 +00:00
|
|
|
|
2021-06-12 16:27:10 +00:00
|
|
|
on:
|
2021-08-09 21:21:21 +00:00
|
|
|
# trigger deployment on every push to main branch
|
2021-06-12 16:27:10 +00:00
|
|
|
push:
|
|
|
|
branches:
|
|
|
|
- main
|
2021-08-09 21:21:21 +00:00
|
|
|
# trigger deployment manually
|
|
|
|
workflow_dispatch:
|
2021-06-12 16:27:10 +00:00
|
|
|
|
|
|
|
jobs:
|
2021-08-09 21:21:21 +00:00
|
|
|
docs:
|
2021-06-12 16:27:10 +00:00
|
|
|
runs-on: ubuntu-latest
|
2021-08-09 21:21:21 +00:00
|
|
|
|
2021-06-12 16:27:10 +00:00
|
|
|
steps:
|
2021-08-09 21:21:21 +00:00
|
|
|
- uses: actions/checkout@v2.3.4
|
2021-06-12 16:27:10 +00:00
|
|
|
with:
|
2021-08-09 21:21:21 +00:00
|
|
|
# fetch all commits to get last updated time or other git log info
|
2021-06-12 16:27:10 +00:00
|
|
|
fetch-depth: 0
|
|
|
|
|
2021-08-09 21:21:21 +00:00
|
|
|
- name: Setup Node.js
|
|
|
|
uses: actions/setup-node@v1
|
|
|
|
with:
|
|
|
|
# choose node.js version to use
|
|
|
|
node-version: '14'
|
|
|
|
|
|
|
|
# cache node_modules
|
|
|
|
- name: Cache dependencies
|
|
|
|
uses: actions/cache@v2
|
|
|
|
id: yarn-cache
|
|
|
|
with:
|
|
|
|
path: |
|
|
|
|
**/node_modules
|
|
|
|
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
|
|
|
|
restore-keys: |
|
|
|
|
${{ runner.os }}-yarn-
|
|
|
|
|
|
|
|
# install dependencies if the cache did not hit
|
|
|
|
- name: Install dependencies
|
|
|
|
if: steps.yarn-cache.outputs.cache-hit != 'true'
|
|
|
|
run: yarn --frozen-lockfile
|
|
|
|
|
|
|
|
# run build script
|
|
|
|
- name: Build VuePress site
|
|
|
|
run: yarn docs:build
|
2021-06-12 16:27:10 +00:00
|
|
|
|
2021-08-09 21:21:21 +00:00
|
|
|
# please check out the docs of the workflow for more details
|
|
|
|
# @see https://github.com/crazy-max/ghaction-github-pages
|
|
|
|
- name: Deploy to GitHub Pages
|
|
|
|
uses: crazy-max/ghaction-github-pages@v2
|
2021-06-12 16:27:10 +00:00
|
|
|
with:
|
2021-08-09 21:21:21 +00:00
|
|
|
# deploy to gh-pages branch
|
|
|
|
target_branch: gh-pages
|
|
|
|
# deploy the default output dir of VuePress
|
|
|
|
build_dir: docs/.vuepress/dist
|
|
|
|
env:
|
|
|
|
# @see https://docs.github.com/en/actions/reference/authentication-in-a-workflow#about-the-github_token-secret
|
|
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|