123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113 |
- name: Deploy preview
- on:
- push:
- branches:
- - master
- jobs:
- cdn:
- name: CDN
- if: "! contains(github.event.head_commit.message, '[skip ci]')"
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v1
- - uses: bahmutov/npm-install@v1
- - name: Set vue cli env
- shell: bash
- run: |
- echo -e "\
- VUE_APP_PUBLIC_PATH=/d2-admin-start-kit/preview/\
- " > .env.preview.local
- cat .env.preview.local | while read line
- do
- echo $line
- done
- - name: Build
- run: yarn build:preview --report
- - name: Setup qshell
- uses: foxundermoon/setup-qshell@v1
- env:
- ACTIONS_ALLOW_UNSECURE_COMMANDS: 'true'
- with:
- qshell-version: '2.4.0'
- - name: Test qshell
- run: qshell version
- - name: Login
- run: qshell account ${{ secrets.AK }} ${{ secrets.SK }} GITHUB_ACTION
- - name: CDN upload
- run: |
- qshell qupload2 \
- --src-dir=$GITHUB_WORKSPACE/dist \
- --bucket=d2-cdn \
- --key-prefix=${GITHUB_REPOSITORY//*\//}/preview/ \
- --overwrite=true \
- --check-exists=true \
- --check-hash=true \
- --check-size=true \
- --rescan-local=true \
- --thread-count=32
- - name: CDN refresh
- run: |
- echo "https://cdn.d2.pub/${GITHUB_REPOSITORY//*\//}/preview/" > cdnrefresh.txt
- qshell cdnrefresh --dirs -i ./cdnrefresh.txt
-
- ftp:
- name: FTP
- if: "! contains(github.event.head_commit.message, '[skip ci]')"
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v1
- - uses: bahmutov/npm-install@v1
- - name: Set vue cli env
- shell: bash
- run: |
- echo -e "\
- VUE_APP_PUBLIC_PATH=/d2-admin-start-kit/preview/\
- " > .env.preview.local
- cat .env.preview.local | while read line
- do
- echo $line
- done
- - name: Build
- run: yarn build:preview --report
- - name: Deploy
- uses: SamKirkland/FTP-Deploy-Action@2.0.0
- env:
- FTP_SERVER: ${{ secrets.FTP_SERVER }}
- FTP_USERNAME: ${{ secrets.FTP_USERNAME }}
- FTP_PASSWORD: ${{ secrets.FTP_PASSWORD }}
- METHOD: sftp
- PORT: ${{ secrets.FTP_PORT }}
- LOCAL_DIR: dist
- REMOTE_DIR: /www/d2-admin-start-kit/preview
- ARGS: --delete --verbose --parallel=100
-
- gh-pages:
- name: Github Pages
- if: "! contains(github.event.head_commit.message, '[skip ci]')"
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v1
- - uses: bahmutov/npm-install@v1
- - name: Set vue cli env
- shell: bash
- run: |
- echo -e "\
- VUE_APP_PUBLIC_PATH=/d2-admin-start-kit/\
- " > .env.preview.local
- cat .env.preview.local | while read line
- do
- echo $line
- done
- - name: Build
- run: yarn build:preview --report
- - name: Deploy
- uses: peaceiris/actions-gh-pages@v2
- env:
- PERSONAL_TOKEN: ${{ secrets.ACCESS_TOKEN }}
- PUBLISH_BRANCH: gh-pages
- PUBLISH_DIR: ./dist
- with:
- forceOrphan: true
|