-
Notifications
You must be signed in to change notification settings - Fork 19
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
83 additions
and
95 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,119 +1,107 @@ | ||
language: python | ||
sudo: required | ||
python: | ||
- "2.7" | ||
- "3.5" | ||
- "3.6" | ||
- '2.7' | ||
- '3.5' | ||
- '3.6' | ||
env: | ||
- TEST_SUITE=unit_tests | ||
- TEST_SUITE=integration | ||
- TEST_SUITE=codingstandard | ||
# - TEST_SUITE=virtualenv | ||
|
||
# command to install dependencies | ||
# some are only used for travis/coveralls so we are installing them here only | ||
- TEST_SUITE=unit_tests | ||
- TEST_SUITE=integration | ||
- TEST_SUITE=codingstandard | ||
install: | ||
# Remove python warnings | ||
- unset PYTHONWARNINGS | ||
- ./test/setup_test.sh | ||
|
||
# command to run tests | ||
- unset PYTHONWARNINGS | ||
- "./test/setup_test.sh" | ||
script: | ||
# To help eventual debug, knowing which exact packages are installed can be rather useful ;) | ||
- pip freeze | ||
|
||
- | | ||
if [[ $TEST_SUITE == 'codingstandard' ]]; then | ||
# Static code analysis | ||
# -- pycodestyle (former pep8) | ||
pycodestyle --max-line-length=100 --exclude='*.pyc' alignak/* | ||
# -- pylint | ||
unset PYTHONWARNINGS | ||
pylint --rcfile=.pylintrc -r no alignak | ||
export PYTHONWARNINGS=all | ||
# -- pep257 | ||
pep257 --select=D300 alignak | ||
fi | ||
- | | ||
if [[ $TEST_SUITE == 'unit_tests' ]]; then | ||
# Run unit tests and code coverage analysis | ||
cd test | ||
# Run test suite with py.test running its coverage plugin | ||
# Dump the 10 slowest tests | ||
# Do not print log synthesis on test end | ||
# Get coverage on tests run | ||
echo "Starting tests..." | ||
# pytest --verbose --durations=10 --no-print-logs --cov=alignak --cov-report term-missing --cov-config .coveragerc test_*.py || travis_terminate 1; | ||
pytest --verbose --durations=10 --no-print-logs --cov=alignak --cov-report term-missing --cov-config .coveragerc test_actions.py || travis_terminate 1; | ||
cd .. | ||
cp test/.coverage . | ||
# codecov | ||
bash <(curl -s https://codecov.io/bash) -e TEST_SUITE | ||
fi | ||
- | | ||
- | | ||
if [[ $TEST_SUITE == 'integration' ]]; then | ||
# Run load tests and code dynamic analysis | ||
cd test_load | ||
# Run test suite with py.test running its coverage plugin | ||
# Dump the 10 slowest tests - do not capture to have some activity in Travis | ||
travis_wait 60 pytest --durations=10 --no-print-logs --capture=no -s --cov=alignak --cov-config .coveragerc test_*.py || travis_terminate 1; | ||
cd .. | ||
cp test_load/.coverage . | ||
# codecov | ||
bash <(curl -s https://codecov.io/bash) -e TEST_SUITE | ||
fi | ||
- pip freeze | ||
- | | ||
if [[ $TEST_SUITE == 'codingstandard' ]]; then | ||
# Static code analysis | ||
# -- pycodestyle (former pep8) | ||
pycodestyle --max-line-length=100 --exclude='*.pyc' alignak/* | ||
# -- pylint | ||
unset PYTHONWARNINGS | ||
pylint --rcfile=.pylintrc -r no alignak | ||
export PYTHONWARNINGS=all | ||
# -- pep257 | ||
pep257 --select=D300 alignak | ||
fi | ||
- | | ||
if [[ $TEST_SUITE == 'unit_tests' ]]; then | ||
# Run unit tests and code coverage analysis | ||
cd test | ||
# Run test suite with py.test running its coverage plugin | ||
# Dump the 10 slowest tests | ||
# Do not print log synthesis on test end | ||
# Get coverage on tests run | ||
echo "Starting tests..." | ||
# pytest --verbose --durations=10 --no-print-logs --cov=alignak --cov-report term-missing --cov-config .coveragerc test_*.py || travis_terminate 1; | ||
pytest --verbose --durations=10 --no-print-logs --cov=alignak --cov-report term-missing --cov-config .coveragerc test_actions.py || travis_terminate 1; | ||
cd .. | ||
cp test/.coverage . | ||
# codecov | ||
bash <(curl -s https://codecov.io/bash) -e TEST_SUITE | ||
fi | ||
- '' | ||
- | | ||
if [[ $TEST_SUITE == 'integration' ]]; then | ||
# Run load tests and code dynamic analysis | ||
cd test_load | ||
# Run test suite with py.test running its coverage plugin | ||
# Dump the 10 slowest tests - do not capture to have some activity in Travis | ||
travis_wait 60 pytest --durations=10 --no-print-logs --capture=no -s --cov=alignak --cov-config .coveragerc test_*.py || travis_terminate 1; | ||
cd .. | ||
cp test_load/.coverage . | ||
# codecov | ||
bash <(curl -s https://codecov.io/bash) -e TEST_SUITE | ||
fi | ||
after_success: | ||
- | | ||
if [[ $TEST_SUITE == 'unit_tests' ]]; then | ||
# to get coverage data with relative paths and not absolute we have to | ||
# execute coveralls from the base directory of the project, | ||
# so we need to move the .coverage file here : | ||
mv test/.coverage ./coverage_unit | ||
mv test_load/.coverage ./coverage_load | ||
mv test_run/.coverage ./coverage_run | ||
# Combine the coverage collected data | ||
coverage combine coverage_unit coverage_load coverage_run | ||
echo "Submitting coverage results to coveralls.io..." | ||
coveralls --rcfile=test/.coveragerc | ||
echo "Submitted" | ||
fi | ||
- | | ||
if [[ $TEST_SUITE == 'unit_tests' ]]; then | ||
travis encrypt e8230c6f686c286634045a0025f0e609778a7949 --add deploy.key | ||
./package.sh $TRAVIS_BRANCH $TRAVIS_PYTHON_VERSION deb; | ||
sudo apt-get install rpm | ||
./package.sh $TRAVIS_BRANCH $TRAVIS_PYTHON_VERSION rpm; | ||
./package.sh $TRAVIS_BRANCH $TRAVIS_PYTHON_VERSION freebsd; | ||
fi | ||
- | | ||
if [[ $TEST_SUITE == 'unit_tests' ]]; then | ||
# to get coverage data with relative paths and not absolute we have to | ||
# execute coveralls from the base directory of the project, | ||
# so we need to move the .coverage file here : | ||
mv test/.coverage ./coverage_unit | ||
mv test_load/.coverage ./coverage_load | ||
mv test_run/.coverage ./coverage_run | ||
# Combine the coverage collected data | ||
coverage combine coverage_unit coverage_load coverage_run | ||
echo "Submitting coverage results to coveralls.io..." | ||
coveralls --rcfile=test/.coveragerc | ||
echo "Submitted" | ||
fi | ||
- | | ||
if [[ $TEST_SUITE == 'unit_tests' ]]; then | ||
travis encrypt e8230c6f686c286634045a0025f0e609778a7949 --add deploy.key | ||
./package.sh $TRAVIS_BRANCH $TRAVIS_PYTHON_VERSION deb; | ||
sudo apt-get install rpm | ||
./package.sh $TRAVIS_BRANCH $TRAVIS_PYTHON_VERSION rpm; | ||
./package.sh $TRAVIS_BRANCH $TRAVIS_PYTHON_VERSION freebsd; | ||
fi | ||
notifications: | ||
webhooks: | ||
urls: | ||
- https://webhooks.gitter.im/e/b40202d91150d5c75582 | ||
on_success: change # options: [always|never|change] default: always | ||
on_failure: always # options: [always|never|change] default: always | ||
on_start: never # default: false | ||
|
||
- https://webhooks.gitter.im/e/b40202d91150d5c75582 | ||
on_success: change | ||
on_failure: always | ||
on_start: never | ||
deploy: | ||
matrix: | ||
- provider: bintray | ||
skip_cleanup: true | ||
file: .bintray.json | ||
file: ".bintray.json" | ||
user: alignak | ||
key: | ||
secure: "yuhgpgyEEvYnY1+a+Y68L7nFFUJYcSAOEo66pYis8ZduHN+1NWbynDdu7I/ndgk66iZOFA2XyVccE9kP0lLpAcQI2h8/nxFnydwzASJTusacgh/CJPrcNCbS+j/y7pWRDKkH9HRy9FWwx0DWm4PYiDe4kPVqsymuHV5eZmFpQfJMsc8e+/mfFJ2d7P0RC2fEEM1fpOhiVmL8WePmxLaNtoPudFeDHNVYd1ebNdDcmpsiLQeG/aRO2/kKGlbTREN+pm83VstwBOiVfiz3I3aj9EUz1XTTQUlVL9nTkNjwcmyF0YI5wR0ef6re0lDKrgISsRN3QP9/YJ0596k1CwRXr08vUKqMw2pZMAzNyJiyGTwus0+NN8zopLEz+ZfmRBViz/Qh8oTvgso9LQPzvy8LDEpfAzS9WHJFvkJm/SlT7VNHfJfh5SLuVWrt532Aqr6dhyuMBisQdwAo2Fo1DLkJDDDRAEiuJbceTZMYoQv29yTj81cVUmdCa67b9BrRbn+c//2xmZXpcbcyoEOjMBvIN1tlyvh7A/CoHflQak16TPfS5YkFDiy/2YTGi2aYlFVkdJwdU77By7IA2cGnupyywfOOxmLl1x/rnKfJ06G2vblBYSkBCiokO2pwArUZW2W5yVY7ycf/fMOiqKDpn2RJYqpeloeDf+c0aZFTmvzY4ug=" | ||
secure: yuhgpgyEEvYnY1+a+Y68L7nFFUJYcSAOEo66pYis8ZduHN+1NWbynDdu7I/ndgk66iZOFA2XyVccE9kP0lLpAcQI2h8/nxFnydwzASJTusacgh/CJPrcNCbS+j/y7pWRDKkH9HRy9FWwx0DWm4PYiDe4kPVqsymuHV5eZmFpQfJMsc8e+/mfFJ2d7P0RC2fEEM1fpOhiVmL8WePmxLaNtoPudFeDHNVYd1ebNdDcmpsiLQeG/aRO2/kKGlbTREN+pm83VstwBOiVfiz3I3aj9EUz1XTTQUlVL9nTkNjwcmyF0YI5wR0ef6re0lDKrgISsRN3QP9/YJ0596k1CwRXr08vUKqMw2pZMAzNyJiyGTwus0+NN8zopLEz+ZfmRBViz/Qh8oTvgso9LQPzvy8LDEpfAzS9WHJFvkJm/SlT7VNHfJfh5SLuVWrt532Aqr6dhyuMBisQdwAo2Fo1DLkJDDDRAEiuJbceTZMYoQv29yTj81cVUmdCa67b9BrRbn+c//2xmZXpcbcyoEOjMBvIN1tlyvh7A/CoHflQak16TPfS5YkFDiy/2YTGi2aYlFVkdJwdU77By7IA2cGnupyywfOOxmLl1x/rnKfJ06G2vblBYSkBCiokO2pwArUZW2W5yVY7ycf/fMOiqKDpn2RJYqpeloeDf+c0aZFTmvzY4ug= | ||
on: | ||
branch: develop | ||
- provider: bintray | ||
skip_cleanup: true | ||
file: .bintray.json | ||
file: ".bintray.json" | ||
user: alignak | ||
key: | ||
secure: "yuhgpgyEEvYnY1+a+Y68L7nFFUJYcSAOEo66pYis8ZduHN+1NWbynDdu7I/ndgk66iZOFA2XyVccE9kP0lLpAcQI2h8/nxFnydwzASJTusacgh/CJPrcNCbS+j/y7pWRDKkH9HRy9FWwx0DWm4PYiDe4kPVqsymuHV5eZmFpQfJMsc8e+/mfFJ2d7P0RC2fEEM1fpOhiVmL8WePmxLaNtoPudFeDHNVYd1ebNdDcmpsiLQeG/aRO2/kKGlbTREN+pm83VstwBOiVfiz3I3aj9EUz1XTTQUlVL9nTkNjwcmyF0YI5wR0ef6re0lDKrgISsRN3QP9/YJ0596k1CwRXr08vUKqMw2pZMAzNyJiyGTwus0+NN8zopLEz+ZfmRBViz/Qh8oTvgso9LQPzvy8LDEpfAzS9WHJFvkJm/SlT7VNHfJfh5SLuVWrt532Aqr6dhyuMBisQdwAo2Fo1DLkJDDDRAEiuJbceTZMYoQv29yTj81cVUmdCa67b9BrRbn+c//2xmZXpcbcyoEOjMBvIN1tlyvh7A/CoHflQak16TPfS5YkFDiy/2YTGi2aYlFVkdJwdU77By7IA2cGnupyywfOOxmLl1x/rnKfJ06G2vblBYSkBCiokO2pwArUZW2W5yVY7ycf/fMOiqKDpn2RJYqpeloeDf+c0aZFTmvzY4ug=" | ||
secure: yuhgpgyEEvYnY1+a+Y68L7nFFUJYcSAOEo66pYis8ZduHN+1NWbynDdu7I/ndgk66iZOFA2XyVccE9kP0lLpAcQI2h8/nxFnydwzASJTusacgh/CJPrcNCbS+j/y7pWRDKkH9HRy9FWwx0DWm4PYiDe4kPVqsymuHV5eZmFpQfJMsc8e+/mfFJ2d7P0RC2fEEM1fpOhiVmL8WePmxLaNtoPudFeDHNVYd1ebNdDcmpsiLQeG/aRO2/kKGlbTREN+pm83VstwBOiVfiz3I3aj9EUz1XTTQUlVL9nTkNjwcmyF0YI5wR0ef6re0lDKrgISsRN3QP9/YJ0596k1CwRXr08vUKqMw2pZMAzNyJiyGTwus0+NN8zopLEz+ZfmRBViz/Qh8oTvgso9LQPzvy8LDEpfAzS9WHJFvkJm/SlT7VNHfJfh5SLuVWrt532Aqr6dhyuMBisQdwAo2Fo1DLkJDDDRAEiuJbceTZMYoQv29yTj81cVUmdCa67b9BrRbn+c//2xmZXpcbcyoEOjMBvIN1tlyvh7A/CoHflQak16TPfS5YkFDiy/2YTGi2aYlFVkdJwdU77By7IA2cGnupyywfOOxmLl1x/rnKfJ06G2vblBYSkBCiokO2pwArUZW2W5yVY7ycf/fMOiqKDpn2RJYqpeloeDf+c0aZFTmvzY4ug= | ||
on: | ||
tags: true | ||
key: | ||
secure: xcvRMpwT+Gk0F+EpelwxSxixkrgb+XLS2310zj3j7+eQ2ahPD20yKX7sZsvIJs3DQjUtJwTemvgW6Yi7TFFJyYK9UA3csPbSojTonXUULjxLP8J3tmaioC2l0L3g+rzeVRbGdsBg5MBMgiz1xdheA3dlaoadL7UXIKx+ZiIjSIkcQJNZWUAPtgsnHGpNx94YGDv4zKp9sBm1Y34QPY8sRXRdlYfmBtp1k1wXVqiVk0K81c6PYoL7bGg9tywfZCGAlhzW0F4Dq9GsB+J1aKgT/QnNVS3HKID8W3wXmlIqGfiidECKjRgZuKcC7ayinuGTOhlitPRtlsAs55Suq7EbAUu4SF8QKV8q5wjtdVxln3zxLrJTAAG2rHQYI4JICjUtPocajZd5661IdHu/UnhqKKWcORK00zwTiQqly9Px/FN0C1qCmnz+1nZOECAQpUxUUXISgKQhYHFKCQK3V4DMryPzPsDuvq4aAIrjjzedca1QwC8FvQgRE13TyLm9wtgsCCZ2TM5moigY37Ea1Gw0leDnAnx6sN5ZERLRE59VxWjhO5O617+kuvxlOcAwkiRYtUPuCVlv00TySqKxtjlY9Rkpc1YLqiLiYJQYCm7ubcFMje9Cy6c8xzS0kTO7HBdPbfJ9ODEKHpOZLYD39iOUk/T60IWMIvsM1RhLTVr7z5Y= |