ci: merge ci workflows
This commit is contained in:
parent
7942d9c328
commit
63671a96a9
48
.github/workflows/build.yaml
vendored
48
.github/workflows/build.yaml
vendored
@ -1,48 +0,0 @@
|
||||
name: Check and Build
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
if: ${{ github.event_name == 'workflow_dispatch' || contains(github.event.head_commit.message, ' [build]') }}
|
||||
|
||||
steps:
|
||||
- name: Set up git
|
||||
run: |
|
||||
git config --global user.name "github-actions[bot]"
|
||||
git config --global user.email "github-actions[bot]@users.noreply.github.com"
|
||||
|
||||
- name: Set up Go
|
||||
uses: actions/setup-go@v5
|
||||
with:
|
||||
go-version: "1.22"
|
||||
# cache: false # set to be true by default. Disable cache when debugging
|
||||
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
cd others/script
|
||||
go mod tidy
|
||||
|
||||
- name: Check and build
|
||||
run: |
|
||||
cd others/script
|
||||
go run main.go --rime_path "${{ github.workspace }}" --auto_confirm
|
||||
|
||||
- name: Commit and push
|
||||
run: |
|
||||
git add --all
|
||||
if ! git diff --cached --quiet; then
|
||||
COMMIT_MSG=$(git log -1 --pretty=%B | sed -e 's/\s\[build\]$//' -e 's/^[a-zA-Z()]*:\s*//')
|
||||
git commit -m "build(ci): auto build for -> ${COMMIT_MSG} <-"
|
||||
git push
|
||||
else
|
||||
echo "No changes to commit."
|
||||
fi
|
46
.github/workflows/release.yml
vendored
46
.github/workflows/release.yml
vendored
@ -1,27 +1,41 @@
|
||||
name: Pack and Release
|
||||
name: Build and Release
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
tags:
|
||||
- '[0-9]+.*'
|
||||
- "[0-9]+.*"
|
||||
paths:
|
||||
- '**/**'
|
||||
- '!**.md'
|
||||
- '!**.gitignore'
|
||||
- '!others/**'
|
||||
- '!.github/**'
|
||||
- "**/**"
|
||||
- "!**.md"
|
||||
- "!**.gitignore"
|
||||
- "!.github/**"
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
Release:
|
||||
runs-on: ubuntu-latest
|
||||
if: github.repository == 'iDvel/rime-ice'
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Setup Go
|
||||
if: ${{ contains(github.event.head_commit.message, ' [build]') || github.event_name == 'workflow_dispatch' }}
|
||||
uses: actions/setup-go@v5
|
||||
with:
|
||||
go-version: 1.22
|
||||
|
||||
- name: Check and build
|
||||
id: check_and_build
|
||||
if: ${{ contains(github.event.head_commit.message, ' [build]') || github.event_name == 'workflow_dispatch' }}
|
||||
run: |
|
||||
cd others/script
|
||||
go mod tidy
|
||||
go run main.go --rime_path "${{ github.workspace }}" --auto_confirm
|
||||
|
||||
- name: Pack dicts
|
||||
run: |
|
||||
mkdir dist
|
||||
@ -42,7 +56,7 @@ jobs:
|
||||
|
||||
- name: Create nightly release
|
||||
if: ${{ github.ref == 'refs/heads/main' }}
|
||||
uses: 'softprops/action-gh-release@v2'
|
||||
uses: "softprops/action-gh-release@v2"
|
||||
with:
|
||||
body: |
|
||||
## 说明
|
||||
@ -65,10 +79,24 @@ jobs:
|
||||
|
||||
- name: Create stable release
|
||||
if: startsWith(github.ref, 'refs/tags/')
|
||||
uses: 'softprops/action-gh-release@v2'
|
||||
uses: "softprops/action-gh-release@v2"
|
||||
with:
|
||||
body_path: ${{ github.workspace }}/others/CHANGELOG.md
|
||||
draft: true
|
||||
make_latest: true
|
||||
files: |
|
||||
dist/*
|
||||
|
||||
- name: Push and commit
|
||||
if: ${{ steps.check_and_build.outcome == 'success' }}
|
||||
run: |
|
||||
git config --global user.name "github-actions[bot]"
|
||||
git config --global user.email "github-actions[bot]@users.noreply.github.com"
|
||||
git add --all
|
||||
if ! git diff --cached --quiet; then
|
||||
COMMIT_MSG=$(git log -1 --pretty=%B | sed -e 's/\s\[build\]$//' -e 's/^[a-zA-Z()]*:\s*//')
|
||||
git commit -m "build(ci): auto build for -> ${COMMIT_MSG} <-"
|
||||
git push
|
||||
else
|
||||
echo "No changes to commit."
|
||||
fi
|
Loading…
Reference in New Issue
Block a user