From 5891ef39226679da22db16713bd36da9e416a3ac Mon Sep 17 00:00:00 2001 From: xrkffgg Date: Mon, 29 Mar 2021 11:30:05 +0800 Subject: [PATCH] ci: update preview (#69) * Create preview-start.yml * Create preview-build.yml * Create preview-deploy.yml * Delete surge-preview.yml --- .github/workflows/preview-build.yml | 40 ++++++++++++ .github/workflows/preview-deploy.yml | 92 ++++++++++++++++++++++++++++ .github/workflows/preview-start.yml | 19 ++++++ .github/workflows/surge-preview.yml | 18 ------ 4 files changed, 151 insertions(+), 18 deletions(-) create mode 100644 .github/workflows/preview-build.yml create mode 100644 .github/workflows/preview-deploy.yml create mode 100644 .github/workflows/preview-start.yml delete mode 100644 .github/workflows/surge-preview.yml diff --git a/.github/workflows/preview-build.yml b/.github/workflows/preview-build.yml new file mode 100644 index 0000000..a7d970d --- /dev/null +++ b/.github/workflows/preview-build.yml @@ -0,0 +1,40 @@ +name: Preview Build + +on: + pull_request: + types: [opened, synchronize, reopened] + +jobs: + build-preview: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + with: + ref: ${{ github.event.pull_request.head.sha }} + + - name: build + run: | + yarn + yarn docs-dev:build + + - run: | + zip -r dist.zip docs-dist + + - name: upload dist artifact + uses: actions/upload-artifact@v2 + with: + name: dist + path: dist.zip + retention-days: 5 + + - name: Save PR number + if: ${{ always() }} + run: echo ${{ github.event.number }} > ./pr-id.txt + + - name: Upload PR number + if: ${{ always() }} + uses: actions/upload-artifact@v2 + with: + name: pr + path: ./pr-id.txt diff --git a/.github/workflows/preview-deploy.yml b/.github/workflows/preview-deploy.yml new file mode 100644 index 0000000..13b2387 --- /dev/null +++ b/.github/workflows/preview-deploy.yml @@ -0,0 +1,92 @@ +name: Preview Deploy + +on: + workflow_run: + workflows: ["Preview Build"] + types: + - completed + +jobs: + success: + runs-on: ubuntu-latest + if: github.event.workflow_run.event == 'pull_request' && github.event.workflow_run.conclusion == 'success' + steps: + - name: download pr artifact + uses: dawidd6/action-download-artifact@v2 + with: + workflow: ${{ github.event.workflow_run.workflow_id }} + name: pr + + - name: save PR id + id: pr + run: echo "::set-output name=id::$( + + + body-include: '' + number: ${{ steps.pr.outputs.id }} + + - name: The job failed + if: ${{ failure() }} + uses: actions-cool/maintain-one-comment@v1.1.0 + with: + token: ${{ secrets.GITHUB_TOKEN }} + body: | + 😭 Deploy PR Preview failed. + + + + + body-include: '' + number: ${{ steps.pr.outputs.id }} + + failed: + runs-on: ubuntu-latest + if: github.event.workflow_run.event == 'pull_request' && github.event.workflow_run.conclusion == 'failure' + steps: + - name: download pr artifact + uses: dawidd6/action-download-artifact@v2 + with: + workflow: ${{ github.event.workflow_run.workflow_id }} + name: pr + + - name: save PR id + id: pr + run: echo "::set-output name=id::$( + + + body-include: '' + number: ${{ steps.pr.outputs.id }} diff --git a/.github/workflows/preview-start.yml b/.github/workflows/preview-start.yml new file mode 100644 index 0000000..a7b001c --- /dev/null +++ b/.github/workflows/preview-start.yml @@ -0,0 +1,19 @@ +name: Preview Start + +on: pull_request_target + +jobs: + preview: + runs-on: ubuntu-latest + steps: + - name: create + uses: actions-cool/maintain-one-comment@v1.1.0 + with: + token: ${{ secrets.GITHUB_TOKEN }} + body: | + ⚡️ Deploying PR Preview... + + + + + body-include: '' diff --git a/.github/workflows/surge-preview.yml b/.github/workflows/surge-preview.yml deleted file mode 100644 index c6aac1f..0000000 --- a/.github/workflows/surge-preview.yml +++ /dev/null @@ -1,18 +0,0 @@ -name: 🔂 Surge PR Preview - -on: pull_request - -jobs: - preview: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v2 - - uses: afc163/surge-preview@v1 - with: - surge_token: ${{ secrets.SURGE_TOKEN }} - github_token: ${{ secrets.GITHUB_TOKEN }} - build: | - yarn - yarn docs-dev:build - dist: docs-dist - teardown: 'true'