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.

197 lines
5.5 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. # ubuntu-17.10
  36. - stage: Build (1st run)
  37. os: linux
  38. compiler: gcc
  39. env: CONFIG=DefaultDebug LINUX=ubuntu-17.10 COMPILER=gcc
  40. install:
  41. - rm -rf build
  42. - travis/install_linux.sh
  43. script:
  44. - travis/build.sh Build1
  45. before_cache:
  46. - docker cp storm:/storm/. .
  47. after_failure:
  48. - find build -iname '*err*.log' -type f -print -exec cat {} \;
  49. - stage: Build (1st run)
  50. os: linux
  51. compiler: gcc
  52. env: CONFIG=DefaultRelease LINUX=ubuntu-17.10 COMPILER=gcc
  53. install:
  54. - rm -rf build
  55. - travis/install_linux.sh
  56. script:
  57. - travis/build.sh Build1
  58. before_cache:
  59. - docker cp storm:/storm/. .
  60. after_failure:
  61. - find build -iname '*err*.log' -type f -print -exec cat {} \;
  62. ###
  63. # Stage: Build (2nd run)
  64. ###
  65. # ubuntu-17.10
  66. - stage: Build (2nd run)
  67. os: linux
  68. compiler: gcc
  69. env: CONFIG=DefaultDebug LINUX=ubuntu-17.10 COMPILER=gcc
  70. install:
  71. - travis/install_linux.sh
  72. script:
  73. - travis/build.sh Build2
  74. before_cache:
  75. - docker cp storm:/storm/. .
  76. after_failure:
  77. - find build -iname '*err*.log' -type f -print -exec cat {} \;
  78. - stage: Build (2nd run)
  79. os: linux
  80. compiler: gcc
  81. env: CONFIG=DefaultRelease LINUX=ubuntu-17.10 COMPILER=gcc
  82. install:
  83. - travis/install_linux.sh
  84. script:
  85. - travis/build.sh Build2
  86. before_cache:
  87. - docker cp storm:/storm/. .
  88. after_failure:
  89. - find build -iname '*err*.log' -type f -print -exec cat {} \;
  90. ###
  91. # Stage: Build (3rd run)
  92. ###
  93. # ubuntu-17.10
  94. - stage: Build (3rd run)
  95. os: linux
  96. compiler: gcc
  97. env: CONFIG=DefaultDebug LINUX=ubuntu-17.10 COMPILER=gcc
  98. install:
  99. - travis/install_linux.sh
  100. script:
  101. - travis/build.sh Build3
  102. before_cache:
  103. - docker cp storm:/storm/. .
  104. after_failure:
  105. - find build -iname '*err*.log' -type f -print -exec cat {} \;
  106. - stage: Build (3rd run)
  107. os: linux
  108. compiler: gcc
  109. env: CONFIG=DefaultRelease LINUX=ubuntu-17.10 COMPILER=gcc
  110. install:
  111. - travis/install_linux.sh
  112. script:
  113. - travis/build.sh Build3
  114. before_cache:
  115. - docker cp storm:/storm/. .
  116. after_failure:
  117. - find build -iname '*err*.log' -type f -print -exec cat {} \;
  118. ###
  119. # Stage: Build (4th run)
  120. ###
  121. # ubuntu-17.10
  122. - stage: Build (4th run)
  123. os: linux
  124. compiler: gcc
  125. env: CONFIG=DefaultDebug LINUX=ubuntu-17.10 COMPILER=gcc
  126. install:
  127. - travis/install_linux.sh
  128. script:
  129. - travis/build.sh BuildLast
  130. before_cache:
  131. - docker cp storm:/storm/. .
  132. after_failure:
  133. - find build -iname '*err*.log' -type f -print -exec cat {} \;
  134. - stage: Build (4th run)
  135. os: linux
  136. compiler: gcc
  137. env: CONFIG=DefaultRelease LINUX=ubuntu-17.10 COMPILER=gcc
  138. install:
  139. - travis/install_linux.sh
  140. script:
  141. - travis/build.sh BuildLast
  142. before_cache:
  143. - docker cp storm:/storm/. .
  144. after_failure:
  145. - find build -iname '*err*.log' -type f -print -exec cat {} \;
  146. ###
  147. # Stage: Test all
  148. ###
  149. # ubuntu-17.10
  150. - stage: Test all
  151. os: linux
  152. compiler: gcc
  153. env: CONFIG=DefaultDebug LINUX=ubuntu-17.10 COMPILER=gcc
  154. install:
  155. - travis/install_linux.sh
  156. script:
  157. - travis/build.sh TestAll
  158. before_cache:
  159. - docker cp storm:/storm/. .
  160. after_failure:
  161. - find build -iname '*err*.log' -type f -print -exec cat {} \;
  162. after_success:
  163. - docker login -u "$DOCKER_USERNAME" -p "$DOCKER_PASSWORD";
  164. - docker commit storm mvolk/storm-debug:travis;
  165. - docker push mvolk/storm-debug:travis;
  166. - stage: Test all
  167. os: linux
  168. compiler: gcc
  169. env: CONFIG=DefaultRelease LINUX=ubuntu-17.10 COMPILER=gcc
  170. install:
  171. - travis/install_linux.sh
  172. script:
  173. - travis/build.sh TestAll
  174. before_cache:
  175. - docker cp storm:/storm/. .
  176. after_failure:
  177. - find build -iname '*err*.log' -type f -print -exec cat {} \;
  178. after_success:
  179. - docker login -u "$DOCKER_USERNAME" -p "$DOCKER_PASSWORD";
  180. - docker commit storm mvolk/storm:travis;
  181. - docker push mvolk/storm:travis;