Skip to content

feat: GitHub Actions workflow for testing, releasing, and publishing #2

feat: GitHub Actions workflow for testing, releasing, and publishing

feat: GitHub Actions workflow for testing, releasing, and publishing #2

Workflow file for this run

# This workflow will install Python dependencies and upload build artifacts to GitHub.
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python
name: 'Build and upload Python app'
on:
push:
branches: ['main']
pull_request:
branches: ['main']
# Declare default permissions as read only.
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: 'Checkout repository'
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
- name: 'Get tag-based commit name'
run: 'echo "commitTag=$(git describe --tags)" >> $GITHUB_ENV'
- name: 'Install Poetry'
run: pipx install poetry
- name: 'Set up Python'
id: setup-python
uses: actions/setup-python@0a5c61591373683505ea898e09a3ea4f39ef2b9c # v5.0.0
with:
python-version: '>=3.9 <3.13'
cache: 'poetry'
- name: 'Install dependencies'
run: poetry install --no-root
- name: 'Build distribution packages'
run: poetry build
- name: 'Upload distribution packages'
id: upload-artifact
uses: actions/upload-artifact@5d5d22a31266ced268874388b861e4b58bb5c2f3 # v4.3.1
with:
name: 'dist-reliabot-${{ env.commitTag }}-${{ steps.setup-python.output.python-version }}'
path: 'dist/'
if-no-files-found: error
overwrite: true
# https://github.com/softprops/action-gh-release