forked from PrivateCoffee/wikimore
Kumi
e8823de045
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.
32 lines
686 B
YAML
32 lines
686 B
YAML
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 }}
|