Skip to content

Commit

Permalink
Replace Travis-CI with GitHub Actions for running CI/CD
Browse files Browse the repository at this point in the history
  • Loading branch information
althonos committed Nov 6, 2023
1 parent 5775b19 commit 7db0581
Show file tree
Hide file tree
Showing 3 changed files with 135 additions and 41 deletions.
89 changes: 89 additions & 0 deletions .github/workflows/package.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
name: Package

on:
push:
tags:
- v*.*.*

jobs:

wheel:
runs-on: ubuntu-latest
name: Build universal wheel
steps:
- name: Checkout code
uses: actions/checkout@v2
with:
submodules: true
- name: Setup Python 3.9
uses: actions/setup-python@v2
with:
python-version: 3.9
- name: Install build requirements
run: python -m pip install -r ci/requirements.txt
- name: Build wheel
run: python setup.py bdist_wheel
- name: Store built wheels
uses: actions/upload-artifact@v2
with:
name: dist
path: dist/*

sdist:
runs-on: ubuntu-latest
name: Build source distribution
steps:
- name: Checkout code
uses: actions/checkout@v2
with:
submodules: true
- name: Set up Python 3.9
uses: actions/setup-python@v2
with:
python-version: 3.9
- name: Install build requirements
run: python -m pip install -r ci/requirements.txt
- name: Build wheel distribution
run: python setup.py sdist
- name: Store built wheels
uses: actions/upload-artifact@v2
with:
name: dist
path: dist/*

upload:
environment: PyPI
runs-on: ubuntu-latest
name: Upload
needs:
- sdist
- wheel
steps:
- name: Download built distributions
uses: actions/download-artifact@v2
with:
name: dist
path: dist
- name: Publish distributions to PyPI
if: startsWith(github.ref, 'refs/tags/v')
uses: pypa/gh-action-pypi-publish@master
with:
user: __token__
password: ${{ secrets.PYPI_API_TOKEN }}
skip_existing: false

release:
environment: GitHub Releases
runs-on: ubuntu-latest
if: "startsWith(github.ref, 'refs/tags/v')"
name: Release
needs: upload
steps:
- name: Checkout code
uses: actions/checkout@v1
with:
submodules: true
- name: Release a Changelog
uses: rasmus-saks/[email protected]
with:
github-token: '${{ secrets.GITHUB_TOKEN }}'
46 changes: 46 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
name: Test

on:
- push
- pull_request

jobs:

test-linux:
name: Test (Linux)
runs-on: ubuntu-latest
env:
OS: Linux
strategy:
matrix:
python-version:
- '3.7'
- '3.8'
- '3.9'
- '3.10'
#- '3.11'
#- '3.12'
steps:
- name: Checkout code
uses: actions/checkout@v2
with:
submodules: true
- name: Setup Python ${{ matrix.python-version }}
uses: actions/setup-python@v3
with:
python-version: ${{ matrix.python-version }}
- name: Update pip
run: python -m pip install -U pip wheel setuptools
- name: Install library
run: python -m pip install .
- name: Install test requirements
run: python -m pip install -r tests/requirements.txt --prefer-binary
- name: Test with coverage
run: python -m coverage run -m unittest discover -vv
- name: Upload to Codecov
uses: codecov/codecov-action@v1
with:
flags: ${{ matrix.python-version }}
name: test-python-${{ matrix.python-version }}
fail_ci_if_error: true
token: ${{ secrets.CODECOV_TOKEN }}
41 changes: 0 additions & 41 deletions .travis.yml

This file was deleted.

0 comments on commit 7db0581

Please sign in to comment.