nocobase/.github/workflows/manual-release.yml
2024-07-16 16:04:28 +08:00

134 lines
3.9 KiB
YAML

name: manual-release
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
on:
workflow_dispatch:
inputs:
is_feat:
description: 'is feat'
type: boolean
jobs:
push-commit:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
repository: nocobase/nocobase
ssh-key: ${{ secrets.NOCOBASE_DEPLOY_KEY }}
persist-credentials: true
fetch-depth: 0
- name: Checkout pro-plugins
uses: actions/checkout@v4
with:
repository: nocobase/pro-plugins
path: packages/pro-plugins
fetch-depth: 0
ssh-key: ${{ secrets.PRO_PLUGINS_DEPLOY_KEY }}
persist-credentials: true
- name: main -> next(nocobase)
run: |
git config --global user.email "actions@github.com"
git config --global user.name "GitHub Actions Bot"
git checkout main
git pull origin main
git checkout next
git merge main
git push origin next
- name: main -> next(pro-plugins)
run: |
cd ./packages/pro-plugins
git checkout main
git pull origin main
git checkout next
git merge main
git push origin next
- name: push pro plugins(next)
continue-on-error: true
uses: ad-m/github-push-action@master
with:
ssh: true
branch: next
directory: packages/pro-plugins
repository: nocobase/pro-plugins
tags: true
atomic: true
- name: push nocobase(next)
uses: ad-m/github-push-action@master
with:
branch: next
ssh: true
repository: nocobase/nocobase
tags: true
atomic: true
- name: Set Node.js 18
uses: actions/setup-node@v3
with:
node-version: 18
- name: Install Lerna
run: npm install -g lerna@4 auto-changelog@2
- name: Run release.sh
run: |
git checkout main
git config --global user.email "actions@github.com"
git config --global user.name "GitHub Actions Bot"
echo "packages/pro-plugins/" >> .git/info/exclude
bash release.sh $IS_FEAT
env:
IS_FEAT: ${{ inputs.is_feat && '--is-feat' || '' }}
- name: push pro plugins
continue-on-error: true
uses: ad-m/github-push-action@master
with:
ssh: true
branch: main
directory: packages/pro-plugins
repository: nocobase/pro-plugins
tags: true
atomic: true
- name: push nocobase
uses: ad-m/github-push-action@master
with:
branch: main
ssh: true
repository: nocobase/nocobase
tags: true
atomic: true
- name: main -> next
run: |
git config --global user.email "actions@github.com"
git config --global user.name "GitHub Actions Bot"
git checkout main
git pull origin main
git checkout next
git merge -X ours main --no-edit
git push origin next
- name: main -> next
run: |
cd ./packages/pro-plugins
git checkout main
git pull origin main
git checkout next
git merge -X ours main --no-edit
git push origin next
- name: push pro plugins
continue-on-error: true
uses: ad-m/github-push-action@master
with:
ssh: true
branch: next
directory: packages/pro-plugins
repository: nocobase/pro-plugins
tags: true
atomic: true
- name: push nocobase
uses: ad-m/github-push-action@master
with:
branch: next
ssh: true
repository: nocobase/nocobase
tags: true
atomic: true