Toaster travis testing

From Yocto Project
Jump to navigationJump to search

When a patch comes in on the mailing list a bot monitoring patchwork using git-pw checks out poky-contrib toaster-next and applies the patches it also applies a patch to add a .travis.yml file to the root of the repository. These then get pushed to a github repository and the travis CI system then triggers these tests.

.travis.yml


language: python
python: "3.5"

sudo: required # We don't actually need sudo but this forces the selection of the trusty beta image
dist: trusty # We have to use trusty for the newer glibc that is needed by geckodriver

addons:
  firefox: "47.0"

cache: pip

git:
  depth: 3

install:
  - virtualenv --python=python3 $HOME/virtualenv/
  - virtualenv --python=python2 $HOME/virtualenv/
  - source $HOME/virtualenv/bin/activate
  - pip3 install -r ./bitbake/toaster-requirements.txt
  - pip3 install -r ./bitbake/lib/toaster/tests/toaster-tests-requirements.txt
  - pip3 install flake8
  - export DISPLAY=:99.0
  - sh -e /etc/init.d/xvfb start
  - sleep 3 # give xvfb some time to start
  - mkdir $HOME/bin/
  - curl -L https://github.com/mozilla/geckodriver/releases/download/v0.8.0/geckodriver-0.8.0-linux64.gz | zcat > $HOME/bin/wires
  - chmod +x $HOME/bin/wires

before_script:
  - export PATH=$PATH:$HOME/bin/
  - export TOASTER_TESTS_BROWSER=marionette
  - firefox --version
  - env
  - wires --help # verify binary runs OK

script:
  - ./bitbake/lib/toaster/manage.py test tests.browser
  - ./bitbake/lib/toaster/manage.py test toastergui
  - flake8 ./bitbake/lib/toaster/ --select F --exit-zero # We have too many errors at the moment