diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..9261386 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,65 @@ +name: CI +'on': + push: + branches: + - master + pull_request: + branches: + - master +jobs: + build: + env: + POSTGRES_USER: postgres + PGPASSWORD: postgres + runs-on: '${{ matrix.os }}' + strategy: + matrix: + include: + - os: ubuntu-latest + python-version: '3.6' + django-version: '3.2.13' + - os: ubuntu-latest + python-version: '3.7' + django-version: '3.2.13' + - os: ubuntu-latest + python-version: '3.8' + django-version: '3.2.13' + - os: ubuntu-latest + python-version: '3.9' + django-version: '3.2.13' + - os: ubuntu-latest + python-version: '3.10' + django-version: '3.2.13' + - os: ubuntu-latest + python-version: 'pypy3' + django-version: '3.2.13' + - os: ubuntu-latest + python-version: '3.9' + django-version: '4.0.4' + - os: ubuntu-latest + python-version: '3.10' + django-version: '4.0.4' + services: + postgres: + image: postgres + env: + POSTGRES_USER: postgres + POSTGRES_PASSWORD: postgres + options: >- + --health-cmd pg_isready + --health-interval 10s + --health-timeout 5s + --health-retries 5 + ports: + - 5432:5432 + steps: + - name: 'Set up Python ${{ matrix.python-version }}' + uses: actions/setup-python@v2 + with: + python-version: '${{ matrix.python-version }}' + - uses: actions/checkout@v2 + - run: pip install django==${{ matrix.django-version}} + - run: pip install psycopg2 + - run: pip install gevent + - run: python setup.py -q install + - run: python runtests.py diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index df28a99..0000000 --- a/.travis.yml +++ /dev/null @@ -1,54 +0,0 @@ ---- -sudo: false -dist: focal -language: python -cache: pip - -addons: - postgresql: '12' - apt: - packages: - - postgresql-12 - -matrix: - include: - # https://docs.djangoproject.com/en/dev/faq/install/#what-python-version-can-i-use-with-django - - {env: DJANGO=3.2.13, python: '3.6'} - - {env: DJANGO=3.2.13, python: '3.7'} - - {env: DJANGO=3.2.13, python: '3.8'} - - {env: DJANGO=3.2.13, python: '3.9'} - - {env: DJANGO=3.2.13, python: '3.10'} - - {env: DJANGO=3.2.13, python: 'nightly'} - - {env: DJANGO=3.2.13, python: 'pypy3'} - - {env: DJANGO=4.0.4, python: '3.9'} - - {env: DJANGO=4.0.4, python: '3.10'} - - {env: DJANGO=4.0.4, python: 'nightly'} - - - {env: DJANGO=master, python: '3.6'} - - {env: DJANGO=master, python: '3.7'} - - {env: DJANGO=master, python: '3.8'} - - {env: DJANGO=master, python: '3.9'} - - {env: DJANGO=master, python: '3.10'} - - {env: DJANGO=master, python: 'nightly'} - - allow_failures: - - python: 'nightly' - - env: DJANGO=master - -install: - - if [[ $DJANGO == 'master' ]]; then travis_retry pip install https://github.com/django/django/archive/master.tar.gz; fi - - if [[ $DJANGO != 'master' ]]; then travis_retry pip install django==$DJANGO; fi - - if [[ $TRAVIS_PYTHON_VERSION == 'pypy'* ]]; then travis_retry pip install psycopg2cffi>=2.7; fi - - if [[ $TRAVIS_PYTHON_VERSION != 'pypy'* ]]; then travis_retry pip install psycopg2-binary; fi - - travis_retry pip install gevent - - python setup.py -q install - -before_install: - - sudo sed -i -e '/local.*peer/s/postgres/all/' -e 's/peer\|md5/trust/g' /etc/postgresql/*/main/pg_hba.conf - - sudo service postgresql restart - - sleep 1 - - postgres --version - - psql -c 'create database test;' -U postgres - -script: - - python -Wall runtests.py diff --git a/runtests.py b/runtests.py index 6812e55..5491776 100644 --- a/runtests.py +++ b/runtests.py @@ -27,6 +27,7 @@ 'PASSWORD': 'postgres', 'ATOMIC_REQUESTS': False, 'CONN_MAX_AGE': 0, + 'HOST': 'localhost', } }, INSTALLED_APPS=(