summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatus Valo <matusvalo@users.noreply.github.com>2021-03-07 13:53:25 +0100
committerGitHub <noreply@github.com>2021-03-07 18:53:25 +0600
commit39ccacf0dc986ee5842644f62da91a71fc2a768f (patch)
tree19488e982aa6a78c5661cc272cbd017454e5935b
parent2a704e35856bda908f5f122d1aaabebc6b469b0c (diff)
downloadkombu-39ccacf0dc986ee5842644f62da91a71fc2a768f.tar.gz
Add Github Actions CI (#1309)
* Implement CI is github actions * Skip failing pypy3 unittests * Added integration tests
-rw-r--r--.github/workflows/ci.yaml71
-rw-r--r--appveyor.yml10
-rw-r--r--requirements/test-ci.txt1
-rw-r--r--tox.ini12
4 files changed, 82 insertions, 12 deletions
diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml
new file mode 100644
index 00000000..e9fb7bc6
--- /dev/null
+++ b/.github/workflows/ci.yaml
@@ -0,0 +1,71 @@
+name: CI
+on: [pull_request, push]
+jobs:
+ #################### Linters and checkers ####################
+ lint:
+ runs-on: ubuntu-latest
+ strategy:
+ matrix:
+ python-version: [3.8]
+ steps:
+ - name: Install system packages
+ run: sudo apt-get install libcurl4-openssl-dev libssl-dev
+ - name: Check out code from GitHub
+ uses: actions/checkout@v2.3.4
+ - name: Set up Python ${{ matrix.python-version }}
+ id: python
+ uses: actions/setup-python@v2.2.1
+ with:
+ python-version: ${{ matrix.python-version }}
+ - name: Install dependencies
+ run: pip install --upgrade pip setuptools wheel tox tox-docker
+ - name: Run flake8
+ run: tox -v -e py-flake8 -- -v
+ - name: Run pydocstyle
+ run: tox -v -e py-pydocstyle -- -v
+ - name: Run apicheck
+ run: tox -v -e py-apicheck -- -v
+ #################### Unittests ####################
+ unittest:
+ needs: lint
+ runs-on: ubuntu-latest
+ strategy:
+ matrix:
+ python-version: [3.6,3.7,3.8]
+ steps:
+ - name: Install system packages
+ run: sudo apt-get install libcurl4-openssl-dev libssl-dev
+ - name: Check out code from GitHub
+ uses: actions/checkout@v2.3.4
+ - name: Set up Python ${{ matrix.python-version }}
+ id: python
+ uses: actions/setup-python@v2.2.1
+ with:
+ python-version: ${{ matrix.python-version }}
+ - name: Install dependencies
+ run: pip install --upgrade pip setuptools wheel tox tox-docker
+ - name: Run unittest
+ run: tox -v -e ${{ matrix.python-version }}-linux-unit -- -v
+ #################### Integration tests ####################
+ integration:
+ needs: [lint, unittest]
+ runs-on: ubuntu-latest
+ strategy:
+ matrix:
+ python-version: [3.6,3.7,3.8,pypy3]
+ steps:
+ - name: Install system packages
+ run: sudo apt-get install libcurl4-openssl-dev libssl-dev
+ - name: Check out code from GitHub
+ uses: actions/checkout@v2.3.4
+ - name: Set up Python ${{ matrix.python-version }}
+ id: python
+ uses: actions/setup-python@v2.2.1
+ with:
+ python-version: ${{ matrix.python-version }}
+ - name: Install dependencies
+ run: pip install --upgrade pip setuptools wheel tox tox-docker
+ - name: Run AMQP integration tests
+ run: tox -v -e ${{ matrix.python-version }}-linux-integration-py-amqp -- -v
+ - name: Run redis integration tests
+ run: tox -v -e ${{ matrix.python-version }}-linux-integration-py-redis -- -v
diff --git a/appveyor.yml b/appveyor.yml
index 93858920..b53c5efc 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -6,29 +6,29 @@ environment:
WITH_COMPILER: "cmd /E:ON /V:ON /C .\\extra\\appveyor\\run_with_compiler.cmd"
matrix:
- - TOXENV: "3.6"
+ - TOXENV: "3.6-windows-unit"
TOX_APPVEYOR_X64: 0
PYTHON_VERSION: "3.6.x"
PYTHON_ARCH: "32"
- - TOXENV: "3.7-windows"
+ - TOXENV: "3.7-windows-unit"
TOX_APPVEYOR_X64: 0
PYTHON_VERSION: "3.7.x"
PYTHON_ARCH: "32"
- - TOXENV: "3.6"
+ - TOXENV: "3.6-windows-unit"
TOX_APPVEYOR_X64: 1
PYTHON_VERSION: "3.6.x"
PYTHON_ARCH: "64"
WINDOWS_SDK_VERSION: "v7.1"
- - TOXENV: "3.7-windows"
+ - TOXENV: "3.7-windows-unit"
TOX_APPVEYOR_X64: 1
PYTHON_VERSION: "3.7.x"
PYTHON_ARCH: "64"
WINDOWS_SDK_VERSION: "v7.1"
- - TOXENV: "3.8-windows"
+ - TOXENV: "3.8-windows-unit"
TOX_APPVEYOR_X64: 1
PYTHON_VERSION: "3.8"
PYTHON_ARCH: "64"
diff --git a/requirements/test-ci.txt b/requirements/test-ci.txt
index a47c4500..7a52f3bf 100644
--- a/requirements/test-ci.txt
+++ b/requirements/test-ci.txt
@@ -8,7 +8,6 @@ codecov
-r extras/azurestoragequeues.txt
-r extras/sqs.txt
-r extras/consul.txt
--r extras/librabbitmq.txt
-r extras/zookeeper.txt
-r extras/brotli.txt
-r extras/zstd.txt
diff --git a/tox.ini b/tox.ini
index a0c408aa..11ed7aa7 100644
--- a/tox.ini
+++ b/tox.ini
@@ -1,8 +1,8 @@
[tox]
envlist =
- {pypy3,3.6,3.7-{linux,windows},3.8-{linux,windows}}-unit
- {pypy3,3.6,3.7-{linux,windows},3.8-{linux,windows}}-integration-py-amqp
- {pypy3,3.6,3.7-{linux,windows},3.8-{linux,windows}}-integration-redis
+ {pypy3,3.6,3.7,3.8}-unit
+ {pypy3,3.6,3.7,3.8}-linux-integration-py-amqp
+ {pypy3,3.6,3.7,3.8}-linux-integration-redis
flake8
flakeplus
apicheck
@@ -17,10 +17,10 @@ passenv =
DISTUTILS_USE_SDK
deps=
-r{toxinidir}/requirements/dev.txt
- apicheck,pypy3,3.6,3.7-linux,3.7-windows,3.8-linux,3.8-windows: -r{toxinidir}/requirements/default.txt
- apicheck,pypy3,3.6,3.7-linux,3.7-windows,3.8-linux,3.8-windows: -r{toxinidir}/requirements/test.txt
+ apicheck,pypy3,3.6,3.7,3.8: -r{toxinidir}/requirements/default.txt
+ apicheck,pypy3,3.6,3.7,3.8: -r{toxinidir}/requirements/test.txt
apicheck,pypy3,3.6,3.7-linux,3.8-linux: -r{toxinidir}/requirements/test-ci.txt
- 3.7-windows: -r{toxinidir}/requirements/test-ci-windows.txt
+ 3.7-windows,3.8-windows: -r{toxinidir}/requirements/test-ci-windows.txt
apicheck,linkcheck: -r{toxinidir}/requirements/docs.txt
flake8,flakeplus,pydocstyle: -r{toxinidir}/requirements/pkgutils.txt