84 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			84 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
| name: Build Documentation
 | |
| 
 | |
| on:
 | |
|   pull_request:
 | |
|     branches:
 | |
|       - main
 | |
|     paths:
 | |
|       - '.github/workflows/build-docs.yml'
 | |
|       - 'docs/**'
 | |
|       - 'src/**'
 | |
|       - '*.json'
 | |
|       - '*.js'
 | |
|       - '*.lock'
 | |
|   push:
 | |
|     branches:
 | |
|       - main
 | |
|     paths:
 | |
|       - '.github/workflows/build-docs.yml'
 | |
|       - 'docs/**'
 | |
|       - 'src/**'
 | |
|       - '*.json'
 | |
|       - '*.js'
 | |
|       - '*.lock'
 | |
| 
 | |
| jobs:
 | |
|   checks:
 | |
|     if: github.event_name != 'push'
 | |
|     name: Build Documentation
 | |
|     runs-on: ubuntu-latest
 | |
|     steps:
 | |
|       - uses: actions/checkout@v2
 | |
| 
 | |
|       - name: Get yarn cache directory path
 | |
|         id: yarn-cache-dir-path
 | |
|         run: echo "::set-output name=dir::$(yarn cache dir)"
 | |
|       - uses: actions/cache@v2
 | |
|         id: yarn-cache
 | |
|         with:
 | |
|           path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
 | |
|           key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
 | |
|           restore-keys: |
 | |
|             ${{ runner.os }}-yarn-
 | |
| 
 | |
|       - name: Test Docs Build
 | |
|         run: |
 | |
|           yarn install --frozen-lockfile
 | |
|           cd docs
 | |
|           yarn install --frozen-lockfile
 | |
|           yarn build
 | |
|   gh-release:
 | |
|     if: github.event_name != 'pull_request'
 | |
|     name: Build & Release Documentation
 | |
|     runs-on: ubuntu-latest
 | |
|     steps:
 | |
|       - uses: actions/checkout@v2
 | |
| 
 | |
|       - name: Get yarn cache directory path
 | |
|         id: yarn-cache-dir-path
 | |
|         run: echo "::set-output name=dir::$(yarn cache dir)"
 | |
|       - name: Restore node_modules from cache
 | |
|         uses: actions/cache@v2
 | |
|         id: yarn-cache
 | |
|         with:
 | |
|           path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
 | |
|           key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
 | |
|           restore-keys: |
 | |
|             ${{ runner.os }}-yarn-
 | |
| 
 | |
|       - name: Release to GitHub Pages
 | |
|         env:
 | |
|           USE_SSH: true
 | |
|           GIT_USER: github-actions
 | |
|           CURRENT_BRANCH: main
 | |
|           DEPLOYMENT_BRANCH: gh-pages
 | |
|           github_token: ${{ secrets.GITHUB_TOKEN }}
 | |
|         run: |
 | |
|           date > generated.txt
 | |
|           git config user.name github-actions
 | |
|           git config user.email github-actions@github.com
 | |
|           yarn install --frozen-lockfile
 | |
|           cd docs
 | |
|           yarn install --frozen-lockfile
 | |
|           yarn deploy
 |