mirror of
https://github.com/doocs/md.git
synced 2024-11-25 03:18:36 +08:00
90 lines
3.1 KiB
YAML
90 lines
3.1 KiB
YAML
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' && github.repository == 'doocs/md'
|
|
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
|
|
|
|
- name: Upload surge service
|
|
id: deploy
|
|
run: |
|
|
export DEPLOY_DOMAIN=https://doocs-md-preview-pr-${{ steps.pr.outputs.id }}.surge.sh
|
|
npx surge --project ./ --domain $DEPLOY_DOMAIN --token ${{ secrets.SURGE_TOKEN }}
|
|
|
|
- name: Upload status comment
|
|
uses: actions-cool/maintain-one-comment@v2
|
|
with:
|
|
token: ${{ secrets.GITHUB_TOKEN }}
|
|
body: |
|
|
🎊 PR Preview has been successfully built and deployed to https://doocs-md-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@v2
|
|
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' && github.repository == 'doocs/md'
|
|
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@v2
|
|
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 }}
|