diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml new file mode 100644 index 0000000..00d843e --- /dev/null +++ b/.github/workflows/check.yml @@ -0,0 +1,33 @@ +name: Check + +on: + - push + - pull_request + +jobs: + build: + name: ${{ matrix.tox-environment }} + runs-on: ubuntu-latest + + strategy: + fail-fast: false + matrix: + tox-environment: + - black + - flake8 + - isort + + env: + TOXENV: ${{ matrix.tox-environment }} + + steps: + - uses: actions/checkout@v2 + + - name: Set up Python + uses: actions/setup-python@v2 + + - name: Install dependencies + run: python -m pip install tox + + - name: Run + run: tox diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml new file mode 100644 index 0000000..2dd2279 --- /dev/null +++ b/.github/workflows/docs.yml @@ -0,0 +1,25 @@ +name: Documentation + +on: + - push + - pull_request + +jobs: + build: + name: Documentation + runs-on: ubuntu-latest + + env: + TOXENV: docs + + steps: + - uses: actions/checkout@v2 + + - name: Set up Python + uses: actions/setup-python@v2 + + - name: Install dependencies + run: python -m pip install tox + + - name: Run + run: tox diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml new file mode 100644 index 0000000..48d0b17 --- /dev/null +++ b/.github/workflows/test.yml @@ -0,0 +1,49 @@ +name: Test + +on: + - push + - pull_request + +jobs: + test: + name: Python ${{ matrix.python-version }} / ${{ matrix.tox-environment }} + runs-on: ubuntu-latest + + strategy: + fail-fast: false + matrix: + python-version: + - 3.6 + - 3.7 + - 3.8 + tox-environment: + - django22 + - django30 + - django31 + - djangomaster + + env: + TOXENV: ${{ matrix.tox-environment }} + + steps: + - name: Install LDAP libs + run: | + sudo apt-get update + # https://www.python-ldap.org/en/latest/installing.html#debian + sudo apt-get install slapd ldap-utils libldap2-dev libsasl2-dev + # https://github.com/python-ldap/python-ldap/issues/370 + sudo apt-get install apparmor-utils + sudo aa-disable /usr/sbin/slapd + + - uses: actions/checkout@v2 + + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v2 + with: + python-version: ${{ matrix.python-version }} + + - name: Install dependencies + run: python -m pip install tox + + - name: Run tests + run: tox diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 2dd4b47..0000000 --- a/.travis.yml +++ /dev/null @@ -1,50 +0,0 @@ -language: python -cache: pip - -addons: - apt: - packages: - - ldap-utils - - slapd - -matrix: - fast_finish: true - include: - - env: TOXENV=black - - env: TOXENV=flake8 - - env: TOXENV=isort - - env: TOXENV=docs - - python: 3.6 - env: TOXENV=py36-django22 - - python: 3.7 - env: TOXENV=py37-django22 - - python: 3.8 - env: TOXENV=py38-django22 - - python: 3.6 - env: TOXENV=py36-django30 - - python: 3.7 - env: TOXENV=py37-django30 - - python: 3.8 - env: TOXENV=py38-django30 - - python: 3.6 - env: TOXENV=py36-django31 - - python: 3.7 - env: TOXENV=py37-django31 - - python: 3.8 - env: TOXENV=py38-django31 - - python: 3.6 - env: TOXENV=py36-djangomaster - - python: 3.7 - env: TOXENV=py37-djangomaster - - python: 3.8 - env: TOXENV=py38-djangomaster - allow_failures: - - env: TOXENV=py36-djangomaster - - env: TOXENV=py37-djangomaster - - env: TOXENV=py38-djangomaster - -install: - - pip install tox - -script: - - tox