mirror of
https://ghfast.top/https://github.com/CxJuice/ScWeb_Chinese_Translate.git
synced 2025-06-03 06:23:48 +08:00
Update main.yml
This commit is contained in:
parent
5766c4dfda
commit
04aef97247
67
.github/workflows/main.yml
vendored
67
.github/workflows/main.yml
vendored
@ -1,68 +1 @@
|
|||||||
on:
|
|
||||||
workflow_dispatch:
|
|
||||||
push:
|
|
||||||
branches: [ main ]
|
|
||||||
jobs:
|
|
||||||
bump_version:
|
|
||||||
name: Bump Version
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- name: Checkout code
|
|
||||||
uses: actions/checkout@v2
|
|
||||||
with:
|
|
||||||
fetch-depth: 2
|
|
||||||
|
|
||||||
- name: Get changed files
|
|
||||||
id: getfile
|
|
||||||
run: |
|
|
||||||
files=$(git diff --name-only HEAD^ HEAD | tr '\n' ' ')
|
|
||||||
echo "::set-output name=files::$files"
|
|
||||||
|
|
||||||
- name: Bump version number based on changed files
|
|
||||||
run: |
|
|
||||||
increment_version() {
|
|
||||||
echo "$1" | awk -F. '{$NF = $NF + 1;} 1' OFS=.
|
|
||||||
}
|
|
||||||
|
|
||||||
changed_files="${{ steps.getfile.outputs.files }}"
|
|
||||||
temp_file=$(mktemp)
|
|
||||||
|
|
||||||
cp json/locales/versions.json $temp_file
|
|
||||||
|
|
||||||
# Use jq and increment_version function to bump version numbers based on changed files
|
|
||||||
if echo "$changed_files" | grep -q "addresses.json"; then
|
|
||||||
new_version=$(increment_version $(jq -r '.addresses' json/locales/versions.json))
|
|
||||||
jq --arg v "$new_version" '.addresses = $v' $temp_file > json/temp.json && mv json/temp.json $temp_file
|
|
||||||
fi
|
|
||||||
if echo "$changed_files" | grep -q "concierge.json"; then
|
|
||||||
new_version=$(increment_version $(jq -r '.concierge' json/locales/versions.json))
|
|
||||||
jq --arg v "$new_version" '.concierge = $v' $temp_file > json/temp.json && mv json/temp.json $temp_file
|
|
||||||
fi
|
|
||||||
if echo "$changed_files" | grep -q "hangar.json"; then
|
|
||||||
new_version=$(increment_version $(jq -r '.hangar' json/locales/versions.json))
|
|
||||||
jq --arg v "$new_version" '.hangar = $v' $temp_file > json/temp.json && mv json/temp.json $temp_file
|
|
||||||
fi
|
|
||||||
if echo "$changed_files" | grep -q "orgs.json"; then
|
|
||||||
new_version=$(increment_version $(jq -r '.orgs' json/locales/versions.json))
|
|
||||||
jq --arg v "$new_version" '.orgs = $v' $temp_file > json/temp.json && mv json/temp.json $temp_file
|
|
||||||
fi
|
|
||||||
if echo "$changed_files" | grep -q "zh-CN-rsi.json"; then
|
|
||||||
new_version=$(increment_version $(jq -r '.rsi' $temp_file))
|
|
||||||
jq --arg v "$new_version" '.rsi = $v' $temp_file > json/temp.json && mv json/temp.json $temp_file
|
|
||||||
fi
|
|
||||||
if echo "$changed_files" | grep -q "zh-CN-uex.json"; then
|
|
||||||
new_version=$(increment_version $(jq -r '.uex' $temp_file))
|
|
||||||
jq --arg v "$new_version" '.uex = $v' $temp_file > json/temp.json && mv json/temp.json $temp_file
|
|
||||||
fi
|
|
||||||
|
|
||||||
mv $temp_file json/versions.json
|
|
||||||
|
|
||||||
- name: Commit and push changes if there's an update
|
|
||||||
run: |
|
|
||||||
if [[ `git status --porcelain` ]]; then
|
|
||||||
git config --local user.email "action@github.com"
|
|
||||||
git config --local user.name "GitHub Action"
|
|
||||||
git add json/locales/versions.json
|
|
||||||
git commit -m "Bump version number" && git push
|
|
||||||
fi
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user