Update dev.workflow.yml #15
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# 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/ |