diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 297b87a1a..4deab8a58 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -5,7 +5,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python-version: [3.6] + python-version: [3.6, 3.7] services: redis: image: redis @@ -33,14 +33,12 @@ jobs: with: python-version: ${{ matrix.python-version }} - - name: Install dependencies + - name: Install dependencies & set up configuration run: | python -m pip install --upgrade pip pip install -r requirements.txt pip install pycodestyle coverage - - - name: Link test configuration file - run: ln -s configuration.testing.py netbox/netbox/configuration.py + ln -s configuration.testing.py netbox/netbox/configuration.py - name: Check PEP8 compliance run: pycodestyle --ignore=W504,E501 netbox/ diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 0dcbd9ee1..000000000 --- a/.travis.yml +++ /dev/null @@ -1,19 +0,0 @@ -sudo: required -services: - - postgresql - - redis-server -addons: - postgresql: "9.6" -language: python -python: - - "3.6" - - "3.7" -install: - - pip install -r requirements.txt - - pip install pycodestyle - - pip install coverage -before_script: - - psql --version - - psql -U postgres -c 'SELECT version();' -script: - - ./scripts/cibuild.sh diff --git a/scripts/cibuild.sh b/scripts/cibuild.sh deleted file mode 100755 index 6a0422308..000000000 --- a/scripts/cibuild.sh +++ /dev/null @@ -1,60 +0,0 @@ -#!/bin/bash - -# Exit code starts at 0 but is modified if any checks fail -EXIT=0 - -# Output a line prefixed with a timestamp -info() -{ - echo "$(date +'%F %T') |" -} - -# Track number of seconds required to run script -START=$(date +%s) -echo "$(info) starting build checks." - -# Syntax check all python source files -SYNTAX=$(find . -name "*.py" -type f -exec python -m py_compile {} \; 2>&1) -if [[ ! -z $SYNTAX ]]; then - echo -e "$SYNTAX" - echo -e "\n$(info) detected one or more syntax errors, failing build." - EXIT=1 -fi - -# Check all python source files for PEP 8 compliance, but explicitly -# ignore: -# - W504: line break after binary operator -# - E501: line greater than 80 characters in length -pycodestyle \ - --ignore=W504,E501 \ - netbox/ -RC=$? -if [[ $RC != 0 ]]; then - echo -e "\n$(info) one or more PEP 8 errors detected, failing build." - EXIT=$RC -fi - -# Point to the testing configuration file for use in CI -ln -s configuration.testing.py netbox/netbox/configuration.py - -# Run NetBox tests -coverage run --source="netbox/" netbox/manage.py test netbox/ -RC=$? -if [[ $RC != 0 ]]; then - echo -e "\n$(info) one or more tests failed, failing build." - EXIT=$RC -fi - -# Show code coverage report -coverage report --skip-covered --omit *migrations* -RC=$? -if [[ $RC != 0 ]]; then - echo -e "\n$(info) failed to generate code coverage report." - EXIT=$RC -fi - -# Show build duration -END=$(date +%s) -echo "$(info) exiting with code $EXIT after $(($END - $START)) seconds." - -exit $EXIT