.jenkins.yml 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332
  1. # Yaml Axis Plugin
  2. # https://wiki.jenkins-ci.org/display/JENKINS/Yaml+Axis+Plugin
  3. xcode_version:
  4. - 9.2
  5. - 9.3
  6. - 9.4
  7. - 10.0
  8. - 10.1
  9. - 10.2.1
  10. target:
  11. - osx
  12. - docs
  13. - ios-static
  14. - ios-dynamic
  15. - ios-swift
  16. - osx-swift
  17. - watchos
  18. - cocoapods-ios
  19. - cocoapods-osx
  20. - cocoapods-watchos
  21. - swiftlint
  22. - tvos
  23. - osx-encryption
  24. - osx-object-server
  25. # These are disabled because the machinen with the devices attached is currently offline
  26. # - ios-device-objc-ios8
  27. # - ios-device-objc-ios10
  28. # - tvos-device
  29. # These are disabled because they were very unreliable on CI
  30. # - ios-device-swift-ios8
  31. # - ios-device-swift-ios10
  32. configuration:
  33. - Debug
  34. - Release
  35. # Combinations have to be excluded in a way that's hard to read.
  36. # This table shows which jobs will run:
  37. # +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  38. # | Configuration Matrix | osx | docs | ios-static | ios-dynamic | ios-swift | osx-swift | watchos | cocoapods-ios | cocoapods-osx | cocoapods-watchos | swiftlint | tvos | osx-encryption | osx-object-server | ios-device-objc-ios8 | ios-device-swift-ios8 | ios-device-objc-ios10 | ios-device-swift-ios10 | tvos-device |
  39. # | -------------------- | --- | ---- | ---------- | ----------- | --------- | --------- | ------- | ------------- | ------------- | ----------------- | --------- | ---- | -------------- | ----------------- | -------------------- | --------------------- | --------------------- | ---------------------- | ----------- |
  40. # | 9.2 | Debug | X | | X | | | | | | | | | | | | | | | | |
  41. # | 9.2 | Release | X | | X | X | X | X | X | X | X | X | | X | X | X | X | | X | | |
  42. # | -------------------- | --- | ---- | ---------- | ----------- | --------- | --------- | ------- | ------------- | ------------- | ----------------- | --------- | ---- | -------------- | ----------------- | -------------------- | --------------------- | --------------------- | ---------------------- | ----------- |
  43. # | 9.3 | Debug | X | | | | | | | | | | | | | | | | | | |
  44. # | 9.3 | Release | X | | X | X | X | X | X | X | X | X | | X | | | | | | | |
  45. # | -------------------- | --- | ---- | ---------- | ----------- | --------- | --------- | ------- | ------------- | ------------- | ----------------- | --------- | ---- | -------------- | ----------------- | -------------------- | --------------------- | --------------------- | ---------------------- | ----------- |
  46. # | 9.4 | Debug | X | | | | | | | | | | | | | | | | | | |
  47. # | 9.4 | Release | X | | X | X | X | X | X | X | X | X | | X | | | | | | | |
  48. # | -------------------- | --- | ---- | ---------- | ----------- | --------- | --------- | ------- | ------------- | ------------- | ----------------- | --------- | ---- | -------------- | ----------------- | -------------------- | --------------------- | --------------------- | ---------------------- | ----------- |
  49. # | 10.0 | Debug | X | | | | | | | | | | | | | | | | | | |
  50. # | 10.0 | Release | X | | X | X | X | X | X | X | X | X | | X | | | | | | | |
  51. # | -------------------- | --- | ---- | ---------- | ----------- | --------- | --------- | ------- | ------------- | ------------- | ----------------- | --------- | ---- | -------------- | ----------------- | -------------------- | --------------------- | --------------------- | ---------------------- | ----------- |
  52. # | 10.1 | Debug | X | | | | | | | | | | | | | | | | | | |
  53. # | 10.1 | Release | X | | X | X | X | X | X | X | X | X | | X | | | | | | | |
  54. # | -------------------- | --- | ---- | ---------- | ----------- | --------- | --------- | ------- | ------------- | ------------- | ----------------- | --------- | ---- | -------------- | ----------------- | -------------------- | --------------------- | --------------------- | ---------------------- | ----------- |
  55. # | 10.2.1| Debug | X | | | X | X | X | X | | | | | X | | | | | | | |
  56. # | 10.2.1| Release | X | X | X | X | X | X | X | X | X | X | X | X | X | X | | | X | | X |
  57. # +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  58. exclude:
  59. ################
  60. # docs
  61. ################
  62. # Just run on 10.2 Release
  63. - xcode_version: 9.2
  64. target: docs
  65. - xcode_version: 9.3
  66. target: docs
  67. - xcode_version: 9.4
  68. target: docs
  69. - xcode_version: 10.0
  70. target: docs
  71. - xcode_version: 10.1
  72. target: docs
  73. - target: docs
  74. configuration: Debug
  75. ################
  76. # ios-static
  77. ################
  78. # Skip Debug on everything but 9.2
  79. - xcode_version: 9.3
  80. target: ios-static
  81. configuration: Debug
  82. - xcode_version: 9.4
  83. target: ios-static
  84. configuration: Debug
  85. - xcode_version: 10.0
  86. target: ios-static
  87. configuration: Debug
  88. - xcode_version: 10.1
  89. target: ios-static
  90. configuration: Debug
  91. - xcode_version: 10.2.1
  92. target: ios-static
  93. configuration: Debug
  94. ################
  95. # ios-dynamic
  96. ################
  97. # Skip Debug on everything but 10.2
  98. - xcode_version: 9.2
  99. target: ios-dynamic
  100. configuration: Debug
  101. - xcode_version: 9.3
  102. target: ios-dynamic
  103. configuration: Debug
  104. - xcode_version: 9.4
  105. target: ios-dynamic
  106. configuration: Debug
  107. - xcode_version: 10.0
  108. target: ios-dynamic
  109. configuration: Debug
  110. - xcode_version: 10.1
  111. target: ios-dynamic
  112. configuration: Debug
  113. ################
  114. # ios-swift
  115. ################
  116. # Skip Debug on everything but 10.2
  117. - xcode_version: 9.2
  118. target: ios-swift
  119. configuration: Debug
  120. - xcode_version: 9.3
  121. target: ios-swift
  122. configuration: Debug
  123. - xcode_version: 9.4
  124. target: ios-swift
  125. configuration: Debug
  126. - xcode_version: 10.0
  127. target: ios-swift
  128. configuration: Debug
  129. - xcode_version: 10.1
  130. target: ios-swift
  131. configuration: Debug
  132. ################
  133. # osx-swift
  134. ################
  135. # Skip Debug on everything but 10.2
  136. - xcode_version: 9.2
  137. target: osx-swift
  138. configuration: Debug
  139. - xcode_version: 9.3
  140. target: osx-swift
  141. configuration: Debug
  142. - xcode_version: 9.4
  143. target: osx-swift
  144. configuration: Debug
  145. - xcode_version: 10.0
  146. target: osx-swift
  147. configuration: Debug
  148. - xcode_version: 10.1
  149. target: osx-swift
  150. configuration: Debug
  151. ################
  152. # watchos
  153. ################
  154. # Skip Debug on everything but 10.2
  155. - xcode_version: 9.2
  156. target: watchos
  157. configuration: Debug
  158. - xcode_version: 9.3
  159. target: watchos
  160. configuration: Debug
  161. - xcode_version: 9.4
  162. target: watchos
  163. configuration: Debug
  164. - xcode_version: 10.0
  165. target: watchos
  166. configuration: Debug
  167. - xcode_version: 10.1
  168. target: watchos
  169. configuration: Debug
  170. ################
  171. # cocoapods
  172. ################
  173. # Skip Debug
  174. - target: cocoapods-ios
  175. configuration: Debug
  176. - target: cocoapods-osx
  177. configuration: Debug
  178. - target: cocoapods-watchos
  179. configuration: Debug
  180. ################
  181. # swiftlint
  182. ################
  183. # Just run on 10.2 Release
  184. - xcode_version: 9.2
  185. target: swiftlint
  186. - xcode_version: 9.3
  187. target: swiftlint
  188. - xcode_version: 9.4
  189. target: swiftlint
  190. - xcode_version: 10.0
  191. target: swiftlint
  192. - xcode_version: 10.1
  193. target: swiftlint
  194. - target: swiftlint
  195. configuration: Debug
  196. ################
  197. # tvos
  198. ################
  199. # Skip Debug on everything but 10.2
  200. - xcode_version: 9.2
  201. target: tvos
  202. configuration: Debug
  203. - xcode_version: 9.3
  204. target: tvos
  205. configuration: Debug
  206. - xcode_version: 9.4
  207. target: tvos
  208. configuration: Debug
  209. - xcode_version: 10.0
  210. target: tvos
  211. configuration: Debug
  212. - xcode_version: 10.1
  213. target: tvos
  214. configuration: Debug
  215. ################
  216. # osx-encryption
  217. ################
  218. # Just run on 9.2/10.2 Release
  219. - xcode_version: 9.3
  220. target: osx-encryption
  221. - xcode_version: 9.4
  222. target: osx-encryption
  223. - xcode_version: 10.0
  224. target: osx-encryption
  225. - xcode_version: 10.1
  226. target: osx-encryption
  227. - target: osx-encryption
  228. configuration: Debug
  229. ################
  230. # osx-object-server
  231. ################
  232. # Just run on 9.2/10.2 Release
  233. - xcode_version: 9.3
  234. target: osx-object-server
  235. - xcode_version: 9.4
  236. target: osx-object-server
  237. - xcode_version: 10.0
  238. target: osx-object-server
  239. - xcode_version: 10.1
  240. target: osx-object-server
  241. - target: osx-object-server
  242. configuration: Debug
  243. ################
  244. # ios-device-objc-ios8
  245. ################
  246. # Just run on 9.2/10.2 Release
  247. - xcode_version: 9.3
  248. target: ios-device-objc-ios8
  249. - xcode_version: 10.0
  250. target: ios-device-objc-ios8
  251. - xcode_version: 10.1
  252. target: ios-device-objc-ios8
  253. - target: ios-device-objc-ios8
  254. configuration: Debug
  255. ################
  256. # ios-device-swift-ios8
  257. ################
  258. # Just run on 9.2/10.2 Release
  259. - xcode_version: 9.3
  260. target: ios-device-swift-ios8
  261. - xcode_version: 9.4
  262. target: ios-device-swift-ios8
  263. - xcode_version: 10.0
  264. target: ios-device-swift-ios8
  265. - xcode_version: 10.1
  266. target: ios-device-swift-ios8
  267. - target: ios-device-swift-ios8
  268. configuration: Debug
  269. ################
  270. # ios-device-objc-ios10
  271. ################
  272. # Just run on 9.2/10.2 Release
  273. - xcode_version: 9.3
  274. target: ios-device-objc-ios10
  275. - xcode_version: 9.4
  276. target: ios-device-objc-ios10
  277. - xcode_version: 10.0
  278. target: ios-device-objc-ios10
  279. - xcode_version: 10.1
  280. target: ios-device-objc-ios10
  281. - target: ios-device-objc-ios10
  282. configuration: Debug
  283. ################
  284. # ios-device-swift-ios10
  285. ################
  286. # Just run on 9.2/10.2 Release
  287. - xcode_version: 9.3
  288. target: ios-device-swift-ios10
  289. - xcode_version: 9.4
  290. target: ios-device-swift-ios10
  291. - xcode_version: 10.0
  292. target: ios-device-swift-ios10
  293. - xcode_version: 10.1
  294. target: ios-device-swift-ios10
  295. - target: ios-device-swift-ios10
  296. configuration: Debug
  297. ################
  298. # tvos-device
  299. ################
  300. # Just run on 10.2 Release
  301. - xcode_version: 9.2
  302. target: tvos-device
  303. - xcode_version: 9.3
  304. target: tvos-device
  305. - xcode_version: 9.4
  306. target: tvos-device
  307. - xcode_version: 10.0
  308. target: tvos-device
  309. - xcode_version: 10.1
  310. target: tvos-device
  311. - target: tvos-device
  312. configuration: Debug