| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- # This workflow will do a clean installation of node dependencies, cache/restore them, build the source code and run tests across different versions of node
- # For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-nodejs
-
- name: Build docs and deploy to github pages.
-
- on:
- # Runs on pushes targeting the default branch
- push:
- branches: ["master"]
-
- # Allows you to run this workflow manually from the Actions tab
- workflow_dispatch:
-
- # Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
- permissions:
- contents: read
- pages: write
- id-token: write
-
- # Allow one concurrent deployment
- concurrency:
- group: "pages"
- cancel-in-progress: true
-
- jobs:
- build-and-deploy:
- environment:
- name: github-pages
- url: ${{ steps.deployment.outputs.page_url }}
-
- runs-on: ubuntu-latest
-
- strategy:
- matrix:
- node-version: [18.x]
- # See supported Node.js release schedule at https://nodejs.org/en/about/releases/
-
- steps:
- - uses: actions/checkout@v4
- - uses: actions/setup-node@v4
- with:
- node-version: ${{ matrix.node-version }}
- cache: 'npm'
- cache-dependency-path: '**/package-lock.json' # https://github.com/actions/setup-node/blob/main/docs/advanced-usage.md#caching-packages-data
- - run: npm ci # this will also run `npm run prepare` which will build # todo use --cache .npm
- - run: npm run docs
- - run: mkdir _site
- - run: mv -t _site src docs dist examples README.md LICENSE
- - run: cp -r website/.vitepress/dist/* _site
- - run: mkdir -p _site/plugins
- - run: find plugins -maxdepth 2 -type d \( -name dist -o -name docs -o -name src \) -exec sh -c "mkdir -p _site/{} && cp -r {} _site/{}/.." \;
- - name: Upload artifact
- uses: actions/upload-pages-artifact@v3
- with:
- path: '_site'
- - name: Deploy to GitHub Pages
- id: deployment
- uses: actions/deploy-pages@v4
|