| # Licensed under the Apache License, Version 2.0 (the "License"); |
| # you may not use this file except in compliance with the License. |
| # You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| |
| # We need to set "sudo: true" in order to use a virtual machine instead of a container, because |
| # SSH tests fail in the container. See: |
| # https://docs.travis-ci.com/user/reference/overview/#Virtualization-environments |
| dist: trusty |
| sudo: true |
| |
| language: python |
| |
| python: |
| - '2.7' |
| |
| env: |
| # The CONCURRENCY environment var is used in tox.ini to override the --numprocesses argument |
| # for PyTest's xdist plugin and the --jobs argument for PyLint. The reason this is necessary is |
| # that in automatic concurrency mode the Travis environments may report a large amount of |
| # available cores, but concurrent tests may fail. |
| - CONCURRENCY=1 TOX_ENV=pylint_core |
| - CONCURRENCY=1 TOX_ENV=pylint_tests |
| - CONCURRENCY=1 TOX_ENV=core |
| - CONCURRENCY=1 TOX_ENV=extensions |
| - CONCURRENCY=1 TOX_ENV=e2e |
| - CONCURRENCY=1 TOX_ENV=ssh |
| - CONCURRENCY=1 TOX_ENV=docs |
| |
| before_install: |
| # Create SSH keys for SSH tests |
| - ssh-keygen -f $HOME/.ssh/id_rsa -t rsa -N '' |
| - cat $HOME/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys |
| |
| # Python dependencies |
| - pip install --upgrade pip |
| - pip install --upgrade setuptools |
| - pip install tox |
| - tox --version |
| |
| script: |
| - tox -e $TOX_ENV |