Files
avatar2/.travis.yml
T
Marius Muench 2fedf9b20e Dev/target update (#49)
* updated ref to qemu

* updated ref to panda

* modify panda-exec path for CI

* update panda-ref

* updated references to MAINLINED avatar changeds in panda

* fix pygdbmi version for python<3.5

pygdbmi droppsed support for python 2.7 and 3.x<3.5 with v0.9.0.3,
hence we fallback to 0.9.0.2 in those cases
2020-01-28 22:07:47 +01:00

65 lines
4.9 KiB
YAML

sudo: enabled
language: python
python:
- "2.7"
services:
- docker
before_install:
- docker pull ubuntu:18.04
- docker run -v /home/travis/build/$TRAVIS_REPO_SLUG:/avatar2 --name ubuntu --cap-add=SYS_PTRACE --security-opt seccomp=unconfined -dit ubuntu:18.04
- docker exec ubuntu apt-get update
- docker exec ubuntu apt-get install -y sudo
install:
# NOTE: every command is executed starting from '/'
- docker exec ubuntu apt-get install -y git
- docker exec ubuntu apt-get install -y cmake
- docker exec ubuntu apt-get install -y python python-pip
- docker exec ubuntu apt-get install -y python3 python3-pip
- docker exec ubuntu apt-get install -y gdb
- docker exec ubuntu apt-get install -y pkg-config
- docker exec ubuntu apt-get install -y gdb-multiarch
- docker exec ubuntu apt-get install -y libcapstone3
- docker exec ubuntu apt-get install -y libcapstone-dev
- docker exec ubuntu pip2 install --upgrade pip
- docker exec ubuntu pip3 install --upgrade pip
- docker exec ubuntu pip2 install nose
- docker exec ubuntu pip3 install nose
- docker exec ubuntu pip2 install ./avatar2/
- docker exec ubuntu pip3 install ./avatar2/
## Ugly hackery to fix keystone install paths on ubuntu
- docker exec ubuntu bash -c 'cp /usr/local/lib/python2.7/dist-packages/usr/lib/python2.7/dist-packages/keystone/libkeystone.so /usr/local/lib/python2.7/dist-packages/keystone'
- docker exec ubuntu bash -c 'cp /usr/local/lib/python3.6/dist-packages/usr/lib/python3/dist-packages/keystone/libkeystone.so /usr/local/lib/python3.6/dist-packages/keystone'
script:
- docker exec ubuntu bash -c 'cd avatar2/ && nosetests-2.7 ./tests/test_remote_memoryprotocol.py'
- docker exec ubuntu bash -c 'cd avatar2/ && nosetests-2.7 ./tests/test_gdbprotocol.py'
- docker exec ubuntu bash -c 'cd avatar2/ && nosetests-3.4 ./tests/test_remote_memoryprotocol.py'
- docker exec ubuntu bash -c 'cd avatar2/ && nosetests-3.4 ./tests/test_gdbprotocol.py'
- docker exec ubuntu bash -c 'cd avatar2/ && echo Yes | bash ./targets/build_qemu.sh'
- docker exec ubuntu bash -c 'cd avatar2/ && AVATAR2_GDB_EXECUTABLE=gdb-multiarch AVATAR2_QEMU_EXECUTABLE=./targets/build/qemu/arm-softmmu/qemu-system-arm nosetests-2.7 ./tests/test_qemutarget.py'
- docker exec ubuntu bash -c 'cd avatar2/ && AVATAR2_GDB_EXECUTABLE=gdb-multiarch AVATAR2_QEMU_EXECUTABLE=./targets/build/qemu/arm-softmmu/qemu-system-arm nosetests-3.4 ./tests/test_qemutarget.py'
- docker exec ubuntu bash -c 'cd avatar2/ && AVATAR2_GDB_EXECUTABLE=gdb-multiarch AVATAR2_QEMU_EXECUTABLE=./targets/build/qemu/arm-softmmu/qemu-system-arm nosetests-2.7 ./tests/pyperipheral/test_pyperipheral.py'
- docker exec ubuntu bash -c 'cd avatar2/ && AVATAR2_GDB_EXECUTABLE=gdb-multiarch AVATAR2_QEMU_EXECUTABLE=./targets/build/qemu/arm-softmmu/qemu-system-arm nosetests-3.4 ./tests/pyperipheral/test_pyperipheral.py'
- docker exec ubuntu bash -c 'cd avatar2/ && echo Yes | bash ./targets/build_panda.sh'
- docker exec ubuntu bash -c 'cd avatar2/ && AVATAR2_GDB_EXECUTABLE=gdb-multiarch AVATAR2_QEMU_EXECUTABLE=./targets/build/panda/panda/arm-softmmu/panda-system-arm nosetests-2.7 ./tests/test_qemutarget.py'
- docker exec ubuntu bash -c 'cd avatar2/ && AVATAR2_GDB_EXECUTABLE=gdb-multiarch AVATAR2_QEMU_EXECUTABLE=./targets/build/panda/panda/arm-softmmu/panda-system-arm nosetests-3.4 ./tests/test_qemutarget.py'
- docker exec ubuntu bash -c 'cd avatar2/ && AVATAR2_GDB_EXECUTABLE=gdb-multiarch AVATAR2_QEMU_EXECUTABLE=./targets/build/panda/panda/arm-softmmu/panda-system-arm nosetests-2.7 ./tests/pyperipheral/test_pyperipheral.py'
- docker exec ubuntu bash -c 'cd avatar2/ && AVATAR2_GDB_EXECUTABLE=gdb-multiarch AVATAR2_QEMU_EXECUTABLE=./targets/build/panda/panda/arm-softmmu/panda-system-arm nosetests-3.4 ./tests/pyperipheral/test_pyperipheral.py'
- docker exec ubuntu bash -c 'cd avatar2/ && AVATAR2_GDB_EXECUTABLE=gdb-multiarch AVATAR2_QEMU_EXECUTABLE=./targets/build/panda/panda/arm-softmmu/panda-system-arm AVATAR2_PANDA_EXECUTABLE=./targets/build/panda/panda/arm-softmmu/panda-system-arm nosetests-2.7 ./tests/smoke/panda_thumb.py'
- docker exec ubuntu bash -c 'cd avatar2/ && AVATAR2_GDB_EXECUTABLE=gdb-multiarch AVATAR2_QEMU_EXECUTABLE=./targets/build/panda/panda/arm-softmmu/panda-system-arm AVATAR2_PANDA_EXECUTABLE=./targets/build/panda/panda/arm-softmmu/panda-system-arm nosetests-3.4 ./tests/smoke/panda_thumb.py'
- docker exec ubuntu bash -c 'cd avatar2/ && python2 ./tests/hello_world.py'
- docker exec ubuntu bash -c 'cd avatar2/ && python3 ./tests/hello_world.py'
- docker exec ubuntu bash -c 'cd avatar2/ && nosetests-2.7 --processes=-1 --process-timeout=20 ./tests/smoke/target_wait.py'
- docker exec ubuntu bash -c 'cd avatar2/ && nosetests-3.4 --processes=-1 --process-timeout=20 ./tests/smoke/target_wait.py'