Skip to content

Update dev.workflow.yml #15

Update dev.workflow.yml

Update dev.workflow.yml #15

Workflow file for this run

# This workflow will install Python dependencies, run tests and lint with a variety of Python versions
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python
name: Dev Workflow - PyLint & UnitTest, upload to TestPyPi
on:
push:
branches:
- dev
pull_request:
branches:
- dev
jobs:
lint-and-test:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
python-version: ["3.9", "3.10"]
permissions:
id-token: write
steps:
- uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v3
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install poetry==1.6.1
python -m pip install pylint
poetry install
- name: Analysing the code the pylint
run: |
poetry run pylint -d C0103,C0415,R0902,R0903,R0913,R0914,R1710,R0801 --fail-under=9 $(git ls-files '*.py')
- name: Test with unittest
run: |
poetry run python -m unittest discover -s ./rtichoke/tests -p 'test_*.py'
testpypi-publish:
needs: lint-and-test
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v3
with:
python-version: "3.10"
- name: Install dependencies
run: pip install -r requirements.txt
- name: Build package with Poetry
run: |
pip install poetry
poetry build
- name: Publish package with Poetry
run: |
poetry config pypi.testpypi.org.token ${{secrets.TESTPYPI_API_TOKEN}}
poetry publish --build -n
env:
POETRY_PYPI_TOKEN: ${{secrets.TESTPYPI_API_TOKEN}}
# testpypi-publish:
# needs: lint-and-test
# name: Upload release to PyPI
# runs-on: ubuntu-latest
# environment:
# name: testpypi
# url: https://test.pypi.org/p/rtichoke
# permissions:
# id-token: write # IMPORTANT: this permission is mandatory for trusted publishing
# steps:
# # retrieve your distributions here
# - name: build dist
# run: |
# python -m build
# - name: Publish package distributions to TestPyPI
# uses: pypa/gh-action-pypi-publish@release/v1
# with:
# user: urigott
# password: ${{ secrets.TEST_PYPI_API_TOKEN }}
# repository-url: https://test.pypi.org/legacy/