ci(ga): trigger cloudflare & netlify from github
if gitlab is down
This commit is contained in:
parent
6424f4fb9a
commit
35c606552a
|
@ -8,7 +8,7 @@ on:
|
|||
jobs:
|
||||
pages:
|
||||
runs-on: ubuntu-latest
|
||||
container: alpine:latest
|
||||
container: node:lts-alpine
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Install Dependencies
|
||||
|
@ -16,7 +16,7 @@ jobs:
|
|||
apk update
|
||||
apk add brotli curl git grep xmlstarlet
|
||||
- name: Build
|
||||
run: sh src/script.sh
|
||||
run: sh ./src/script.sh
|
||||
- name: Compress
|
||||
run: |
|
||||
find public -type f -regex '.*\.\(txt\|conf\|tpl\|rules\)$' -exec gzip -f -k -9 {} \;
|
||||
|
@ -39,3 +39,23 @@ jobs:
|
|||
name: tmp
|
||||
path: ./tmp
|
||||
retention-days: 30
|
||||
- name: Check GitLab Status
|
||||
env:
|
||||
GITHUB_ENV: ${{ env.GITHUB_ENV }}
|
||||
run: sh ./src/gitlab_status.sh
|
||||
- name: Cloudflare Pages
|
||||
env:
|
||||
CLOUDFLARE_BUILD_HOOK: ${{ secrets.CLOUDFLARE_BUILD_HOOK }}
|
||||
if: ${{ env.CLOUDFLARE_BUILD_HOOK != 0 && env.GITLAB_STATUS == 'down' }}
|
||||
run: curl -X POST "https://api.cloudflare.com/client/v4/pages/webhooks/deploy_hooks/${{ env.CLOUDFLARE_BUILD_HOOK }}"
|
||||
- name: Netlify
|
||||
env:
|
||||
NETLIFY_SITE_ID: ${{ secrets.NETLIFY_SITE_ID }}
|
||||
NETLIFY_AUTH_TOKEN: ${{ secrets.NETLIFY_AUTH_TOKEN }}
|
||||
if: ${{ env.NETLIFY_SITE_ID != 0 && env.GITLAB_STATUS == 'down' }}
|
||||
run: |
|
||||
npm install
|
||||
npm install netlify-cli -g
|
||||
netlify --telemetry-disable
|
||||
npm run build
|
||||
netlify deploy --dir=public --prod
|
||||
|
|
|
@ -0,0 +1,10 @@
|
|||
#!/bin/sh
|
||||
|
||||
CURL_STATUS=$(curl -sSIL "https://gitlab.com/curben/pup-filter/-/jobs/artifacts/main/download?job=pages" | grep -F "HTTP/2 200")
|
||||
GITLAB_STATUS="up"
|
||||
|
||||
if [ -z "$CURL_STATUS" ]; then
|
||||
GITLAB_STATUS="down"
|
||||
fi
|
||||
|
||||
echo "GITLAB_STATUS=$GITLAB_STATUS" >> "$GITHUB_ENV"
|
Loading…
Reference in New Issue