You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

314 lines
8.8 KiB

  1. # This file was inspired from https://github.com/google/fruit
  2. #
  3. # General config
  4. #
  5. branches:
  6. only:
  7. - master
  8. - stable
  9. sudo: required
  10. dist: trusty
  11. language: cpp
  12. # Enable caching
  13. cache:
  14. timeout: 1000
  15. directories:
  16. - build
  17. - travis/mtime_cache
  18. # Enable docker support
  19. services:
  20. - docker
  21. notifications:
  22. email:
  23. on_failure: always
  24. on_success: change
  25. recipients:
  26. secure: "Q9CW/PtyWkZwExDrfFFb9n1STGYsRfI6awv1bZHcGwfrDvhpXoMCuF8CwviIfilm7fFJJEoKizTtdRpY0HrOnY/8KY111xrtcFYosxdndv7xbESodIxQOUoIEFCO0mCNHwWYisoi3dAA7H3Yn661EsxluwHjzX5vY0xSbw0n229hlsFz092HwGLSU33zHl7eXpQk+BOFmBTRGlOq9obtDZ17zbHz1oXFZntHK/JDUIYP0b0uq8NvE2jM6CIVdcuSwmIkOhZJoO2L3Py3rBbPci+L2PSK4Smv2UjCPF8KusnOaFIyDB3LcNM9Jqq5ssJMrK/KaO6BiuYrOZXYWZ7KEg3Y/naC8HjOH1dzty+P7oW46sb9F03pTsufqD4R7wcK+9wROTztO6aJPDG/IPH7EWgrBTxqlOkVRwi2eYuQouZpZUW6EMClKbMHMIxCH2S8aOk/r1w2cNwmPEcunnP0nl413x/ByHr4fTPFykPj8pQxIsllYjpdWBRQfDOauKWGzk6LcrFW0qpWP+/aJ2vYu/IoZQMG5lMHbp6Y1Lg09pYm7Q983v3b7D+JvXhOXMyGq91HyPahA2wwKoG1GA4uoZ2I95/IFYNiKkelDd3WTBoFLNF9YFoEJNdCywm1fO2WY4WkyEFBuQcgDA+YpFMJJMxjTbivYk9jvHk2gji//2w="
  27. #
  28. # Configurations
  29. #
  30. jobs:
  31. include:
  32. ###
  33. # Stage: Build (1st run)
  34. ###
  35. # osx
  36. - stage: Build (1st run)
  37. os: osx
  38. osx_image: xcode9.1
  39. compiler: clang
  40. env: CONFIG=DefaultDebug COMPILER=clang STL=libc++
  41. install:
  42. - rm -rf build
  43. - travis/install_osx.sh
  44. script:
  45. - travis/build.sh Build1
  46. after_failure:
  47. - find build -iname '*err*.log' -type f -print -exec cat {} \;
  48. - stage: Build (1st run)
  49. os: osx
  50. osx_image: xcode9.1
  51. compiler: clang
  52. env: CONFIG=DefaultRelease COMPILER=clang STL=libc++
  53. install:
  54. - rm -rf build
  55. - travis/install_osx.sh
  56. script:
  57. - travis/build.sh Build1
  58. after_failure:
  59. - find build -iname '*err*.log' -type f -print -exec cat {} \;
  60. # ubuntu-16.10
  61. - stage: Build (1st run)
  62. os: linux
  63. compiler: gcc
  64. env: CONFIG=DefaultDebug LINUX=ubuntu-16.10 COMPILER=gcc
  65. install:
  66. - rm -rf build
  67. - travis/install_linux.sh
  68. script:
  69. - travis/build.sh Build1
  70. before_cache:
  71. - docker cp storm:/storm/. .
  72. after_failure:
  73. - find build -iname '*err*.log' -type f -print -exec cat {} \;
  74. - stage: Build (1st run)
  75. os: linux
  76. compiler: gcc
  77. env: CONFIG=DefaultRelease LINUX=ubuntu-16.10 COMPILER=gcc
  78. install:
  79. - rm -rf build
  80. - travis/install_linux.sh
  81. script:
  82. - travis/build.sh Build1
  83. before_cache:
  84. - docker cp storm:/storm/. .
  85. after_failure:
  86. - find build -iname '*err*.log' -type f -print -exec cat {} \;
  87. ###
  88. # Stage: Build (2nd run)
  89. ###
  90. # osx
  91. - stage: Build (2nd run)
  92. os: osx
  93. osx_image: xcode9.1
  94. compiler: clang
  95. env: CONFIG=DefaultDebug COMPILER=clang STL=libc++
  96. install:
  97. - travis/install_osx.sh
  98. script:
  99. - travis/build.sh Build2
  100. after_failure:
  101. - find build -iname '*err*.log' -type f -print -exec cat {} \;
  102. - stage: Build (2nd run)
  103. os: osx
  104. osx_image: xcode9.1
  105. compiler: clang
  106. env: CONFIG=DefaultRelease COMPILER=clang STL=libc++
  107. install:
  108. - travis/install_osx.sh
  109. script:
  110. - travis/build.sh Build2
  111. after_failure:
  112. - find build -iname '*err*.log' -type f -print -exec cat {} \;
  113. # ubuntu-16.10
  114. - stage: Build (2nd run)
  115. os: linux
  116. compiler: gcc
  117. env: CONFIG=DefaultDebug LINUX=ubuntu-16.10 COMPILER=gcc
  118. install:
  119. - travis/install_linux.sh
  120. script:
  121. - travis/build.sh Build2
  122. before_cache:
  123. - docker cp storm:/storm/. .
  124. after_failure:
  125. - find build -iname '*err*.log' -type f -print -exec cat {} \;
  126. - stage: Build (2nd run)
  127. os: linux
  128. compiler: gcc
  129. env: CONFIG=DefaultRelease LINUX=ubuntu-16.10 COMPILER=gcc
  130. install:
  131. - travis/install_linux.sh
  132. script:
  133. - travis/build.sh Build2
  134. before_cache:
  135. - docker cp storm:/storm/. .
  136. after_failure:
  137. - find build -iname '*err*.log' -type f -print -exec cat {} \;
  138. ###
  139. # Stage: Build (3rd run)
  140. ###
  141. # osx
  142. - stage: Build (3rd run)
  143. os: osx
  144. osx_image: xcode9.1
  145. compiler: clang
  146. env: CONFIG=DefaultDebug COMPILER=clang STL=libc++
  147. install:
  148. - travis/install_osx.sh
  149. script:
  150. - travis/build.sh Build3
  151. after_failure:
  152. - find build -iname '*err*.log' -type f -print -exec cat {} \;
  153. - stage: Build (3rd run)
  154. os: osx
  155. osx_image: xcode9.1
  156. compiler: clang
  157. env: CONFIG=DefaultRelease COMPILER=clang STL=libc++
  158. install:
  159. - travis/install_osx.sh
  160. script:
  161. - travis/build.sh Build3
  162. after_failure:
  163. - find build -iname '*err*.log' -type f -print -exec cat {} \;
  164. # ubuntu-16.10
  165. - stage: Build (3rd run)
  166. os: linux
  167. compiler: gcc
  168. env: CONFIG=DefaultDebug LINUX=ubuntu-16.10 COMPILER=gcc
  169. install:
  170. - travis/install_linux.sh
  171. script:
  172. - travis/build.sh Build3
  173. before_cache:
  174. - docker cp storm:/storm/. .
  175. after_failure:
  176. - find build -iname '*err*.log' -type f -print -exec cat {} \;
  177. - stage: Build (3rd run)
  178. os: linux
  179. compiler: gcc
  180. env: CONFIG=DefaultRelease LINUX=ubuntu-16.10 COMPILER=gcc
  181. install:
  182. - travis/install_linux.sh
  183. script:
  184. - travis/build.sh Build3
  185. before_cache:
  186. - docker cp storm:/storm/. .
  187. after_failure:
  188. - find build -iname '*err*.log' -type f -print -exec cat {} \;
  189. ###
  190. # Stage: Build (4th run)
  191. ###
  192. # osx
  193. - stage: Build (4th run)
  194. os: osx
  195. osx_image: xcode9.1
  196. compiler: clang
  197. env: CONFIG=DefaultDebug COMPILER=clang STL=libc++
  198. install:
  199. - travis/install_osx.sh
  200. script:
  201. - travis/build.sh BuildLast
  202. after_failure:
  203. - find build -iname '*err*.log' -type f -print -exec cat {} \;
  204. - stage: Build (4th run)
  205. os: osx
  206. osx_image: xcode9.1
  207. compiler: clang
  208. env: CONFIG=DefaultRelease COMPILER=clang STL=libc++
  209. install:
  210. - travis/install_osx.sh
  211. script:
  212. - travis/build.sh BuildLast
  213. after_failure:
  214. - find build -iname '*err*.log' -type f -print -exec cat {} \;
  215. # ubuntu-16.10
  216. - stage: Build (4th run)
  217. os: linux
  218. compiler: gcc
  219. env: CONFIG=DefaultDebug LINUX=ubuntu-16.10 COMPILER=gcc
  220. install:
  221. - travis/install_linux.sh
  222. script:
  223. - travis/build.sh BuildLast
  224. before_cache:
  225. - docker cp storm:/storm/. .
  226. after_failure:
  227. - find build -iname '*err*.log' -type f -print -exec cat {} \;
  228. - stage: Build (4th run)
  229. os: linux
  230. compiler: gcc
  231. env: CONFIG=DefaultRelease LINUX=ubuntu-16.10 COMPILER=gcc
  232. install:
  233. - travis/install_linux.sh
  234. script:
  235. - travis/build.sh BuildLast
  236. before_cache:
  237. - docker cp storm:/storm/. .
  238. after_failure:
  239. - find build -iname '*err*.log' -type f -print -exec cat {} \;
  240. ###
  241. # Stage: Test all
  242. ###
  243. # osx
  244. - stage: Test all
  245. os: osx
  246. osx_image: xcode9.1
  247. compiler: clang
  248. env: CONFIG=DefaultDebug COMPILER=clang STL=libc++
  249. install:
  250. - travis/install_osx.sh
  251. script:
  252. - travis/build.sh TestAll
  253. after_failure:
  254. - find build -iname '*err*.log' -type f -print -exec cat {} \;
  255. - stage: Test all
  256. os: osx
  257. osx_image: xcode9.1
  258. compiler: clang
  259. env: CONFIG=DefaultRelease COMPILER=clang STL=libc++
  260. install:
  261. - travis/install_osx.sh
  262. script:
  263. - travis/build.sh TestAll
  264. after_failure:
  265. - find build -iname '*err*.log' -type f -print -exec cat {} \;
  266. # ubuntu-16.10
  267. - stage: Test all
  268. os: linux
  269. compiler: gcc
  270. env: CONFIG=DefaultDebug LINUX=ubuntu-16.10 COMPILER=gcc
  271. install:
  272. - travis/install_linux.sh
  273. script:
  274. - travis/build.sh TestAll
  275. before_cache:
  276. - docker cp storm:/storm/. .
  277. after_failure:
  278. - find build -iname '*err*.log' -type f -print -exec cat {} \;
  279. after_success:
  280. - docker login -u "$DOCKER_USERNAME" -p "$DOCKER_PASSWORD";
  281. - docker commit storm mvolk/storm-debug:travis;
  282. - docker push mvolk/storm-debug:travis;
  283. - stage: Test all
  284. os: linux
  285. compiler: gcc
  286. env: CONFIG=DefaultRelease LINUX=ubuntu-16.10 COMPILER=gcc
  287. install:
  288. - travis/install_linux.sh
  289. script:
  290. - travis/build.sh TestAll
  291. before_cache:
  292. - docker cp storm:/storm/. .
  293. after_failure:
  294. - find build -iname '*err*.log' -type f -print -exec cat {} \;
  295. after_success:
  296. - docker login -u "$DOCKER_USERNAME" -p "$DOCKER_PASSWORD";
  297. - docker commit storm mvolk/storm:travis;
  298. - docker push mvolk/storm:travis;