diff options
| author | Michael Merickel <michael@merickel.org> | 2020-05-06 22:50:10 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-05-06 22:50:10 -0500 |
| commit | 768a69354248d66956cfa476617db9e3d36e2740 (patch) | |
| tree | ed645a022f8b859d1a523c8fab2f252a2298407d /.github/workflows/ci-tests.yml | |
| parent | 2f3e7cd6365f87659aa3787cbecaee38b5a9b1d7 (diff) | |
| parent | 87040469b30f01c3409bd4fdd8e94d3ed24e805d (diff) | |
| download | pyramid-768a69354248d66956cfa476617db9e3d36e2740.tar.gz pyramid-768a69354248d66956cfa476617db9e3d36e2740.tar.bz2 pyramid-768a69354248d66956cfa476617db9e3d36e2740.zip | |
Merge pull request #3513 from Pylons/workflows
Add Github actions for CI
Diffstat (limited to '.github/workflows/ci-tests.yml')
| -rw-r--r-- | .github/workflows/ci-tests.yml | 96 |
1 files changed, 96 insertions, 0 deletions
diff --git a/.github/workflows/ci-tests.yml b/.github/workflows/ci-tests.yml new file mode 100644 index 000000000..a16421a0b --- /dev/null +++ b/.github/workflows/ci-tests.yml @@ -0,0 +1,96 @@ +name: Build and test + +on: + # Only on pushes to master or one of the release branches we build on push + push: + branches: + - master + - "[0-9].[0-9]+-branch" + tags: + # Build pull requests + pull_request: + +jobs: + test: + strategy: + matrix: + py: + - "3.5" + - "3.6" + - "3.7" + - "3.8" + - "pypy3" + os: + - "ubuntu-latest" + - "windows-latest" + - "macos-latest" + architecture: + - x64 + - x86 + + include: + # Only run coverage on ubuntu-latest, except on pypy3 + - os: "ubuntu-latest" + pytest-args: "--cov" + - os: "ubuntu-latest" + py: "pypy3" + pytest-args: "" + + exclude: + # Linux and macOS don't have x86 python + - os: "ubuntu-latest" + architecture: x86 + - os: "macos-latest" + architecture: x86 + # PyPy3 on Windows doesn't seem to work + - os: "windows-latest" + py: "pypy3" + + name: "Python: ${{ matrix.py }}-${{ matrix.architecture }} on ${{ matrix.os }}" + runs-on: ${{ matrix.os }} + steps: + - uses: actions/checkout@v2 + - name: Setup python + uses: actions/setup-python@v2 + with: + python-version: ${{ matrix.py }} + architecture: ${{ matrix.architecture }} + - run: pip install tox + - name: Running tox + run: tox -e py -- ${{ matrix.pytest-args }} + coverage: + runs-on: ubuntu-latest + name: Validate coverage + steps: + - uses: actions/checkout@v2 + - name: Setup python + uses: actions/setup-python@v1 + with: + python-version: 3.8 + architecture: x64 + - run: pip install tox + - run: tox -e py38-cover,coverage + docs: + runs-on: ubuntu-latest + name: Build the documentation + steps: + - uses: actions/checkout@v2 + - name: Setup python + uses: actions/setup-python@v2 + with: + python-version: 3.8 + architecture: x64 + - run: pip install tox + - run: tox -e docs + lint: + runs-on: ubuntu-latest + name: Lint the package + steps: + - uses: actions/checkout@v2 + - name: Setup python + uses: actions/setup-python@v2 + with: + python-version: 3.8 + architecture: x64 + - run: pip install tox + - run: tox -e lint |
