name: documents on: # trigger deployment on every push to main branch push: branches: [master] # trigger deployment manually workflow_dispatch: jobs: docs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 with: # fetch all commits to get last updated time or other git log info fetch-depth: 0 - name: Setup Node.js uses: actions/setup-node@v1 with: # choose node.js version to use node-version: '18' # cache node_modules - name: Cache dependencies uses: actions/cache@v2 id: npm-cache with: path: | **/node_modules key: ${{ runner.os }}-npm-${{ hashFiles('**/package-lock.json') }} restore-keys: | ${{ runner.os }}-npm- # install dependencies if the cache did not hit - name: Install dependencies if: steps.npm-cache.outputs.cache-hit != 'true' run: npm i # run build script - name: Build VitePress site run: npm run docs:build # 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@v3 with: # deploy to gh-pages branch target_branch: gh-pages # deploy the default output dir of VitePress build_dir: docs/.vitepress/dist jekyll: false fqdn: 'vutron.jooy2.com' env: # @see https://docs.github.com/en/actions/reference/authentication-in-a-workflow#about-the-github_token-secret GITHUB_TOKEN: ${{ secrets.ACCESS_TOKEN }}