name: Build Upload Site on: push: branches: [master, dev] jobs: publish: 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: Cache Packages id: yarn-cache uses: actions/cache@v2 with: path: ${{ steps.yarn-cache-dir-path.outputs.dir }} key: ${{ runner.os }}-yarn-${{ hashFiles('**/package-lock.json') }} restore-keys: | ${{ runner.os }}-yarn- - name: Install and build run: | yarn install yarn build - name: Get Branch Name run: echo "::set-env name=BRANCH_NAME::$(echo ${GITHUB_REF#refs/heads/})" - name: Get Site ID if: env.BRANCH_NAME == 'master' run: | echo "::set-env name=SITE_ID::${{ secrets.PROD_SITE_ID }}" - name: Get Site ID if: env.BRANCH_NAME == 'dev' run: | echo "::set-env name=SITE_ID::${{ secrets.DEV_SITE_ID }}" - name: Publish uses: netlify/actions/cli@master with: args: deploy --dir=docs/.vuepress/dist --prod --message="Production ${BRANCH_NAME}@${{ github.event.push.after }}" env: NETLIFY_SITE_ID: $SITE_ID NETLIFY_AUTH_TOKEN: ${{ secrets.NETLIFY_AUTH_TOKEN }}