.travis.yml 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434
  1. os: osx
  2. osx_image: xcode10.1
  3. language: objective-c
  4. cache:
  5. - bundler
  6. - cocoapods
  7. stages:
  8. - checks
  9. - test
  10. jobs:
  11. include:
  12. - stage: checks
  13. # This only needs to be run once, so restrict it to an arbitrary combination
  14. before_install:
  15. - brew install clang-format
  16. - brew install swiftformat
  17. - pip install flake8
  18. script:
  19. - ./scripts/check.sh --test-only
  20. # The order of builds matters (even though they are run in parallel):
  21. # Travis will schedule them in the same order they are listed here.
  22. # Primary platforms
  23. # Run unit tests
  24. - stage: test
  25. env:
  26. - PROJECT=Firebase PLATFORM=iOS METHOD=xcodebuild
  27. before_install:
  28. - ./scripts/if_changed.sh ./scripts/install_prereqs.sh
  29. script:
  30. - travis_retry ./scripts/if_changed.sh ./scripts/build.sh $PROJECT $PLATFORM
  31. - stage: test
  32. env:
  33. - PROJECT=Core PLATFORM=iOS METHOD=pod-lib-lint
  34. before_install:
  35. - ./scripts/if_changed.sh ./scripts/install_prereqs.sh
  36. script:
  37. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseCore.podspec
  38. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseCore.podspec --use-libraries
  39. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseCore.podspec --use-modular-headers
  40. - stage: test
  41. env:
  42. - PROJECT=Auth PLATFORM=iOS METHOD=xcodebuild
  43. before_install:
  44. - ./scripts/if_changed.sh ./scripts/install_prereqs.sh
  45. script:
  46. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseAuth.podspec --platforms=ios
  47. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseAuth.podspec --platforms=tvos
  48. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseAuth.podspec --platforms=macos
  49. # TODO (renkelvin) Uncomment next line when Auth backend is fixed to support the integration tests.
  50. # - travis_retry ./scripts/if_changed.sh ./scripts/build.sh $PROJECT $PLATFORM
  51. - stage: test
  52. env:
  53. - PROJECT=InstanceID PLATFORM=iOS METHOD=pod-lib-lint
  54. before_install:
  55. - ./scripts/if_changed.sh ./scripts/install_prereqs.sh
  56. script:
  57. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseInstanceID.podspec --platforms=ios
  58. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseInstanceID.podspec --platforms=tvos
  59. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseInstanceID.podspec --platforms=macos
  60. - stage: test
  61. env:
  62. - PROJECT=Database PLATFORM=all METHOD=xcodebuild
  63. before_install:
  64. - ./scripts/if_changed.sh ./scripts/install_prereqs.sh
  65. script:
  66. - travis_retry ./scripts/if_changed.sh ./scripts/build.sh $PROJECT $PLATFORM
  67. # The pod lib lint tests are fast enough that it's not worth a separate stage.
  68. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseDatabase.podspec --skip-tests
  69. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseDatabase.podspec --use-libraries --skip-tests
  70. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseDatabase.podspec --use-modular-headers --skip-tests
  71. env:
  72. - PROJECT=DynamicLinks PLATFORM=all METHOD=pod-lib-lint
  73. before_install:
  74. - ./scripts/if_changed.sh ./scripts/install_prereqs.sh
  75. script:
  76. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseDynamicLinks.podspec
  77. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseDynamicLinks.podspec --use-libraries
  78. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseDynamicLinks.podspec --use-modular-headers
  79. - stage: test
  80. env:
  81. - PROJECT=Messaging PLATFORM=all METHOD=xcodebuild
  82. before_install:
  83. - ./scripts/if_changed.sh ./scripts/install_prereqs.sh
  84. script:
  85. # Run both build.sh and pod lib lint tests to get multi iOS version test coverage
  86. - travis_retry ./scripts/if_changed.sh ./scripts/build.sh $PROJECT $PLATFORM
  87. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseMessaging.podspec
  88. - stage: test
  89. env:
  90. - PROJECT=Storage PLATFORM=all METHOD=xcodebuild
  91. before_install:
  92. - ./scripts/if_changed.sh ./scripts/install_prereqs.sh
  93. script:
  94. - travis_retry ./scripts/if_changed.sh ./scripts/build.sh $PROJECT $PLATFORM
  95. # The pod lib lint tests are fast enough that it's not worth a separate stage.
  96. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseStorage.podspec --skip-tests
  97. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseStorage.podspec --use-libraries --skip-tests
  98. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseStorage.podspec --use-modular-headers --skip-tests
  99. - stage: test
  100. env:
  101. - PROJECT=Functions PLATFORM=iOS METHOD=pod-lib-lint
  102. before_install:
  103. - ./scripts/if_changed.sh ./scripts/install_prereqs.sh
  104. script:
  105. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseFunctions.podspec
  106. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseFunctions.podspec --use-libraries
  107. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseFunctions.podspec --use-modular-headers
  108. - stage: test
  109. env:
  110. - PROJECT=InAppMessaging PLATFORM=iOS METHOD=xcodebuild
  111. before_install:
  112. - ./scripts/if_changed.sh ./scripts/install_prereqs.sh
  113. script:
  114. - travis_retry ./scripts/if_changed.sh ./scripts/build.sh $PROJECT $PLATFORM
  115. - stage: test
  116. env:
  117. - PROJECT=Firestore PLATFORM=iOS METHOD=xcodebuild
  118. before_install:
  119. - ./scripts/if_changed.sh ./scripts/install_prereqs.sh
  120. script:
  121. - travis_retry ./scripts/if_changed.sh ./scripts/build.sh $PROJECT $PLATFORM $METHOD
  122. - stage: test
  123. env:
  124. - PROJECT=GoogleUtilities PLATFORM=iOS METHOD=pod-lib-lint
  125. before_install:
  126. - ./scripts/if_changed.sh ./scripts/install_prereqs.sh
  127. script:
  128. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb GoogleUtilities.podspec
  129. # pod lib lint to check build and warnings for dynamic framework build (use_frameworks!)
  130. - stage: test
  131. env:
  132. - PROJECT=Firebase PLATFORM=iOS METHOD=pod-lib-lint
  133. before_install:
  134. - ./scripts/if_changed.sh ./scripts/install_prereqs.sh
  135. script:
  136. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseAnalyticsInterop.podspec
  137. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseAuthInterop.podspec
  138. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseInAppMessaging.podspec
  139. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseInAppMessagingDisplay.podspec
  140. - stage: test
  141. env:
  142. - PROJECT=Firestore PLATFORM=iOS METHOD=pod-lib-lint
  143. before_install:
  144. - ./scripts/if_changed.sh ./scripts/install_prereqs.sh
  145. script:
  146. # Eliminate the one warning from BoringSSL when CocoaPods 1.6.0 is available.
  147. # The travis_wait is necessary because the command takes more than 10 minutes.
  148. - travis_wait 30 ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseFirestore.podspec --platforms=ios --allow-warnings --no-subspecs
  149. # pod lib lint to check build and warnings for static library build - only on cron jobs
  150. - stage: test
  151. if: type = cron
  152. env:
  153. - PROJECT=Firebase PLATFORM=iOS METHOD=pod-lib-lint
  154. before_install:
  155. - ./scripts/install_prereqs.sh
  156. script:
  157. # TODO investigate why macos tests hang for FirebaseAuth - keychain related?
  158. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseAuth.podspec --use-libraries --platforms=ios,tvos
  159. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseAuth.podspec --use-modular-headers --platforms=ios,tvos
  160. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseAuth.podspec --use-libraries --platforms=macos --skip-tests
  161. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseAuth.podspec --use-modular-headers --platforms=macos --skip-tests
  162. - travis_retry ./scripts/pod_lib_lint.rb FirebaseAnalyticsInterop.podspec --use-libraries
  163. - travis_retry ./scripts/pod_lib_lint.rb FirebaseAnalyticsInterop.podspec --use-modular-headers
  164. - travis_retry ./scripts/pod_lib_lint.rb FirebaseAuthInterop.podspec --use-libraries
  165. - travis_retry ./scripts/pod_lib_lint.rb FirebaseAuthInterop.podspec --use-modular-headers
  166. - travis_retry ./scripts/pod_lib_lint.rb FirebaseInAppMessaging.podspec --use-libraries
  167. - travis_retry ./scripts/pod_lib_lint.rb FirebaseInAppMessaging.podspec --use-modular-headers
  168. - travis_retry ./scripts/pod_lib_lint.rb FirebaseInAppMessagingDisplay.podspec --use-libraries
  169. - travis_retry ./scripts/pod_lib_lint.rb FirebaseInAppMessagingDisplay.podspec --use-modular-headers
  170. # Split from previous stage to avoid overflowing 45 minute sub-job limit.
  171. - stage: test
  172. if: type = cron
  173. env:
  174. - PROJECT=Firebase PLATFORM=iOS METHOD=pod-lib-lint
  175. before_install:
  176. - ./scripts/install_prereqs.sh
  177. script:
  178. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseInstanceID.podspec --use-libraries --platforms=ios
  179. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseInstanceID.podspec --use-libraries --platforms=tvos
  180. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseInstanceID.podspec --use-libraries --platforms=macos
  181. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseInstanceID.podspec --use-modular-headers --platforms=ios
  182. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseInstanceID.podspec --use-modular-headers --platforms=tvos
  183. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseInstanceID.podspec --use-modular-headers --platforms=macos
  184. # The Protobuf dependency of FirebaseMessaging has warnings with --use-libraries.
  185. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseMessaging.podspec --use-libraries --allow-warnings
  186. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb FirebaseMessaging.podspec --use-modular-headers
  187. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb GoogleUtilities.podspec --use-libraries
  188. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb GoogleUtilities.podspec --use-modular-headers
  189. - stage: test
  190. if: type = cron
  191. env:
  192. - PROJECT=Firestore PLATFORM=iOS METHOD=pod-lib-lint
  193. before_install:
  194. - ./scripts/install_prereqs.sh
  195. script:
  196. # TBD - non-portable path warnings
  197. # The travis_wait is necessary because the command takes more than 10 minutes.
  198. - travis_wait 45 ./scripts/pod_lib_lint.rb FirebaseFirestore.podspec --use-libraries --allow-warnings --no-subspecs
  199. # GoogleDataTransport unit tests and pod linting using the default Xcode version.
  200. - stage: test
  201. env:
  202. - PROJECT=GoogleDataTransport PLATFORM=iOS METHOD=xcodebuild
  203. before_install:
  204. - ./scripts/if_changed.sh ./scripts/install_prereqs.sh
  205. script:
  206. - travis_retry ./scripts/if_changed.sh ./scripts/build.sh $PROJECT $PLATFORM
  207. - travis_retry ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb GoogleDataTransport.podspec
  208. # GoogleDataTransport integration tests using the default Xcode version.
  209. - stage: test
  210. env:
  211. - PROJECT=GoogleDataTransportIntegrationTest PLATFORM=iOS METHOD=xcodebuild
  212. before_install:
  213. - ./scripts/if_changed.sh ./scripts/install_prereqs.sh
  214. script:
  215. - travis_retry ./scripts/if_changed.sh ./scripts/build.sh $PROJECT $PLATFORM
  216. # GoogleDataTransportCCTSupport unit tests and pod linting using the default Xcode version.
  217. - stage: test
  218. env:
  219. - PROJECT=GoogleDataTransportCCTSupport PLATFORM=iOS METHOD=xcodebuild
  220. before_install:
  221. - ./scripts/if_changed.sh ./scripts/install_prereqs.sh
  222. script:
  223. - ./scripts/if_changed.sh ./scripts/build.sh $PROJECT $PLATFORM
  224. - ./scripts/if_changed.sh ./scripts/pod_lib_lint.rb GoogleDataTransportCCTSupport.podspec
  225. # Daily test for symbol collisions between Firebase and CocoaPods.
  226. - stage: test
  227. if: type = cron
  228. env:
  229. - PROJECT=SymbolCollision PLATFORM=iOS METHOD=xcodebuild
  230. before_install:
  231. - ./scripts/install_prereqs.sh
  232. script:
  233. - travis_retry ./scripts/build.sh $PROJECT $PLATFORM $METHOD
  234. # Alternative platforms
  235. - stage: test
  236. env:
  237. - PROJECT=Firestore PLATFORM=macOS METHOD=cmake
  238. before_install:
  239. - ./scripts/if_changed.sh ./scripts/install_prereqs.sh
  240. script:
  241. - travis_retry ./scripts/if_changed.sh ./scripts/build.sh $PROJECT $PLATFORM $METHOD
  242. # Test Firestore on Xcode 8 to use old llvm to ensure C++ portability.
  243. - stage: test
  244. osx_image: xcode8.3
  245. env:
  246. - PROJECT=Firestore PLATFORM=iOS METHOD=xcodebuild XCODE_VERSION=8.3.3
  247. before_install:
  248. - ./scripts/if_changed.sh ./scripts/install_prereqs.sh
  249. script:
  250. - travis_retry ./scripts/if_changed.sh ./scripts/build.sh $PROJECT $PLATFORM $METHOD
  251. # Community-supported platforms
  252. - stage: test
  253. env:
  254. - PROJECT=Firebase PLATFORM=macOS METHOD=xcodebuild
  255. before_install:
  256. - ./scripts/if_changed.sh ./scripts/install_prereqs.sh
  257. script:
  258. - travis_retry ./scripts/if_changed.sh ./scripts/build.sh $PROJECT $PLATFORM
  259. - stage: test
  260. env:
  261. - PROJECT=Firebase PLATFORM=tvOS METHOD=xcodebuild
  262. before_install:
  263. - ./scripts/if_changed.sh ./scripts/install_prereqs.sh
  264. script:
  265. - travis_retry ./scripts/if_changed.sh ./scripts/build.sh $PROJECT $PLATFORM
  266. - stage: test
  267. env:
  268. - PROJECT=Firestore PLATFORM=macOS METHOD=xcodebuild
  269. before_install:
  270. - ./scripts/if_changed.sh ./scripts/install_prereqs.sh
  271. script:
  272. - travis_retry ./scripts/if_changed.sh ./scripts/build.sh $PROJECT $PLATFORM
  273. - stage: test
  274. env:
  275. - PROJECT=Firestore PLATFORM=tvOS METHOD=xcodebuild
  276. before_install:
  277. - ./scripts/if_changed.sh ./scripts/install_prereqs.sh
  278. script:
  279. - travis_retry ./scripts/if_changed.sh ./scripts/build.sh $PROJECT $PLATFORM
  280. # Firestore sanitizers
  281. - stage: test
  282. env:
  283. - PROJECT=Firestore PLATFORM=iOS METHOD=xcodebuild SANITIZERS=asan
  284. before_install:
  285. - ./scripts/if_changed.sh ./scripts/install_prereqs.sh
  286. script:
  287. - travis_retry ./scripts/if_changed.sh ./scripts/build.sh $PROJECT $PLATFORM $METHOD
  288. - stage: test
  289. env:
  290. - PROJECT=Firestore PLATFORM=iOS METHOD=xcodebuild SANITIZERS=tsan
  291. before_install:
  292. - ./scripts/if_changed.sh ./scripts/install_prereqs.sh
  293. script:
  294. - travis_retry ./scripts/if_changed.sh ./scripts/build.sh $PROJECT $PLATFORM $METHOD
  295. # TODO(varconst): enable UBSan in xcodebuild. Right now if fails during
  296. # linkage (it works if enabled together with ASan, but it's supposed to be
  297. # usable on its own, too).
  298. - stage: test
  299. env:
  300. - PROJECT=Firestore PLATFORM=macOS METHOD=cmake SANITIZERS=asan
  301. before_install:
  302. - ./scripts/if_changed.sh ./scripts/install_prereqs.sh
  303. script:
  304. - travis_retry ./scripts/if_changed.sh ./scripts/build.sh $PROJECT $PLATFORM $METHOD
  305. - stage: test
  306. env:
  307. - PROJECT=Firestore PLATFORM=macOS METHOD=cmake SANITIZERS=tsan
  308. before_install:
  309. - ./scripts/if_changed.sh ./scripts/install_prereqs.sh
  310. script:
  311. - travis_retry ./scripts/if_changed.sh ./scripts/build.sh $PROJECT $PLATFORM $METHOD
  312. # Validate Cocoapods configurations
  313. # This may take long time, so we would like to run it only once all other tests pass
  314. # Validate Cocoapods 1.7.0 compatibility
  315. - stage: test
  316. if: type = cron
  317. env:
  318. - POD_CONFIG_DIR=Cocoapods1_7_0_multiprojects_frameworks
  319. script:
  320. - travis_retry ./CocoapodsIntegrationTest/scripts/build_with_environment.sh --gemfile=./CocoapodsIntegrationTest/TestEnvironments/${POD_CONFIG_DIR}/Gemfile --podfile=./CocoapodsIntegrationTest/TestEnvironments/${POD_CONFIG_DIR}/Podfile
  321. - stage: test
  322. if: type = cron
  323. env:
  324. - POD_CONFIG_DIR=Cocoapods1_7_0_frameworks
  325. script:
  326. - travis_retry ./CocoapodsIntegrationTest/scripts/build_with_environment.sh --gemfile=./CocoapodsIntegrationTest/TestEnvironments/${POD_CONFIG_DIR}/Gemfile --podfile=./CocoapodsIntegrationTest/TestEnvironments/${POD_CONFIG_DIR}/Podfile
  327. - stage: test
  328. if: type = cron
  329. env:
  330. - POD_CONFIG_DIR=Cocoapods1_7_0_multiprojects_staticLibs
  331. script:
  332. - travis_retry ./CocoapodsIntegrationTest/scripts/build_with_environment.sh --gemfile=./CocoapodsIntegrationTest/TestEnvironments/${POD_CONFIG_DIR}/Gemfile --podfile=./CocoapodsIntegrationTest/TestEnvironments/${POD_CONFIG_DIR}/Podfile
  333. - stage: test
  334. if: type = cron
  335. env:
  336. - POD_CONFIG_DIR=Cocoapods1_7_0_staticLibs
  337. script:
  338. - travis_retry ./CocoapodsIntegrationTest/scripts/build_with_environment.sh --gemfile=./CocoapodsIntegrationTest/TestEnvironments/${POD_CONFIG_DIR}/Gemfile --podfile=./CocoapodsIntegrationTest/TestEnvironments/${POD_CONFIG_DIR}/Podfile
  339. # Validate Cocoapods 1.6.1 compatibility
  340. - stage: test
  341. if: type = cron
  342. env:
  343. - POD_CONFIG_DIR=Cocoapods1_6_1_frameworks
  344. script:
  345. - travis_retry ./CocoapodsIntegrationTest/scripts/build_with_environment.sh --gemfile=./CocoapodsIntegrationTest/TestEnvironments/${POD_CONFIG_DIR}/Gemfile --podfile=./CocoapodsIntegrationTest/TestEnvironments/${POD_CONFIG_DIR}/Podfile
  346. - stage: test
  347. if: type = cron
  348. env:
  349. - POD_CONFIG_DIR=Cocoapods1_6_1_staticLibs
  350. script:
  351. - travis_retry ./CocoapodsIntegrationTest/scripts/build_with_environment.sh --gemfile=./CocoapodsIntegrationTest/TestEnvironments/${POD_CONFIG_DIR}/Gemfile --podfile=./CocoapodsIntegrationTest/TestEnvironments/${POD_CONFIG_DIR}/Podfile
  352. allow_failures:
  353. # Run fuzz tests only on cron jobs.
  354. - stage: test
  355. if: type = cron
  356. env:
  357. - PROJECT=Firestore PLATFORM=iOS METHOD=fuzz
  358. before_install:
  359. - ./scripts/install_prereqs.sh
  360. script:
  361. # The travis_wait is necessary because fuzzing runs for 40 minutes.
  362. - travis_wait 45 ./scripts/fuzzing_ci.sh
  363. # TODO(varconst): UBSan for CMake. UBSan failures are non-fatal by default,
  364. # need to make them fatal for the purposes of the test run.
  365. # TODO(varconst): disallow sanitizers to fail once we fix all existing issues.
  366. - env:
  367. - PROJECT=Firestore PLATFORM=macOS METHOD=cmake SANITIZERS=asan
  368. - env:
  369. - PROJECT=Firestore PLATFORM=macOS METHOD=cmake SANITIZERS=tsan
  370. - env:
  371. - PROJECT=Firestore PLATFORM=iOS METHOD=xcodebuild SANITIZERS=asan
  372. - env:
  373. - PROJECT=Firestore PLATFORM=iOS METHOD=xcodebuild SANITIZERS=tsan
  374. - env:
  375. - PROJECT=GoogleDataTransportIntegrationTest PLATFORM=iOS METHOD=xcodebuild
  376. - env:
  377. - PROJECT=InAppMessaging PLATFORM=iOS METHOD=xcodebuild
  378. # TODO(varconst): enable if it's possible to make this flag work on build
  379. # stages. It's supposed to avoid waiting for jobs that are allowed to fail
  380. # before reporting the results.
  381. # fast_finish: true
  382. branches:
  383. only:
  384. - master