summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIrina Truong <i.chernyavska@gmail.com>2021-01-04 20:29:16 -0800
committerIrina Truong <i.chernyavska@gmail.com>2021-01-04 22:32:56 -0800
commitf7f7c1b4fa6a40ddf30092c3e4d401e927ba1899 (patch)
tree1863882c2f0fce4eb77da999e0b3edc92446c6ba
parentbaea7690b0e64cf2487a5ebcc61ca2e6736caf05 (diff)
Switch to Github Actions vs Travis.
-rw-r--r--.github/workflows/ci.yml66
-rw-r--r--.travis.yml51
2 files changed, 66 insertions, 51 deletions
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
new file mode 100644
index 00000000..5c86b31e
--- /dev/null
+++ b/.github/workflows/ci.yml
@@ -0,0 +1,66 @@
+name: pgcli
+
+on:
+ push:
+ branches-ignore: [ master ]
+ paths-ignore: [ '**.rst' ]
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+
+ strategy:
+ matrix:
+ python-version: [3.6, 3.7, 3.8]
+
+ services:
+ postgres:
+ image: postgres:9.6
+ env:
+ POSTGRES_USER: postgres
+ POSTGRES_PASSWORD: postgres
+ ports:
+ - 5432:5432
+ options: >-
+ --health-cmd pg_isready
+ --health-interval 10s
+ --health-timeout 5s
+ --health-retries 5
+
+ steps:
+ - uses: actions/checkout@v2
+
+ - name: Set up Python ${{ matrix.python-version }}
+ uses: actions/setup-python@v2
+ with:
+ python-version: ${{ matrix.python-version }}
+
+ - name: Install requirements
+ run: |
+ pip install -U pip setuptools
+ pip install --no-cache-dir .
+ pip install -r requirements-dev.txt
+ pip install keyrings.alt>=3.1
+
+ - name: Run unit tests
+ run: coverage run --source pgcli -m py.test
+
+ - name: Run integration tests
+ env:
+ PGUSER: postgres
+ PGPASSWORD: postgres
+
+ run: behave tests/features --no-capture
+
+ - name: Check changelog for ReST compliance
+ run: rst2html.py --halt=warning changelog.rst >/dev/null
+
+ - name: Run Black
+ run: pip install black && black --check .
+ if: ${{ matrix.python_version == '3.6' }}
+
+ - name: Coverage
+ run: |
+ coverage combine
+ coverage report
+ codecov
diff --git a/.travis.yml b/.travis.yml
deleted file mode 100644
index 8d50fbd1..00000000
--- a/.travis.yml
+++ /dev/null
@@ -1,51 +0,0 @@
-dist: xenial
-
-sudo: required
-
-language: python
-
-python:
- - "3.6"
- - "3.7"
- - "3.8"
- - "3.9-dev"
-
-before_install:
- - which python
- - which pip
- - pip install -U setuptools
-
-install:
- - pip install --no-cache-dir .
- - pip install -r requirements-dev.txt
- - pip install keyrings.alt>=3.1
-
-script:
- - set -e
- - coverage run --source pgcli -m py.test
- - cd tests
- - behave --no-capture
- - cd ..
- # check for changelog ReST compliance
- - rst2html.py --halt=warning changelog.rst >/dev/null
- # check for black code compliance, 3.6 only
- - if [[ "$TRAVIS_PYTHON_VERSION" == "3.6" ]]; then pip install black && black --check . ; else echo "Skipping black for $TRAVIS_PYTHON_VERSION"; fi
- - set +e
-
-after_success:
- - coverage combine
- - codecov
-
-notifications:
- webhooks:
- urls:
- - YOUR_WEBHOOK_URL
- on_success: change # options: [always|never|change] default: always
- on_failure: always # options: [always|never|change] default: always
- on_start: false # default: false
-
-services:
- - postgresql
-
-addons:
- postgresql: "9.6"