Revision ad0c16675d221938530269610308cd5a2c142687 authored by Software Heritage on 17 October 2018, 13:20 UTC, committed by Software Heritage on 17 October 2018, 13:20 UTC
0 parent
Raw File
.travis.yml
language: c
sudo: required
services:
  - docker

## We build on as many OCaml version as we can support. These versions
## are infact tags for the ocaml/opam2 Docker image that we pull.

env:
  - TAG=latest SWITCH=4.02.3
  - TAG=4.03
  - TAG=4.04
  - TAG=4.05
  - TAG=4.06 DEPLOY=true
  - TAG=4.07
  - TAG=alpine
  - TAG=centos
  - TAG=debian-stable
  - TAG=debian-testing
  - TAG=debian-unstable
  - TAG=fedora
  - TAG=opensuse
  - TAG=oraclelinux
  - TAG=ubuntu
  - TAG=ubuntu-lts

script:
  - docker build --build-arg tag=$TAG --build-arg switch=$SWITCH --tag colisanr/morbig:$TRAVIS_BRANCH .
  - docker run --entrypoint /bin/sh colisanr/morbig:$TRAVIS_BRANCH -c 'eval $(opam env) && cd /home/opam/morbig && make check && make install && make examples && make uninstall'

## We add one particular build that does not use Docker. This is the
## one testing on OSX.

matrix:
  include:
    - os: osx
      services: null
      env: null
      install:
        - brew install opam
        - opam init --no-setup
        - eval $(opam config env) && opam install --yes menhir yojson ppx_deriving_yojson visitors
      script:
        - make && make check && make install && make examples && make uninstall

## We automatically deploy sucessfull branch builds to DockerHub. This
## deployment only happens on builds that have the environment
## variable DEPLOY set to true and in Travis repositories that set the
## variable TRAVIS_DEPLOY to true. The variables DOCKER_* are filled
## in on Travis.

before_deploy:
  - echo "$DOCKER_PASSWORD" | docker login --username "$DOCKER_USERNAME" --password-stdin

deploy:
  provider: script
  skip_cleanup: true
  script: docker push colisanr/morbig:$TRAVIS_BRANCH
  on:
    branch: master
    condition:
      - $DEPLOY = true
      - $TRAVIS_DEPLOY = true
back to top