forked from PrivateCoffee/wikimore
feat: add CI/CD workflow for publishing Python package
Introduced a GitHub Actions workflow to automate the CI/CD process for publishing Python packages to PyPI. The workflow triggers on push tags and provides tasks for checking out code, installing dependencies, and uploading the package to PyPI using twine. This automation aims to streamline the release process and ensure consistency in package deployment.
This commit is contained in:
parent
bb97ff0ad9
commit
e8823de045
1 changed files with 32 additions and 0 deletions
32
.forgejo/workflows/release.yml
Normal file
32
.forgejo/workflows/release.yml
Normal file
|
@ -0,0 +1,32 @@
|
|||
name: Python Package CI/CD
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
push:
|
||||
tags:
|
||||
- "*"
|
||||
|
||||
jobs:
|
||||
publish:
|
||||
name: Publish to PyPI
|
||||
container:
|
||||
image: node:20-bookworm
|
||||
|
||||
steps:
|
||||
- name: Check out code
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
apt update
|
||||
apt install -y python3 python3-venv
|
||||
|
||||
- name: Publish to PyPI
|
||||
run: |
|
||||
python3 -m venv venv
|
||||
. ./venv/bin/activate
|
||||
pip install -U twine build
|
||||
python -m build .
|
||||
python -m twine upload --username __token__ --password ${PYPI_TOKEN} dist/*
|
||||
env:
|
||||
PYPI_TOKEN: ${{ secrets.PYPI_TOKEN }}
|
Loading…
Reference in a new issue