nonebot2/.github/workflows/website-deploy.yml

84 lines
2.4 KiB
YAML
Raw Normal View History

name: Build Upload Site
on:
push:
2021-12-02 03:17:10 +08:00
pull_request:
jobs:
publish:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
2021-02-21 10:52:37 +08:00
if: github.event_name == 'push'
- uses: actions/checkout@v2
if: github.event_name != 'push'
with:
ref: ${{ github.event.pull_request.head.sha }}
2021-12-02 14:03:06 +08:00
- name: Set up Python
uses: actions/setup-python@v2
with:
python-version: 3.8
architecture: "x64"
- uses: Gr1N/setup-poetry@v4
- uses: actions/cache@v1
with:
path: ~/.cache/pypoetry/virtualenvs
key: ${{ runner.os }}-poetry-${{ hashFiles('**/poetry.lock') }}
- name: Setup Node
uses: actions/setup-node@v1
with:
node-version: "16"
- name: Get yarn cache directory path
id: yarn-cache-dir-path
run: echo "::set-output name=dir::$(yarn cache dir)"
- name: Cache Packages
uses: actions/cache@v2
with:
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
2021-12-02 03:17:10 +08:00
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
- name: Install and build
run: |
2021-12-02 14:03:06 +08:00
poetry install -E all
poetry run sphinx-build -M markdown ./docs_build ./build
cp -r ./build/markdown/* ./website/docs/api/
yarn install
yarn prettier
yarn build
2021-02-10 11:38:56 +08:00
- name: Get Branch Name
2021-02-10 11:52:34 +08:00
run: echo "BRANCH_NAME=$(echo ${GITHUB_REF#refs/heads/})" >> $GITHUB_ENV
2021-02-10 11:38:56 +08:00
2021-02-10 13:53:41 +08:00
- name: Get Deploy Name
if: github.event_name == 'push'
2021-02-23 10:08:32 +08:00
run: |
echo "DEPLOY_NAME=${{ env.BRANCH_NAME }}" >> $GITHUB_ENV
echo "PRODUCTION=${{ env.BRANCH_NAME == 'master' }}" >> $GITHUB_ENV
2021-02-10 13:53:41 +08:00
- name: Get Deploy Name
if: github.event_name != 'push'
2021-02-23 10:08:32 +08:00
run: |
echo "DEPLOY_NAME=deploy-preview-${{ github.event.number }}" >> $GITHUB_ENV
echo "PRODUCTION=false" >> $GITHUB_ENV
2021-02-10 13:53:41 +08:00
2021-02-10 12:58:24 +08:00
- name: Deploy to Netlify
uses: nwtgck/actions-netlify@v1.1
with:
2021-12-02 03:17:10 +08:00
publish-dir: './website/build'
2021-02-23 10:08:32 +08:00
production-deploy: ${{ env.PRODUCTION }}
2021-02-10 12:58:24 +08:00
github-token: ${{ secrets.GITHUB_TOKEN }}
2021-02-21 10:52:37 +08:00
deploy-message: 'Deploy ${{ env.DEPLOY_NAME }}@${{ github.sha }}'
enable-commit-comment: false
2021-02-10 13:53:41 +08:00
alias: ${{ env.DEPLOY_NAME }}
2021-02-10 13:00:25 +08:00
env:
NETLIFY_AUTH_TOKEN: ${{ secrets.NETLIFY_AUTH_TOKEN }}
NETLIFY_SITE_ID: ${{ secrets.SITE_ID }}