mirror of
https://github.com/ONLYOFFICE/onlyoffice.github.io.git
synced 2026-02-10 18:05:06 +08:00
60 lines
1.6 KiB
YAML
60 lines
1.6 KiB
YAML
name: Pack Plugins and Create Release
|
||
|
||
on:
|
||
page_build:
|
||
|
||
jobs:
|
||
pack-plugins:
|
||
runs-on: ubuntu-latest
|
||
|
||
steps:
|
||
- name: Checkout repository
|
||
uses: actions/checkout@v4
|
||
with:
|
||
ref: ${{ github.event.build.commit }}
|
||
|
||
- name: Get latest tag
|
||
id: get_tag
|
||
run: |
|
||
git fetch --tags
|
||
latest=$(git tag --sort=-v:refname | grep -E '^v[0-9]+\.[0-9]+\.[0-9]+$' | head -n1)
|
||
echo "Latest tag: $latest"
|
||
if [[ -z "$latest" ]]; then
|
||
echo "tag=v0.0.0" >> "$GITHUB_OUTPUT"
|
||
else
|
||
echo "tag=$latest" >> "$GITHUB_OUTPUT"
|
||
fi
|
||
|
||
- name: Bump patch version
|
||
id: bump_tag
|
||
run: |
|
||
old="${{ steps.get_tag.outputs.tag }}"
|
||
IFS='.' read -r major minor patch <<< "${old#v}"
|
||
new="v$major.$minor.$((patch+1))"
|
||
echo "New tag: $new"
|
||
echo "new_tag=$new" >> "$GITHUB_OUTPUT"
|
||
|
||
- name: Create Git tag
|
||
run: |
|
||
git config user.name "github-actions"
|
||
git config user.email "github-actions@github.com"
|
||
git tag ${{ steps.bump_tag.outputs.new_tag }}
|
||
git push origin ${{ steps.bump_tag.outputs.new_tag }}
|
||
|
||
- name: Set up Python
|
||
uses: actions/setup-python@v4
|
||
with:
|
||
python-version: '3.x'
|
||
|
||
- name: Pack plugins
|
||
run: |
|
||
python packer/pack.py
|
||
|
||
- name: Upload GitHub Release
|
||
uses: softprops/action-gh-release@v2
|
||
with:
|
||
tag_name: ${{ steps.bump_tag.outputs.new_tag }}
|
||
name: Release ${{ steps.bump_tag.outputs.new_tag }}
|
||
body: Auto‑generated release for commit `${{ github.event.build.commit }}`
|
||
files: artifacts/*.plugin
|