.travis.yml 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173
  1. language: generic
  2. env:
  3. global:
  4. # make variables
  5. - OCAMLC=ocamlc.opt
  6. - OCAMLOPT=ocamlopt.opt
  7. - ADD_REVISION=1
  8. # SauceLabs
  9. - secure: SjyKefmjUEXi0IKHGGpcbLAajU0mLHONg8aA8LoY7Q9nAkSN6Aql+fzS38Boq7w1jWn+2FOpr+4jy0l6wVd/bftsF+huFfYpFJmdh8BlKmE0K71zZAral0H1c7YxkuQpPiJCIFGXqtkvev7SWTy0z31u7kuuQeEyW27boXe5cDA=
  10. - secure: sUvWUjCyPuWht4seNa4f2VG9DkvXkhZyLZfjJO9TUAHB2JndS16E2j/qrvKEjycyH6w8tU/B9vnjDRvvGrYXxEXcBEwsJVfkorFnRl9uwGCGIYrzjMhssEl3fMYZK7P304f+gAp5ULrDBX2gIaKeSa8lUNRtz2PsZOieE4kMdhk=
  11. # Bintray
  12. - secure: "ETbwZaeRq8wIVZVyUk1IsNctYVuQa/U2biRkF9pQkz3MEXpaneynclVzNjm8rnm8JqfKcjUDUvQJBP1KYrJYq3tAJFhl31YUnS0FsF3sgLIcnHkhbRA24xJdIlCwHP6QUPoiyPbkec43NRwrF0071KOMD51vgUToXRtAe3o/15g="
  13. - secure: "Fcrrge2f4jFYDOopig2rwkQvgJw6Ra8UK6OwTVk08wecytzVaOJK1TcB22PSvZ+h0ZLJs34T+pXHFjlNuSWm4+CwGSvnltRD1/svjS8zOqK7RzuUdzHz87yruz9PFqV63HTas6qtmgLqp8n/Q6AhtDLF39BTZPyDzEbi9qkwRuI="
  14. - secure: "VBJDQNJ9uvdt0aszo7oU3txuRvjkuLmuHZGOkrd4wE/5B4sX5jzx/+dnrKcNTXJCmQ/rVLuMu9GyxqVjNHlzce678voxdQNOtNkNgpkr1qN9/A9rRnCp77hH27ErdthpWxbmcnE62hAJ83TIKSvn//5lAkx4sMCKS1NXEWQ5qec="
  15. # HAXECI_GH_TOKEN: haxe-ci Github personal access token
  16. - secure: "TpEMYTLgNrVD7kR6hs6EwyWNXUxnfV6XO5MGvYQncKXB1N65PG18n4WQFhnKaH8C2QTFE7dq7688ooXGzwWeoT9WAOBey10jP1f7LXEAjMGAUA4vh2zS93qBZ92ZgzCDZnQN7ZOTQGocwU6Xolu+7/6hP2M8041HBixmFuNkXF4="
  17. # deploy_key_decrypt
  18. - secure: "A75uYqU0Xz6plIgSewEs0QQWe472dCMb9kf3j7Hx0DS7dApXgx8++189sw9Sv0wam5KPtbcIM292MucjGCb5zocVj9xCUVgajhEA0QpTuDMBjk/cg3ClWCGjfybaCl2E5LLdUs7Zy4b4oNWtVikOWLWJ4sC1kaarR9p6kv8yYZg="
  19. sudo: false
  20. addons:
  21. apt:
  22. packages: &apt_common
  23. - ocaml-native-compilers
  24. - camlp4
  25. - zlib1g-dev
  26. - libgc-dev
  27. apt_targets:
  28. - &apt_cpp [*apt_common, gcc-multilib, g++-multilib]
  29. - &apt_cs [*apt_common, mono-devel, mono-mcs]
  30. - &apt_python [*apt_common, python3]
  31. - &apt_flash [*apt_common, libgd2-xpm, ia32-libs, ia32-libs-multiarch]
  32. matrix:
  33. include:
  34. #########
  35. # linux #
  36. #########
  37. - os: linux
  38. env: TEST=third-party
  39. language: php
  40. php: 5.4
  41. addons: {apt: {packages: [*apt_cpp, *apt_cs, *apt_python]}}
  42. - os: linux
  43. env: TEST=macro
  44. addons: {apt: {packages: [*apt_cs, *apt_python]}}
  45. - os: linux
  46. env:
  47. - TEST=neko
  48. - BINTRAY=1
  49. - DEPLOY=1
  50. - os: linux
  51. env:
  52. - TEST=js
  53. - SAUCE=1
  54. addons: {apt: {packages: *apt_common}, sauce_connect: true}
  55. - os: linux
  56. env: TEST=php
  57. language: php
  58. php: 5.4
  59. - os: linux
  60. env: TEST=cpp
  61. addons: {apt: {packages: *apt_cpp}}
  62. - os: linux
  63. env: TEST=flash9
  64. addons: {apt: {packages: *apt_flash}}
  65. - os: linux
  66. env: TEST=as3
  67. addons: {apt: {packages: *apt_flash}}
  68. - os: linux
  69. env: TEST=java
  70. - os: linux
  71. env: TEST=cs
  72. addons: {apt: {packages: *apt_cs}}
  73. - os: linux
  74. env: TEST=python
  75. addons: {apt: {packages: *apt_python}}
  76. #######
  77. # osx #
  78. #######
  79. - os: osx
  80. env: TEST=third-party
  81. - os: osx
  82. env: TEST=macro
  83. - os: osx
  84. env:
  85. - TEST=neko
  86. - BINTRAY=1
  87. - os: osx
  88. env: TEST=js
  89. - os: osx
  90. env: TEST=php
  91. - os: osx
  92. env: TEST=cpp
  93. - os: osx
  94. env: TEST=flash9
  95. - os: osx
  96. env: TEST=as3
  97. - os: osx
  98. env: TEST=java
  99. - os: osx
  100. env: TEST=cs
  101. - os: osx
  102. env: TEST=python
  103. install:
  104. # Install haxe and neko dependencies
  105. - if [ "${TRAVIS_OS_NAME}" = "osx" ]; then
  106. travis_retry brew update;
  107. travis_retry brew install ocaml camlp4;
  108. fi
  109. # Install neko
  110. - if [ "${TRAVIS_OS_NAME}" = "linux" ]; then
  111. travis_retry git clone https://github.com/HaxeFoundation/neko.git ~/neko;
  112. cd ~/neko;
  113. make os=${TRAVIS_OS_NAME} -s;
  114. export PATH="$PATH:$HOME/neko/bin";
  115. export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$HOME/neko/bin";
  116. export NEKOPATH="$HOME/neko/bin";
  117. cd $TRAVIS_BUILD_DIR;
  118. elif [ "${TRAVIS_OS_NAME}" = "osx" ]; then
  119. travis_retry brew install neko --HEAD;
  120. fi
  121. before_script:
  122. - if [ "${TRAVIS_OS_NAME}" = "osx" ]; then
  123. travis_retry brew install mysql &&
  124. mysql.server start;
  125. mysql -u root -e "create user if not exists travis@localhost identified by '';";
  126. fi
  127. - mysql -u root -e "CREATE DATABASE haxe_test;"
  128. - mysql -u root -e "grant all on haxe_test.* to travis@localhost;"
  129. script:
  130. - make package_src -s
  131. - make -s
  132. - make tools -s
  133. - make package_bin -s
  134. - export PATH="$PATH:$TRAVIS_BUILD_DIR"
  135. - export HAXE_STD_PATH="$TRAVIS_BUILD_DIR/std"
  136. - cd tests/
  137. - mkdir ~/haxelib && haxelib setup ~/haxelib
  138. - haxe -version
  139. - haxe RunCi.hxml
  140. - neko RunCi.n
  141. - cd $TRAVIS_BUILD_DIR
  142. branches:
  143. except:
  144. # A hack to prevent building for tags, assuming they all start with a number.
  145. # https://github.com/travis-ci/travis-ci/issues/1532
  146. - /^[0-9]/
  147. notifications:
  148. webhooks:
  149. urls:
  150. - https://webhooks.gitter.im/e/95a5fa471c27beee8e7c
  151. on_success: change # options: [always|never|change] default: always
  152. on_failure: always # options: [always|never|change] default: always
  153. on_start: false # default: false
  154. deploy:
  155. provider: bintray
  156. on:
  157. all_branches: true
  158. condition: "-e extra/bintray.json"
  159. skip_cleanup: true
  160. file: "extra/bintray.json"
  161. user: "${BINTRAY_USERNAME}"
  162. key: "${BINTRAY_API_KEY}"