spack/.travis.yml
Todd Gamblin 2aa4387eba Update code style checking.
- Exempt overlong URL lines from checks.
- Omit some of the more painful PEP items.
2016-05-11 00:07:42 -07:00

56 lines
1.5 KiB
YAML

language: python
python:
- "2.6"
- "2.7"
# Use new Travis infrastructure (Docker can't sudo yet)
sudo: false
# Install coveralls to obtain code coverage
install:
- "pip install coveralls"
- "pip install flake8"
before_install:
# Need this for the git tests to succeed.
- git config --global user.email "spack@example.com"
- git config --global user.name "Test User"
# Need this to be able to compute the list of changed files
- git fetch origin develop:develop
script:
# Regular spack setup and tests
- . share/spack/setup-env.sh
- spack compilers
- spack config get compilers
- spack install -v libdwarf
# Run unit tests with code coverage
- coverage run bin/spack test
# Check if changed files are flake8 conformant [framework]
- changed=$(git diff --name-only develop... | grep '.py$' | grep -v ^var/)
- [[ $changed ]] && \
flake8 --format pylint --config share/spack/qa/flake8-framework $changed
# Check if changed files are flake8 conformant [packages]
- changed=$(git diff --name-only develop... | grep '.py$' | grep ^var/)
# Exempt url lines in changed packages from overlong errors.
- for file in $changed; do \
[[ file = *package.py ]] && \
perl -i~ -pe 's/^(\s*url\s*=.*)$/\1 # NOQA/' $file; \
done
- [[ $changed ]] && \
flake8 --format pylint --config share/spack/qa/flake8-packages $changed
after_success:
- coveralls
notifications:
email:
recipients:
- tgamblin@llnl.gov
on_success: change
on_failure: always