From 9a50f97fbc423be93e63c4de598674a265115810 Mon Sep 17 00:00:00 2001 From: Timur Ozheghin Date: Fri, 26 Apr 2024 17:19:44 +0300 Subject: [PATCH] add workflow --- .github/workflows/release.yml | 65 +++++++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 .github/workflows/release.yml diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..4f6f99b --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,65 @@ +name: CI + +on: + push: + branches: + - master + tags: [ 'v*' ] + pull_request: + branches: + - master + +jobs: + test: + name: Test + runs-on: ubuntu-latest + timeout-minutes: 15 + + strategy: + matrix: + python-version: ["3.10", "3.11", "3.12"] + + steps: + - uses: actions/checkout@v4 + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v5 + with: + python-version: ${{ matrix.python-version }} + - name: Install dependencies + run: | + make deps + - name: Lint + run: | + make lint + - name: Tests + run: | + make test + + deploy: + name: Deploy + runs-on: ubuntu-latest + needs: test + if: github.event_name == 'push' && contains(github.ref, 'refs/tags/') + environment: + name: pypi + url: https://pypi.org/p/pytest-service/ + permissions: + id-token: write + steps: + - name: Checkout + uses: actions/checkout@v4 + - name: Setup Python 3.11 + uses: actions/setup-python@v5 + with: + python-version: "3.11" + - name: Install dependencies + run: + python -m pip install -U pip wheel twine build + - name: Make dists + run: + python -m build + - name: Check dists + run: + twine check dist/* + - name: Publish package distributions to PyPI + uses: pypa/gh-action-pypi-publish@release/v1