123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- name: Build and Deploy
- on:
- push:
- branches: [ "master"]
- pull_request:
- branches: [ "master" ]
- jobs:
- ensure-toolchain:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v3
-
- - name: Setup Node.js environment
- uses: actions/[email protected]
- with:
- node-version: "20.11.0"
-
- - name: Cache dependencies
- id: cache-node-modules
- uses: actions/cache@v3
- env:
- cache-name: cache-node-modules
- with:
- path: ./node_modules
- key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('package.json') }}
-
- - name: echo node version
- run: node -v
-
- - if: ${{ steps.cache-node-modules.outputs.cache-hit != 'true' }}
- name: Install dependencies
- continue-on-error: true
- run: |
- sudo apt update && sudo apt install -y build-essential
- source ~/.bashrc
- npm install
-
- build-and-deploy:
- permissions:
- contents: write
- runs-on: ubuntu-latest
- needs: [ensure-toolchain]
- steps:
- - uses: actions/checkout@v3
- - name: Cache dependencies
- id: cache-node-modules
- uses: actions/cache@v3
- env:
- cache-name: cache-node-modules
- with:
- path: ./node_modules
- key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('package.json') }}
-
- - name: Setup Node.js environment
- uses: actions/[email protected]
- with:
- node-version: "20.11.0"
-
- - name: Build
- run: npm run docs:build
-
- - name: Set CNAME
- run: echo 'community.dragonos.org' > ./.vuepress/dist/CNAME
-
- - name: Deploy
- uses: peaceiris/actions-gh-pages@v4
- if: github.ref == 'refs/heads/master'
- with:
- github_token: ${{ secrets.GITHUB_TOKEN }}
- publish_dir: ./.vuepress/dist
-
|