diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml new file mode 100644 index 0000000..18615b2 --- /dev/null +++ b/.github/workflows/tests.yml @@ -0,0 +1,38 @@ +name: couchdbkit test + +on: + push: + branches: [ master ] + pull_request: + branches: [ master ] + +jobs: + build: + runs-on: ubuntu-22.04 + + strategy: + matrix: + python-version: [ "3.9" ] + django-version: [ "3.2.*", "4.2.*" ] + + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-python@v4 + with: + python-version: ${{ matrix.python-version }} + - name: install dependencies + run: | + pip install django==${{ matrix.django-version }} + pip install -r requirements_dev.txt + python setup.py install + - name: start up couch + run: | + docker run -d --name couchdb-cluster -p 5984:5984 \ + -v $(pwd)/data:/usr/src/couchdb/dev/lib/ \ + klaemo/couchdb:2.0-dev \ + --with-admin-party-please --with-haproxy -n 1 + - name: wait for couch to start + run: timeout 60s sh -c 'until curl http://localhost:5984/${db_name} -sv 2>&1 | grep "^< HTTP/.* 200 OK"; do echo "Waiting for container to be healthy..."; sleep 2; done' + - name: run tests + run: | + python setup.py test diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 4483ed4..0000000 --- a/.travis.yml +++ /dev/null @@ -1,31 +0,0 @@ -dist: bionic -language: python - -services: - - docker - -python: - - 3.6 - - 3.7 - -install: - - pip install -r requirements_dev.txt - - python setup.py install - -before_script: - - "docker run -d --name couchdb-cluster \ - -p 5984:5984 \ - -v $(pwd)/data:/usr/src/couchdb/dev/lib/ \ - klaemo/couchdb:2.0-dev \ - --with-admin-party-please \ - --with-haproxy - -n 1" - - | - while : - do - curl http://localhost:5984/${db_name} -sv 2>&1 | grep '^< HTTP/.* 200 OK' && break || continue - sleep 1 - done - - -script: python setup.py test