From 16b37a692a5c959722e3be73cc4756e272596541 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A5=BD=E5=A4=9A=E5=A4=A7=E7=B1=B3?= Date: Wed, 10 Nov 2021 18:17:29 +0800 Subject: [PATCH 1/2] Create preview-build.yml --- .github/workflows/preview-build.yml | 45 +++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 .github/workflows/preview-build.yml diff --git a/.github/workflows/preview-build.yml b/.github/workflows/preview-build.yml new file mode 100644 index 0000000000..1c7475f67f --- /dev/null +++ b/.github/workflows/preview-build.yml @@ -0,0 +1,45 @@ +name: Website Preview + +on: pull_request + +jobs: + build: + name: Build + runs-on: ubuntu-latest + env: + PULL_REQUEST_NUMBER: ${{ github.event.number }} + steps: + - name: Checkout + uses: actions/checkout@v2 + + - name: Setup node + uses: actions/setup-node@v2 + with: + node-version: '10.15.0' + registry-url: https://registry.npmjs.com/ + + - name: Build + run: npm run bootstrap && npm run deploy:build + + + # share website dist + - name: Upload artifact + uses: actions/upload-artifact@v2 + with: + name: docs + path: examples/element-ui/ + retention-days: 1 + + # write pr.txt for share + - name: Save pr number + if: ${{ always() }} + run: echo ${PULL_REQUEST_NUMBER} > ./pr.txt + + # share pr number + - name: Upload pr number + if: ${{ always() }} + uses: actions/upload-artifact@v2 + with: + name: pr + path: ./pr.txt + retention-days: 1 From 0cde0a2b163ee2602598cfb8fd3b404d06a9c4e1 Mon Sep 17 00:00:00 2001 From: cs1707 Date: Wed, 10 Nov 2021 18:26:51 +0800 Subject: [PATCH 2/2] Chore: fix ci --- .github/workflows/preview-build.yml | 2 +- .github/workflows/preview-deploy.yml | 83 ++++++++++++++++++++++++++++ .github/workflows/preview.yml | 27 --------- 3 files changed, 84 insertions(+), 28 deletions(-) create mode 100644 .github/workflows/preview-deploy.yml delete mode 100644 .github/workflows/preview.yml diff --git a/.github/workflows/preview-build.yml b/.github/workflows/preview-build.yml index 1c7475f67f..c5b1b0fa40 100644 --- a/.github/workflows/preview-build.yml +++ b/.github/workflows/preview-build.yml @@ -1,4 +1,4 @@ -name: Website Preview +name: Preview Build on: pull_request diff --git a/.github/workflows/preview-deploy.yml b/.github/workflows/preview-deploy.yml new file mode 100644 index 0000000000..d04775d437 --- /dev/null +++ b/.github/workflows/preview-deploy.yml @@ -0,0 +1,83 @@ +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.2.1 + 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 }} \ No newline at end of file diff --git a/.github/workflows/preview.yml b/.github/workflows/preview.yml deleted file mode 100644 index ec45f46189..0000000000 --- a/.github/workflows/preview.yml +++ /dev/null @@ -1,27 +0,0 @@ -name: Website Preview - -on: pull_request - -jobs: - preview: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v2 - - - uses: actions/setup-node@v2 - with: - node-version: '10.15.0' - registry-url: https://registry.npmjs.com/ - - - uses: afc163/surge-preview@v1 - id: preview_step - with: - surge_token: ${{ secrets.SURGE_TOKEN }} - github_token: ${{ secrets.GITHUB_TOKEN }} - dist: examples/element-ui/ - build: | - npm run bootstrap - npm run deploy:build - - - name: Get the preview_url - run: echo "url => ${{ steps.preview_step.outputs.preview_url }}"