Skip to content

feat: implements tox in pipline for CI (#47) #30

feat: implements tox in pipline for CI (#47)

feat: implements tox in pipline for CI (#47) #30

Workflow file for this run

name: release
on:
push:
branches:
- main
# requires explicit permissions to be granted in the workflow settings
permissions:
contents: write
pull-requests: write
packages: write
jobs:
release:
name: release
runs-on: ubuntu-latest
outputs:
release_created: ${{ steps.release.outputs.release_created }}
steps:
- name: release
id: release
uses: google-github-actions/[email protected]
with:
# https://github.com/google-github-actions/release-please-action#configuration
release-type: python
package-name: poetry-plugin-upgrade
config-file: .github/release-please-config.json
publish:
name: publish
runs-on: ubuntu-latest
needs: release
# only run when a new release is created
if: ${{ needs.release.outputs.release_created }}
strategy:
fail-fast: true
matrix:
environment: [testpypi, pypi]
environment: ${{ matrix.environment }}
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: "3.12"
- name: Install poetry
uses: snok/install-poetry@v1
with:
version: 1.6.1
- name: Build
run: poetry build
- name: publish testpypi
if: ${{ matrix.environment=='testpypi' }}
env:
POETRY_REPOSITORIES_TESTPYPI_URL: https://test.pypi.org/legacy/
POETRY_HTTP_BASIC_TESTPYPI_USERNAME: __token__
POETRY_HTTP_BASIC_TESTPYPI_PASSWORD: ${{secrets.TESTPYPI_API_TOKEN}}
run: poetry publish --repository testpypi
- name: publish pypi
if: ${{ matrix.environment=='pypi' }}
env:
POETRY_HTTP_BASIC_PYPI_USERNAME: __token__
POETRY_HTTP_BASIC_PYPI_PASSWORD: ${{secrets.PYPI_API_TOKEN}}
run: poetry publish