aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/.github/workflows/python-publish.yml
diff options
context:
space:
mode:
author简律纯 <i@jyunko.cn>2023-10-07 06:48:07 +0800
committer简律纯 <i@jyunko.cn>2023-10-07 06:48:07 +0800
commit991fd7a6d67ee017c57beaaa21fc31c4bee7944d (patch)
treee895202203fcaa50b0052f60ef6fc7d6d2928cf9 /.github/workflows/python-publish.yml
parentd62900046bb6f754a8e6e7e670a66a90134055d9 (diff)
downloadinfini-991fd7a6d67ee017c57beaaa21fc31c4bee7944d.tar.gz
infini-991fd7a6d67ee017c57beaaa21fc31c4bee7944d.zip
feat(version): versions
Diffstat (limited to '.github/workflows/python-publish.yml')
-rw-r--r--.github/workflows/python-publish.yml79
1 files changed, 66 insertions, 13 deletions
diff --git a/.github/workflows/python-publish.yml b/.github/workflows/python-publish.yml
index 998fb663..d8d4729b 100644
--- a/.github/workflows/python-publish.yml
+++ b/.github/workflows/python-publish.yml
@@ -1,28 +1,81 @@
on:
push:
tags:
- - "v*"
+ - "*"
workflow_dispatch:
jobs:
- build:
+ release-pypi:
+ name: release-pypi
runs-on: ubuntu-latest
+ permissions:
+ id-token: write
+ contents: write
steps:
- - uses: actions/checkout@v4
- - name: Install poetry
- run: |
- pipx install pdm
- shell: bash
+ - uses: actions/checkout@v3
+
- uses: actions/setup-python@v4
with:
- python-version: "3.9"
- architecture: "x64"
- - run: |
- pdm install
- shell: bash
+ python-version: "3.11"
+
+ - name: Check prerelease
+ id: check_version
+ run: |
+ if [[ "${{ github.ref }}" =~ ^refs/tags/[0-9.]+$ ]]; then
+ echo "PRERELEASE=false" >> $GITHUB_OUTPUT
+ else
+ echo "PRERELEASE=true" >> $GITHUB_OUTPUT
+ fi
+
+ - name: Build artifacts
+ run: |
+ python -m pip install build
+ python -m build
+
+ - name: Test Build
+ run: |
+ python -m pip install dist/*.whl
+ pdm --help
+
+ - name: Build Release Docs
+ run: |
+ pdm install -G doc
+ git config --local user.email "action@github.com"
+ git config --local user.name "GitHub Action"
+ git fetch origin gh-pages:gh-pages
+ tag="${{ github.ref_name }}"
+ DOC_VERSION=${tag%.*}
+ cd docs
+ pdm run mike deploy --no-redirect --update-aliases "$DOC_VERSION" latest
+ git push origin gh-pages
+
- run: pdm publish
shell: bash
env:
PDM_PUBLISH_PASSWORD: ${{ secrets.PDM_PUBLISH_PASSWORD }}
- PDM_PUBLISH_USERNAME: ${{ secrets.PDM_PUBLISH_USERNAME }} \ No newline at end of file
+ PDM_PUBLISH_USERNAME: ${{ secrets.PDM_PUBLISH_USERNAME }}
+
+ - name: Get Changelog
+ id: get-changelog
+ run: |
+ awk '/-{3,}/{flag=1;next}/Release/{if (flag==1)exit}flag' CHANGELOG.md > .changelog.md
+
+ - name: Create Release
+ uses: actions/create-release@main
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ with:
+ tag_name: ${{ github.ref }}
+ release_name: v${{ github.ref }}
+ body_path: .changelog.md
+ draft: false
+ prerelease: ${{ steps.check_version.outputs.PRERELEASE }}
+
+ - name: Trigger Bucket Update
+ uses: benc-uk/workflow-dispatch@v1
+ with:
+ workflow: Excavator
+ repo: frostming/scoop-frostming
+ token: ${{ secrets.G_T }}
+ ref: master \ No newline at end of file