diff options
Diffstat (limited to '.github/workflows/ci.yaml')
-rw-r--r-- | .github/workflows/ci.yaml | 71 |
1 files changed, 71 insertions, 0 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 |