mirror of
https://gitea.com/Lydanne/issues-helper.git
synced 2025-08-19 18:25:58 +08:00
ci: update preview (#69)
* Create preview-start.yml * Create preview-build.yml * Create preview-deploy.yml * Delete surge-preview.yml
This commit is contained in:
40
.github/workflows/preview-build.yml
vendored
Normal file
40
.github/workflows/preview-build.yml
vendored
Normal file
@@ -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
|
92
.github/workflows/preview-deploy.yml
vendored
Normal file
92
.github/workflows/preview-deploy.yml
vendored
Normal file
@@ -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::$(<pr-id.txt)"
|
||||||
|
|
||||||
|
- name: download dist artifact
|
||||||
|
uses: dawidd6/action-download-artifact@v2
|
||||||
|
with:
|
||||||
|
workflow: ${{ github.event.workflow_run.workflow_id }}
|
||||||
|
workflow_conclusion: success
|
||||||
|
name: dist
|
||||||
|
|
||||||
|
- run: |
|
||||||
|
unzip dist.zip
|
||||||
|
|
||||||
|
- name: upload surge service
|
||||||
|
id: deploy
|
||||||
|
run: |
|
||||||
|
export DEPLOY_DOMAIN=https://issues-helper-preview-pr-${{ steps.pr.outputs.id }}.surge.sh
|
||||||
|
npx surge --project ./docs-dist --domain $DEPLOY_DOMAIN --token ${{ secrets.SURGE_TOKEN }}
|
||||||
|
|
||||||
|
- name: update status comment
|
||||||
|
uses: actions-cool/maintain-one-comment@v1.1.0
|
||||||
|
with:
|
||||||
|
token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
body: |
|
||||||
|
🎊 PR Preview has been successfully built and deployed to https://issues-helper-preview-pr-${{ steps.pr.outputs.id }}.surge.sh
|
||||||
|
|
||||||
|
<img width="300" src="https://user-images.githubusercontent.com/507615/90250366-88233900-de6e-11ea-95a5-84f0762ffd39.png">
|
||||||
|
|
||||||
|
<!-- Sticky Pull Request Comment -->
|
||||||
|
body-include: '<!-- Sticky Pull Request Comment -->'
|
||||||
|
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.
|
||||||
|
|
||||||
|
<img width="300" src="https://user-images.githubusercontent.com/507615/90250824-4e066700-de6f-11ea-8230-600ecc3d6a6b.png">
|
||||||
|
|
||||||
|
<!-- Sticky Pull Request Comment -->
|
||||||
|
body-include: '<!-- Sticky Pull Request Comment -->'
|
||||||
|
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::$(<pr-id.txt)"
|
||||||
|
|
||||||
|
- name: The job failed
|
||||||
|
uses: actions-cool/maintain-one-comment@v1.1.0
|
||||||
|
with:
|
||||||
|
token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
body: |
|
||||||
|
😭 Deploy PR Preview failed.
|
||||||
|
|
||||||
|
<img width="300" src="https://user-images.githubusercontent.com/507615/90250824-4e066700-de6f-11ea-8230-600ecc3d6a6b.png">
|
||||||
|
|
||||||
|
<!-- Sticky Pull Request Comment -->
|
||||||
|
body-include: '<!-- Sticky Pull Request Comment -->'
|
||||||
|
number: ${{ steps.pr.outputs.id }}
|
19
.github/workflows/preview-start.yml
vendored
Normal file
19
.github/workflows/preview-start.yml
vendored
Normal file
@@ -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...
|
||||||
|
|
||||||
|
<img src="https://user-images.githubusercontent.com/507615/90240294-8d2abd00-de5b-11ea-8140-4840a0b2d571.gif" width="300" />
|
||||||
|
|
||||||
|
<!-- Sticky Pull Request Comment -->
|
||||||
|
body-include: '<!-- Sticky Pull Request Comment -->'
|
18
.github/workflows/surge-preview.yml
vendored
18
.github/workflows/surge-preview.yml
vendored
@@ -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'
|
|
Reference in New Issue
Block a user