From aa11cd951e5befa779d0f76bec59e3a99dd1526c Mon Sep 17 00:00:00 2001 From: Yang Libin Date: Wed, 24 Nov 2021 23:30:45 +0800 Subject: [PATCH] feat: update preview workflow (#97) * feat: update preview workflow * fix --- .github/workflows/preview-build.yml | 37 ++++++++++++ .github/workflows/preview-deploy.yml | 89 ++++++++++++++++++++++++++++ .github/workflows/preview-start.yml | 17 ++++++ .github/workflows/preview.yml | 20 ------- 4 files changed, 143 insertions(+), 20 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/preview.yml diff --git a/.github/workflows/preview-build.yml b/.github/workflows/preview-build.yml new file mode 100644 index 0000000..6fed82a --- /dev/null +++ b/.github/workflows/preview-build.yml @@ -0,0 +1,37 @@ +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: | + npm install + npm run build:h5-netlify + + - name: upload dist artifact + uses: actions/upload-artifact@v2 + with: + name: dist + path: dist + 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..1fbacd0 --- /dev/null +++ b/.github/workflows/preview-deploy.yml @@ -0,0 +1,89 @@ +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..d790ff9 --- /dev/null +++ b/.github/workflows/preview-start.yml @@ -0,0 +1,17 @@ +name: Preview Start + +on: pull_request_target + +jobs: + preview: + runs-on: ubuntu-latest + steps: + - name: create + uses: actions-cool/maintain-one-comment@v2 + with: + token: ${{ secrets.GITHUB_TOKEN }} + body: | + ⚡️ Deploying PR Preview... + + + body-include: '' diff --git a/.github/workflows/preview.yml b/.github/workflows/preview.yml deleted file mode 100644 index 4a5a337..0000000 --- a/.github/workflows/preview.yml +++ /dev/null @@ -1,20 +0,0 @@ -name: Surge Preview - -on: - pull_request: - types: [opened, synchronize, reopened, closed] - -jobs: - preview: - runs-on: ubuntu-latest - if: github.repository == 'doocs/md' - steps: - - uses: actions/checkout@v2 - - uses: afc163/surge-preview@main - with: - surge_token: ${{ secrets.SURGE_TOKEN }} - github_token: ${{ secrets.GITHUB_TOKEN }} - dist: dist - build: | - npm install - npm run build:h5-netlify