Browse Source

Generate travis file

main
Matthias Volk 8 years ago
parent
commit
7dc71ff12b
  1. 252
      .travis.yml
  2. 76
      travis/generate_travis.py

252
.travis.yml

@ -15,98 +15,218 @@ matrix:
### ###
# Ubuntu 16.10 # Ubuntu 16.10
### ###
- stage: build_dep - stage: Build dependencies
os: linux
compiler: gcc compiler: gcc
env: BUILD=DefaultDebug COMPILER=gcc-6 LINUX=ubuntu-16.10 env: BUILD=DefaultDebug COMPILER=gcc-6 LINUX=ubuntu-16.10
install: export OS=linux; export COMPILER='gcc-6'; export LINUX='ubuntu-16.10'; install: export OS=linux; export COMPILER='gcc-6'; export LINUX='ubuntu-16.10'
travis/install_linux.sh travis/install_linux.sh
os: linux script: export OS=linux; export COMPILER='gcc-6'; export LINUX='ubuntu-16.10'
script: export OS=linux; export COMPILER='gcc-6'; export LINUX='ubuntu-16.10'; travis/postsubmit.sh DefaultDebug BuildDep before_cache:
travis/postsubmit.sh DefaultDebug BuildDep
before_cache:
docker cp storm:/storm/. . docker cp storm:/storm/. .
- stage: build_lib - stage: Build library
os: linux
compiler: gcc compiler: gcc
env: BUILD=DefaultDebug COMPILER=gcc-6 LINUX=ubuntu-16.10 env: BUILD=DefaultDebug COMPILER=gcc-6 LINUX=ubuntu-16.10
install: export OS=linux; export COMPILER='gcc-6'; export LINUX='ubuntu-16.10'; install: export OS=linux; export COMPILER='gcc-6'; export LINUX='ubuntu-16.10'
travis/install_linux.sh travis/install_linux.sh
script: export OS=linux; export COMPILER='gcc-6'; export LINUX='ubuntu-16.10'
travis/postsubmit.sh DefaultDebug BuildLib before_cache:
docker cp storm:/storm/. .
- stage: Build all
os: linux os: linux
script: export OS=linux; export COMPILER='gcc-6'; export LINUX='ubuntu-16.10'; compiler: gcc
travis/postsubmit.sh DefaultDebug BuildLib env: BUILD=DefaultDebug COMPILER=gcc-6 LINUX=ubuntu-16.10
before_cache: install: export OS=linux; export COMPILER='gcc-6'; export LINUX='ubuntu-16.10'
travis/install_linux.sh
script: export OS=linux; export COMPILER='gcc-6'; export LINUX='ubuntu-16.10'
travis/postsubmit.sh DefaultDebug BuildAll before_cache:
docker cp storm:/storm/. . docker cp storm:/storm/. .
- stage: build_all - stage: Test all
os: linux
compiler: gcc compiler: gcc
env: BUILD=DefaultDebug COMPILER=gcc-6 LINUX=ubuntu-16.10 env: BUILD=DefaultDebug COMPILER=gcc-6 LINUX=ubuntu-16.10
install: export OS=linux; export COMPILER='gcc-6'; export LINUX='ubuntu-16.10'; install: export OS=linux; export COMPILER='gcc-6'; export LINUX='ubuntu-16.10'
travis/install_linux.sh travis/install_linux.sh
script: export OS=linux; export COMPILER='gcc-6'; export LINUX='ubuntu-16.10'
travis/postsubmit.sh DefaultDebug TestAll before_cache:
docker cp storm:/storm/. .
- stage: Build dependencies
os: linux os: linux
script: export OS=linux; export COMPILER='gcc-6'; export LINUX='ubuntu-16.10'; compiler: gcc
travis/postsubmit.sh DefaultDebug BuildAll env: BUILD=DefaultRelease COMPILER=gcc-6 LINUX=ubuntu-16.10
before_cache: install: export OS=linux; export COMPILER='gcc-6'; export LINUX='ubuntu-16.10'
travis/install_linux.sh
script: export OS=linux; export COMPILER='gcc-6'; export LINUX='ubuntu-16.10'
travis/postsubmit.sh DefaultRelease BuildDep before_cache:
docker cp storm:/storm/. . docker cp storm:/storm/. .
- stage: test_all - stage: Build library
os: linux
compiler: gcc compiler: gcc
env: BUILD=DefaultDebug COMPILER=gcc-6 LINUX=ubuntu-16.10 env: BUILD=DefaultRelease COMPILER=gcc-6 LINUX=ubuntu-16.10
install: export OS=linux; export COMPILER='gcc-6'; export LINUX='ubuntu-16.10'; install: export OS=linux; export COMPILER='gcc-6'; export LINUX='ubuntu-16.10'
travis/install_linux.sh
script: export OS=linux; export COMPILER='gcc-6'; export LINUX='ubuntu-16.10'
travis/postsubmit.sh DefaultRelease BuildLib before_cache:
docker cp storm:/storm/. .
- stage: Build all
os: linux
compiler: gcc
env: BUILD=DefaultRelease COMPILER=gcc-6 LINUX=ubuntu-16.10
install: export OS=linux; export COMPILER='gcc-6'; export LINUX='ubuntu-16.10'
travis/install_linux.sh travis/install_linux.sh
script: export OS=linux; export COMPILER='gcc-6'; export LINUX='ubuntu-16.10'
travis/postsubmit.sh DefaultRelease BuildAll before_cache:
docker cp storm:/storm/. .
- stage: Test all
os: linux os: linux
script: export OS=linux; export COMPILER='gcc-6'; export LINUX='ubuntu-16.10'; compiler: gcc
travis/postsubmit.sh DefaultDebug TestAll env: BUILD=DefaultRelease COMPILER=gcc-6 LINUX=ubuntu-16.10
before_cache: install: export OS=linux; export COMPILER='gcc-6'; export LINUX='ubuntu-16.10'
travis/install_linux.sh
script: export OS=linux; export COMPILER='gcc-6'; export LINUX='ubuntu-16.10'
travis/postsubmit.sh DefaultRelease TestAll before_cache:
docker cp storm:/storm/. . docker cp storm:/storm/. .
# - compiler: gcc
# env: TEST=DefaultRelease COMPILER=gcc-6 LINUX=ubuntu-16.10
# install: export OS=linux; export COMPILER='gcc-6'; export LINUX='ubuntu-16.10';
# travis/install_linux.sh
# os: linux
# script: export OS=linux; export COMPILER='gcc-6'; export LINUX='ubuntu-16.10';
# travis/postsubmit.sh DefaultRelease
# before_cache:
# docker cp storm:/storm/. .
### ###
# Debian 9 # Debian 9
### ###
# - compiler: gcc - stage: Build dependencies
# env: TEST=DefaultDebug COMPILER=gcc-6 LINUX=debian-9 os: linux
# install: export OS=linux; export COMPILER='gcc-6'; export LINUX='debian-9'; compiler: gcc
# travis/install_linux.sh env: BUILD=DefaultDebug COMPILER=gcc-6 LINUX=debian-9
# os: linux install: export OS=linux; export COMPILER='gcc-6'; export LINUX='debian-9'
# script: export OS=linux; export COMPILER='gcc-6'; export LINUX='debian-9'; travis/install_linux.sh
# travis/postsubmit.sh DefaultDebug script: export OS=linux; export COMPILER='gcc-6'; export LINUX='debian-9'
# before_cache: travis/postsubmit.sh DefaultDebug BuildDep before_cache:
# docker cp storm:/storm/. . docker cp storm:/storm/. .
# - compiler: gcc - stage: Build library
# env: TEST=DefaultRelease COMPILER=gcc-6 LINUX=debian-9 os: linux
# install: export OS=linux; export COMPILER='gcc-6'; export LINUX='debian-9'; compiler: gcc
# travis/install_linux.sh env: BUILD=DefaultDebug COMPILER=gcc-6 LINUX=debian-9
# os: linux install: export OS=linux; export COMPILER='gcc-6'; export LINUX='debian-9'
# script: export OS=linux; export COMPILER='gcc-6'; export LINUX='debian-9'; travis/install_linux.sh
# travis/postsubmit.sh DefaultRelease script: export OS=linux; export COMPILER='gcc-6'; export LINUX='debian-9'
# before_cache: travis/postsubmit.sh DefaultDebug BuildLib before_cache:
# docker cp storm:/storm/. . docker cp storm:/storm/. .
- stage: Build all
os: linux
compiler: gcc
env: BUILD=DefaultDebug COMPILER=gcc-6 LINUX=debian-9
install: export OS=linux; export COMPILER='gcc-6'; export LINUX='debian-9'
travis/install_linux.sh
script: export OS=linux; export COMPILER='gcc-6'; export LINUX='debian-9'
travis/postsubmit.sh DefaultDebug BuildAll before_cache:
docker cp storm:/storm/. .
- stage: Test all
os: linux
compiler: gcc
env: BUILD=DefaultDebug COMPILER=gcc-6 LINUX=debian-9
install: export OS=linux; export COMPILER='gcc-6'; export LINUX='debian-9'
travis/install_linux.sh
script: export OS=linux; export COMPILER='gcc-6'; export LINUX='debian-9'
travis/postsubmit.sh DefaultDebug TestAll before_cache:
docker cp storm:/storm/. .
- stage: Build dependencies
os: linux
compiler: gcc
env: BUILD=DefaultRelease COMPILER=gcc-6 LINUX=debian-9
install: export OS=linux; export COMPILER='gcc-6'; export LINUX='debian-9'
travis/install_linux.sh
script: export OS=linux; export COMPILER='gcc-6'; export LINUX='debian-9'
travis/postsubmit.sh DefaultRelease BuildDep before_cache:
docker cp storm:/storm/. .
- stage: Build library
os: linux
compiler: gcc
env: BUILD=DefaultRelease COMPILER=gcc-6 LINUX=debian-9
install: export OS=linux; export COMPILER='gcc-6'; export LINUX='debian-9'
travis/install_linux.sh
script: export OS=linux; export COMPILER='gcc-6'; export LINUX='debian-9'
travis/postsubmit.sh DefaultRelease BuildLib before_cache:
docker cp storm:/storm/. .
- stage: Build all
os: linux
compiler: gcc
env: BUILD=DefaultRelease COMPILER=gcc-6 LINUX=debian-9
install: export OS=linux; export COMPILER='gcc-6'; export LINUX='debian-9'
travis/install_linux.sh
script: export OS=linux; export COMPILER='gcc-6'; export LINUX='debian-9'
travis/postsubmit.sh DefaultRelease BuildAll before_cache:
docker cp storm:/storm/. .
- stage: Test all
os: linux
compiler: gcc
env: BUILD=DefaultRelease COMPILER=gcc-6 LINUX=debian-9
install: export OS=linux; export COMPILER='gcc-6'; export LINUX='debian-9'
travis/install_linux.sh
script: export OS=linux; export COMPILER='gcc-6'; export LINUX='debian-9'
travis/postsubmit.sh DefaultRelease TestAll before_cache:
docker cp storm:/storm/. .
### ###
# Mac OS X # Mac OS X
### ###
# - compiler: clang - stage: Build dependencies
# env: TEST=DefaultDebug COMPILER=clang-4.0 STL=libc++ os: osx
# install: export OS=osx; export COMPILER='clang-4.0'; export STL='libc++'; compiler: clang
# travis/install_osx.sh env: BUILD=DefaultDebug COMPILER=clang-4.0 STL=libc++
# os: osx install: export OS=osx; export COMPILER='clang-4.0'; export STL='libc++'
# osx_image: xcode8 travis/install_osx.sh
# script: export OS=osx; export COMPILER='clang-4.0'; export STL='libc++'; script: export OS=osx; export COMPILER='clang-4.0'; export STL='libc++'
# travis/postsubmit.sh DefaultDebug travis/postsubmit.sh DefaultDebug BuildDep - stage: Build library
# - compiler: clang os: osx
# env: TEST=DefaultRelease COMPILER=clang-4.0 STL=libc++ compiler: clang
# install: export OS=osx; export COMPILER='clang-4.0'; export STL='libc++'; env: BUILD=DefaultDebug COMPILER=clang-4.0 STL=libc++
# travis/install_osx.sh install: export OS=osx; export COMPILER='clang-4.0'; export STL='libc++'
# os: osx travis/install_osx.sh
# osx_image: xcode8 script: export OS=osx; export COMPILER='clang-4.0'; export STL='libc++'
# script: export OS=osx; export COMPILER='clang-4.0'; export STL='libc++'; travis/postsubmit.sh DefaultDebug BuildLib - stage: Build all
# travis/postsubmit.sh DefaultRelease os: osx
compiler: clang
env: BUILD=DefaultDebug COMPILER=clang-4.0 STL=libc++
install: export OS=osx; export COMPILER='clang-4.0'; export STL='libc++'
travis/install_osx.sh
script: export OS=osx; export COMPILER='clang-4.0'; export STL='libc++'
travis/postsubmit.sh DefaultDebug BuildAll - stage: Test all
os: osx
compiler: clang
env: BUILD=DefaultDebug COMPILER=clang-4.0 STL=libc++
install: export OS=osx; export COMPILER='clang-4.0'; export STL='libc++'
travis/install_osx.sh
script: export OS=osx; export COMPILER='clang-4.0'; export STL='libc++'
travis/postsubmit.sh DefaultDebug TestAll - stage: Build dependencies
os: osx
compiler: clang
env: BUILD=DefaultRelease COMPILER=clang-4.0 STL=libc++
install: export OS=osx; export COMPILER='clang-4.0'; export STL='libc++'
travis/install_osx.sh
script: export OS=osx; export COMPILER='clang-4.0'; export STL='libc++'
travis/postsubmit.sh DefaultRelease BuildDep - stage: Build library
os: osx
compiler: clang
env: BUILD=DefaultRelease COMPILER=clang-4.0 STL=libc++
install: export OS=osx; export COMPILER='clang-4.0'; export STL='libc++'
travis/install_osx.sh
script: export OS=osx; export COMPILER='clang-4.0'; export STL='libc++'
travis/postsubmit.sh DefaultRelease BuildLib - stage: Build all
os: osx
compiler: clang
env: BUILD=DefaultRelease COMPILER=clang-4.0 STL=libc++
install: export OS=osx; export COMPILER='clang-4.0'; export STL='libc++'
travis/install_osx.sh
script: export OS=osx; export COMPILER='clang-4.0'; export STL='libc++'
travis/postsubmit.sh DefaultRelease BuildAll - stage: Test all
os: osx
compiler: clang
env: BUILD=DefaultRelease COMPILER=clang-4.0 STL=libc++
install: export OS=osx; export COMPILER='clang-4.0'; export STL='libc++'
travis/install_osx.sh
script: export OS=osx; export COMPILER='clang-4.0'; export STL='libc++'
travis/postsubmit.sh DefaultRelease TestAll
# Enable caching # Enable caching
cache: cache:

76
travis/generate_travis.py

@ -0,0 +1,76 @@
# Configuration for Linux
configs_linux = [
# OS, compiler
("ubuntu-16.10", "gcc", "-6"),
("debian-9", "gcc", "-6"),
]
# Configurations for Mac
configs_mac = [
# OS, compiler
("osx", "clang", "-4.0"),
]
# Build types
build_types = [
"DefaultDebug",
"DefaultRelease",
]
# Stages in travis
stages = [
("Build dependencies", "BuildDep"),
("Build library", "BuildLib"),
("Build all", "BuildAll"),
("Test all", "TestAll"),
]
if __name__ == "__main__":
s = ""
# Generate all configurations
# Linux via Docker
for config in configs_linux:
linux = config[0]
compiler = "{}{}".format(config[1], config[2])
s += "\n"
s += " ###\n"
s += " # {}\n".format(linux)
s += " ###\n"
s += "\n"
for build in build_types:
for stage in stages:
s += " - stage: {}\n".format(stage[0])
s += " os: linux\n"
s += " compiler: {}\n".format(config[1])
s += " env: BUILD={} COMPILER={} LINUX={}\n".format(build, compiler, linux)
s += " install: export OS=linux; export COMPILER='{}'; export LINUX='{}'\n".format(compiler, linux)
s += " travis/install_linux.sh\n"
s += " script: export OS=linux; export COMPILER='{}'; export LINUX='{}'\n".format(compiler, linux)
s += " travis/postsubmit.sh {} {}".format(build, stage[1])
s += " before_cache:\n"
s += " docker cp storm:/storm/. .\n"
# Mac OS X
for config in configs_mac:
osx = config[0]
compiler = "{}{}".format(config[1], config[2])
s += "\n"
s += " ###\n"
s += " # {}\n".format(osx)
s += " ###\n"
s += "\n"
for build in build_types:
for stage in stages:
s += " - stage: {}\n".format(stage[0])
s += " os: osx\n"
s += " compiler: {}\n".format(config[1])
s += " env: BUILD={} COMPILER={} STL=libc++\n".format(build, compiler)
s += " install: export OS=osx; export COMPILER='{}'; export STL='libc++'\n".format(compiler)
s += " travis/install_osx.sh\n"
s += " script: export OS=osx; export COMPILER='{}'; export STL='libc++'\n".format(compiler)
s += " travis/postsubmit.sh {} {}".format(build, stage[1])
print(s)
|||||||
100:0
Loading…
Cancel
Save