www

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README

.travis.yml (3725B)


      1 language: c
      2 
      3 addons:
      4   apt:
      5     packages: &common_apt_packages
      6       # graphical environment
      7       - scrot
      8       - twm
      9       # automated GUI testing
     10       - sikuli-ide
     11       # Missing dependencies for sikuli-ide
     12       #- libantlr3-runtime-java # on 16.04
     13       - antlr3 # on 14.04
     14       #- jaffl-java # unavailable on Travis
     15       - libjna-java
     16       - libcommons-cli-java
     17       - libjson-simple-java
     18       - libdc1394-22
     19       - libdc1394-22-dev
     20       - wmctrl
     21       # example-os build dependencies:
     22       - nasm
     23       - mtools
     24       - genisoimage
     25 
     26 matrix:
     27   include:
     28     - os: linux
     29       env: MODE=self-test # Ensure that the Makefile works, especially with parallel builds.
     30       script: make -j 10 test
     31       sudo: true
     32       addons:
     33         apt:
     34           packages:
     35             - *common_apt_packages
     36             - qemu
     37             - qemu-system-x86
     38             - qemu-system-arm
     39             - bochs-sdl
     40             - dosbox
     41     - os: linux
     42       env: MODE=gui-sh
     43       sudo: false
     44       addons:
     45         apt:
     46           packages:
     47             - *common_apt_packages
     48     - os: linux
     49       env: MODE=dosbox
     50       sudo: false
     51       addons:
     52         apt:
     53           packages:
     54             - *common_apt_packages
     55             - dosbox
     56     - os: osx
     57       env: MODE=osx-test # Ensure that the Makefile works. Check that the generated os.bat works in sh mode
     58       before_install:
     59         - brew install cdrtools
     60         - brew install mtools
     61         - brew cask install gdisk
     62         - brew install imagemagick # --with-x11
     63       script: make all test/noemu test/macos
     64     - os: linux
     65       env: MODE=qemu-system-i386-floppy
     66       sudo: false
     67       addons:
     68         apt:
     69           packages:
     70             - *common_apt_packages
     71             - qemu
     72             - qemu-system-x86
     73     - os: linux
     74       env: MODE=qemu-system-i386-cdrom
     75       sudo: false
     76       addons:
     77         apt:
     78           packages:
     79             - *common_apt_packages
     80             - qemu
     81             - qemu-system-x86
     82     - os: linux
     83       env: MODE=qemu-system-arm
     84       sudo: false
     85       addons:
     86         apt:
     87           packages:
     88             - *common_apt_packages
     89             - qemu
     90             - qemu-system-arm
     91     # Thanks to https://keyholesoftware.com/2012/12/05/building_vagrant_boxes_with_veewee_on_travis/ for making me realize that VirtualBox will actually work with sudo
     92     - os: linux
     93       env: MODE=virtualbox
     94       sudo: true
     95       addons:
     96         apt:
     97           packages:
     98             - *common_apt_packages
     99             #- virtualbox
    100     - os: linux
    101       env: MODE=bochs
    102       sudo: false
    103       addons:
    104         apt:
    105           packages:
    106             - *common_apt_packages
    107             - bochs-sdl
    108 
    109 install:
    110   # TODO: put these in a Makefile target, to share the code with the appveyor configuration
    111   - make --version
    112   - nasm -v
    113   - mtools --version
    114   - mtools || true
    115   - mkisofs --version
    116   - zip --help
    117   - unzip -h
    118   - gdisk --version
    119   - import --version || test "$MODE" = osx-test # import --version has a non-zero exit code on the Travis installation
    120   - Xvfb -help
    121   - ssh -V
    122   - ./utils/install-sikulix.sh
    123   - export PATH="$HOME/sikulix/:$PATH"
    124   - if test "$MODE" = virtualbox -o "$MODE" = self-test; then ./utils/install-virtualbox.sh; fi
    125 
    126 script:
    127   - make test/${MODE}
    128   - |
    129     ./utils/auto-push.sh "https://github.com/jsmaniac/os-test-framework.git" \
    130                          "git@github.com:jsmaniac/os-test-framework-deploy-artifacts.git" \
    131                          "screenshots-$TRAVIS_BRANCH-$MODE" \
    132                          "deploy-base" \
    133                          "edf345aad47e" \
    134                          "deploy-screenshots" \
    135                          "$(if test "$TRAVIS_BRANCH" = "master"; then echo master; else echo dev; fi)"