@invarn/cibuild 2.9.4 → 2.9.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (547) hide show
  1. package/dist/chunk-35SI42CD.mjs +1 -0
  2. package/dist/chunk-IC45KVLJ.mjs +1 -0
  3. package/dist/chunk-XDY4V23V.mjs +1 -0
  4. package/dist/cli.cjs +14 -14
  5. package/dist/commands.mjs +1 -0
  6. package/dist/lib.mjs +3934 -0
  7. package/package.json +6 -10
  8. package/dist/src/cli.d.ts +0 -3
  9. package/dist/src/cli.d.ts.map +0 -1
  10. package/dist/src/cli.js +0 -399
  11. package/dist/src/commands/a-credential-target-follows-the-flavor-source-set.test.d.ts +0 -38
  12. package/dist/src/commands/a-credential-target-follows-the-flavor-source-set.test.d.ts.map +0 -1
  13. package/dist/src/commands/a-credential-target-follows-the-flavor-source-set.test.js +0 -222
  14. package/dist/src/commands/a-credential-two-workflows-cannot-share-is-declared-per-workflow.test.d.ts +0 -41
  15. package/dist/src/commands/a-credential-two-workflows-cannot-share-is-declared-per-workflow.test.d.ts.map +0 -1
  16. package/dist/src/commands/a-credential-two-workflows-cannot-share-is-declared-per-workflow.test.js +0 -324
  17. package/dist/src/commands/a-properties-stand-in-declares-the-keys-the-build-reads.test.d.ts +0 -2
  18. package/dist/src/commands/a-properties-stand-in-declares-the-keys-the-build-reads.test.d.ts.map +0 -1
  19. package/dist/src/commands/a-properties-stand-in-declares-the-keys-the-build-reads.test.js +0 -382
  20. package/dist/src/commands/an-already-stored-value-does-not-answer-the-target-question.test.d.ts +0 -29
  21. package/dist/src/commands/an-already-stored-value-does-not-answer-the-target-question.test.d.ts.map +0 -1
  22. package/dist/src/commands/an-already-stored-value-does-not-answer-the-target-question.test.js +0 -160
  23. package/dist/src/commands/android-gms-guard.test.d.ts +0 -9
  24. package/dist/src/commands/android-gms-guard.test.d.ts.map +0 -1
  25. package/dist/src/commands/android-gms-guard.test.js +0 -78
  26. package/dist/src/commands/android-java-version.test.d.ts +0 -12
  27. package/dist/src/commands/android-java-version.test.d.ts.map +0 -1
  28. package/dist/src/commands/android-java-version.test.js +0 -209
  29. package/dist/src/commands/android-scanner-java.test.d.ts +0 -2
  30. package/dist/src/commands/android-scanner-java.test.d.ts.map +0 -1
  31. package/dist/src/commands/android-scanner-java.test.js +0 -130
  32. package/dist/src/commands/android-scanner.d.ts +0 -250
  33. package/dist/src/commands/android-scanner.d.ts.map +0 -1
  34. package/dist/src/commands/android-scanner.js +0 -1639
  35. package/dist/src/commands/build.d.ts +0 -215
  36. package/dist/src/commands/build.d.ts.map +0 -1
  37. package/dist/src/commands/build.js +0 -1433
  38. package/dist/src/commands/build.test.d.ts +0 -13
  39. package/dist/src/commands/build.test.d.ts.map +0 -1
  40. package/dist/src/commands/build.test.js +0 -121
  41. package/dist/src/commands/detect-platform.d.ts +0 -13
  42. package/dist/src/commands/detect-platform.d.ts.map +0 -1
  43. package/dist/src/commands/detect-platform.js +0 -51
  44. package/dist/src/commands/detect-project.d.ts +0 -7
  45. package/dist/src/commands/detect-project.d.ts.map +0 -1
  46. package/dist/src/commands/detect-project.js +0 -12
  47. package/dist/src/commands/each-flavor-is-asked-for-its-own-properties-file.test.d.ts +0 -26
  48. package/dist/src/commands/each-flavor-is-asked-for-its-own-properties-file.test.d.ts.map +0 -1
  49. package/dist/src/commands/each-flavor-is-asked-for-its-own-properties-file.test.js +0 -196
  50. package/dist/src/commands/edit.d.ts +0 -12
  51. package/dist/src/commands/edit.d.ts.map +0 -1
  52. package/dist/src/commands/edit.js +0 -652
  53. package/dist/src/commands/edit.test.d.ts +0 -6
  54. package/dist/src/commands/edit.test.d.ts.map +0 -1
  55. package/dist/src/commands/edit.test.js +0 -45
  56. package/dist/src/commands/fidelity-trim.d.ts +0 -13
  57. package/dist/src/commands/fidelity-trim.d.ts.map +0 -1
  58. package/dist/src/commands/fidelity-trim.js +0 -21
  59. package/dist/src/commands/fidelity-trim.test.d.ts +0 -8
  60. package/dist/src/commands/fidelity-trim.test.d.ts.map +0 -1
  61. package/dist/src/commands/fidelity-trim.test.js +0 -79
  62. package/dist/src/commands/file-secret-collector.d.ts +0 -50
  63. package/dist/src/commands/file-secret-collector.d.ts.map +0 -1
  64. package/dist/src/commands/file-secret-collector.js +0 -217
  65. package/dist/src/commands/flavors-a-convention-plugin-creates-are-still-found.test.d.ts +0 -38
  66. package/dist/src/commands/flavors-a-convention-plugin-creates-are-still-found.test.d.ts.map +0 -1
  67. package/dist/src/commands/flavors-a-convention-plugin-creates-are-still-found.test.js +0 -300
  68. package/dist/src/commands/github-workflow.d.ts +0 -5
  69. package/dist/src/commands/github-workflow.d.ts.map +0 -1
  70. package/dist/src/commands/github-workflow.js +0 -45
  71. package/dist/src/commands/index.d.ts +0 -33
  72. package/dist/src/commands/index.d.ts.map +0 -1
  73. package/dist/src/commands/index.js +0 -33
  74. package/dist/src/commands/init.d.ts +0 -20
  75. package/dist/src/commands/init.d.ts.map +0 -1
  76. package/dist/src/commands/init.js +0 -264
  77. package/dist/src/commands/ios-scanner.d.ts +0 -104
  78. package/dist/src/commands/ios-scanner.d.ts.map +0 -1
  79. package/dist/src/commands/ios-scanner.js +0 -492
  80. package/dist/src/commands/ios-scheme-ranking.test.d.ts +0 -2
  81. package/dist/src/commands/ios-scheme-ranking.test.d.ts.map +0 -1
  82. package/dist/src/commands/ios-scheme-ranking.test.js +0 -264
  83. package/dist/src/commands/local-properties-reaches-every-workflow.test.d.ts +0 -30
  84. package/dist/src/commands/local-properties-reaches-every-workflow.test.d.ts.map +0 -1
  85. package/dist/src/commands/local-properties-reaches-every-workflow.test.js +0 -146
  86. package/dist/src/commands/reset.d.ts +0 -7
  87. package/dist/src/commands/reset.d.ts.map +0 -1
  88. package/dist/src/commands/reset.js +0 -81
  89. package/dist/src/commands/run.d.ts +0 -22
  90. package/dist/src/commands/run.d.ts.map +0 -1
  91. package/dist/src/commands/run.js +0 -141
  92. package/dist/src/commands/secrets-sync-workflow.d.ts +0 -15
  93. package/dist/src/commands/secrets-sync-workflow.d.ts.map +0 -1
  94. package/dist/src/commands/secrets-sync-workflow.js +0 -255
  95. package/dist/src/commands/secrets-upload.d.ts +0 -21
  96. package/dist/src/commands/secrets-upload.d.ts.map +0 -1
  97. package/dist/src/commands/secrets-upload.js +0 -177
  98. package/dist/src/commands/secrets-upload.test.d.ts +0 -5
  99. package/dist/src/commands/secrets-upload.test.d.ts.map +0 -1
  100. package/dist/src/commands/secrets-upload.test.js +0 -60
  101. package/dist/src/commands/validate.d.ts +0 -10
  102. package/dist/src/commands/validate.d.ts.map +0 -1
  103. package/dist/src/commands/validate.js +0 -46
  104. package/dist/src/config.d.ts +0 -3
  105. package/dist/src/config.d.ts.map +0 -1
  106. package/dist/src/config.js +0 -47
  107. package/dist/src/envman/cli.d.ts +0 -21
  108. package/dist/src/envman/cli.d.ts.map +0 -1
  109. package/dist/src/envman/cli.js +0 -240
  110. package/dist/src/envman/envman.d.ts +0 -83
  111. package/dist/src/envman/envman.d.ts.map +0 -1
  112. package/dist/src/envman/envman.js +0 -361
  113. package/dist/src/envman/envman.test.d.ts +0 -5
  114. package/dist/src/envman/envman.test.d.ts.map +0 -1
  115. package/dist/src/envman/envman.test.js +0 -236
  116. package/dist/src/envman/envstore-round-trip.test.d.ts +0 -27
  117. package/dist/src/envman/envstore-round-trip.test.d.ts.map +0 -1
  118. package/dist/src/envman/envstore-round-trip.test.js +0 -130
  119. package/dist/src/envman/index.d.ts +0 -23
  120. package/dist/src/envman/index.d.ts.map +0 -1
  121. package/dist/src/envman/index.js +0 -23
  122. package/dist/src/envman/shim.d.ts +0 -16
  123. package/dist/src/envman/shim.d.ts.map +0 -1
  124. package/dist/src/envman/shim.js +0 -66
  125. package/dist/src/envman/types.d.ts +0 -55
  126. package/dist/src/envman/types.d.ts.map +0 -1
  127. package/dist/src/envman/types.js +0 -12
  128. package/dist/src/lib.d.ts +0 -33
  129. package/dist/src/lib.d.ts.map +0 -1
  130. package/dist/src/lib.js +0 -37
  131. package/dist/src/pipeline.d.ts +0 -3
  132. package/dist/src/pipeline.d.ts.map +0 -1
  133. package/dist/src/pipeline.js +0 -57
  134. package/dist/src/runner-node-step.test.d.ts +0 -12
  135. package/dist/src/runner-node-step.test.d.ts.map +0 -1
  136. package/dist/src/runner-node-step.test.js +0 -61
  137. package/dist/src/runner.d.ts +0 -31
  138. package/dist/src/runner.d.ts.map +0 -1
  139. package/dist/src/runner.js +0 -240
  140. package/dist/src/shared/detect-project.d.ts +0 -57
  141. package/dist/src/shared/detect-project.d.ts.map +0 -1
  142. package/dist/src/shared/detect-project.js +0 -219
  143. package/dist/src/shared/detect-project.test.d.ts +0 -2
  144. package/dist/src/shared/detect-project.test.d.ts.map +0 -1
  145. package/dist/src/shared/detect-project.test.js +0 -161
  146. package/dist/src/shared/git.d.ts +0 -25
  147. package/dist/src/shared/git.d.ts.map +0 -1
  148. package/dist/src/shared/git.js +0 -53
  149. package/dist/src/shared/git.test.d.ts +0 -9
  150. package/dist/src/shared/git.test.d.ts.map +0 -1
  151. package/dist/src/shared/git.test.js +0 -66
  152. package/dist/src/shared/gitignore.d.ts +0 -6
  153. package/dist/src/shared/gitignore.d.ts.map +0 -1
  154. package/dist/src/shared/gitignore.js +0 -26
  155. package/dist/src/shared/gradle-settings.d.ts +0 -49
  156. package/dist/src/shared/gradle-settings.d.ts.map +0 -1
  157. package/dist/src/shared/gradle-settings.js +0 -138
  158. package/dist/src/shared/gradle-settings.test.d.ts +0 -2
  159. package/dist/src/shared/gradle-settings.test.d.ts.map +0 -1
  160. package/dist/src/shared/gradle-settings.test.js +0 -65
  161. package/dist/src/shared/prompts.d.ts +0 -30
  162. package/dist/src/shared/prompts.d.ts.map +0 -1
  163. package/dist/src/shared/prompts.js +0 -121
  164. package/dist/src/shared/xcode-container.test.d.ts +0 -2
  165. package/dist/src/shared/xcode-container.test.d.ts.map +0 -1
  166. package/dist/src/shared/xcode-container.test.js +0 -123
  167. package/dist/src/step-marker.d.ts +0 -12
  168. package/dist/src/step-marker.d.ts.map +0 -1
  169. package/dist/src/step-marker.js +0 -29
  170. package/dist/src/step-marker.test.d.ts +0 -11
  171. package/dist/src/step-marker.test.d.ts.map +0 -1
  172. package/dist/src/step-marker.test.js +0 -45
  173. package/dist/src/types.d.ts +0 -58
  174. package/dist/src/types.d.ts.map +0 -1
  175. package/dist/src/types.js +0 -2
  176. package/dist/src/yaml/a-cache-path-must-not-swallow-a-credential.test.d.ts +0 -28
  177. package/dist/src/yaml/a-cache-path-must-not-swallow-a-credential.test.d.ts.map +0 -1
  178. package/dist/src/yaml/a-cache-path-must-not-swallow-a-credential.test.js +0 -223
  179. package/dist/src/yaml/a-declared-secret-reaches-the-file-step.test.d.ts +0 -20
  180. package/dist/src/yaml/a-declared-secret-reaches-the-file-step.test.d.ts.map +0 -1
  181. package/dist/src/yaml/a-declared-secret-reaches-the-file-step.test.js +0 -201
  182. package/dist/src/yaml/a-declared-slot-may-name-the-workflow-it-belongs-to.test.d.ts +0 -37
  183. package/dist/src/yaml/a-declared-slot-may-name-the-workflow-it-belongs-to.test.d.ts.map +0 -1
  184. package/dist/src/yaml/a-declared-slot-may-name-the-workflow-it-belongs-to.test.js +0 -255
  185. package/dist/src/yaml/a-missing-credential-is-loud.test.d.ts +0 -32
  186. package/dist/src/yaml/a-missing-credential-is-loud.test.d.ts.map +0 -1
  187. package/dist/src/yaml/a-missing-credential-is-loud.test.js +0 -301
  188. package/dist/src/yaml/a-runtime-requirement-names-a-real-provider.test.d.ts +0 -18
  189. package/dist/src/yaml/a-runtime-requirement-names-a-real-provider.test.d.ts.map +0 -1
  190. package/dist/src/yaml/a-runtime-requirement-names-a-real-provider.test.js +0 -66
  191. package/dist/src/yaml/a-scoped-slot-must-name-a-workflow-the-pipeline-has.test.d.ts +0 -34
  192. package/dist/src/yaml/a-scoped-slot-must-name-a-workflow-the-pipeline-has.test.d.ts.map +0 -1
  193. package/dist/src/yaml/a-scoped-slot-must-name-a-workflow-the-pipeline-has.test.js +0 -218
  194. package/dist/src/yaml/a-value-this-instance-stored-is-a-value-it-has.test.d.ts +0 -27
  195. package/dist/src/yaml/a-value-this-instance-stored-is-a-value-it-has.test.d.ts.map +0 -1
  196. package/dist/src/yaml/a-value-this-instance-stored-is-a-value-it-has.test.js +0 -126
  197. package/dist/src/yaml/bitrise-compat.d.ts +0 -65
  198. package/dist/src/yaml/bitrise-compat.d.ts.map +0 -1
  199. package/dist/src/yaml/bitrise-compat.js +0 -206
  200. package/dist/src/yaml/bitrise-compat.test.d.ts +0 -5
  201. package/dist/src/yaml/bitrise-compat.test.d.ts.map +0 -1
  202. package/dist/src/yaml/bitrise-compat.test.js +0 -347
  203. package/dist/src/yaml/cache-key-missing-file.test.d.ts +0 -12
  204. package/dist/src/yaml/cache-key-missing-file.test.d.ts.map +0 -1
  205. package/dist/src/yaml/cache-key-missing-file.test.js +0 -116
  206. package/dist/src/yaml/converter.d.ts +0 -103
  207. package/dist/src/yaml/converter.d.ts.map +0 -1
  208. package/dist/src/yaml/converter.js +0 -420
  209. package/dist/src/yaml/converter.test.d.ts +0 -5
  210. package/dist/src/yaml/converter.test.d.ts.map +0 -1
  211. package/dist/src/yaml/converter.test.js +0 -548
  212. package/dist/src/yaml/e2e.test.d.ts +0 -6
  213. package/dist/src/yaml/e2e.test.d.ts.map +0 -1
  214. package/dist/src/yaml/e2e.test.js +0 -446
  215. package/dist/src/yaml/env-resolver.d.ts +0 -218
  216. package/dist/src/yaml/env-resolver.d.ts.map +0 -1
  217. package/dist/src/yaml/env-resolver.js +0 -591
  218. package/dist/src/yaml/env-resolver.test.d.ts +0 -5
  219. package/dist/src/yaml/env-resolver.test.d.ts.map +0 -1
  220. package/dist/src/yaml/env-resolver.test.js +0 -502
  221. package/dist/src/yaml/every-build-log-witnesses-the-commit-on-disk.test.d.ts +0 -16
  222. package/dist/src/yaml/every-build-log-witnesses-the-commit-on-disk.test.d.ts.map +0 -1
  223. package/dist/src/yaml/every-build-log-witnesses-the-commit-on-disk.test.js +0 -126
  224. package/dist/src/yaml/fidelity-input-digest.d.ts +0 -37
  225. package/dist/src/yaml/fidelity-input-digest.d.ts.map +0 -1
  226. package/dist/src/yaml/fidelity-input-digest.js +0 -208
  227. package/dist/src/yaml/fidelity-input-digest.test.d.ts +0 -2
  228. package/dist/src/yaml/fidelity-input-digest.test.d.ts.map +0 -1
  229. package/dist/src/yaml/fidelity-input-digest.test.js +0 -167
  230. package/dist/src/yaml/fidelity-manifest.d.ts +0 -126
  231. package/dist/src/yaml/fidelity-manifest.d.ts.map +0 -1
  232. package/dist/src/yaml/fidelity-manifest.js +0 -134
  233. package/dist/src/yaml/fidelity-manifest.test.d.ts +0 -12
  234. package/dist/src/yaml/fidelity-manifest.test.d.ts.map +0 -1
  235. package/dist/src/yaml/fidelity-manifest.test.js +0 -251
  236. package/dist/src/yaml/interactive-prompts.d.ts +0 -71
  237. package/dist/src/yaml/interactive-prompts.d.ts.map +0 -1
  238. package/dist/src/yaml/interactive-prompts.js +0 -260
  239. package/dist/src/yaml/meta-helpers.d.ts +0 -28
  240. package/dist/src/yaml/meta-helpers.d.ts.map +0 -1
  241. package/dist/src/yaml/meta-helpers.js +0 -46
  242. package/dist/src/yaml/missing-env-handler.d.ts +0 -45
  243. package/dist/src/yaml/missing-env-handler.d.ts.map +0 -1
  244. package/dist/src/yaml/missing-env-handler.js +0 -64
  245. package/dist/src/yaml/parser.d.ts +0 -33
  246. package/dist/src/yaml/parser.d.ts.map +0 -1
  247. package/dist/src/yaml/parser.js +0 -148
  248. package/dist/src/yaml/parser.test.d.ts +0 -5
  249. package/dist/src/yaml/parser.test.d.ts.map +0 -1
  250. package/dist/src/yaml/parser.test.js +0 -83
  251. package/dist/src/yaml/pipeline-with-secrets.d.ts +0 -25
  252. package/dist/src/yaml/pipeline-with-secrets.d.ts.map +0 -1
  253. package/dist/src/yaml/pipeline-with-secrets.js +0 -76
  254. package/dist/src/yaml/platform-detector.d.ts +0 -83
  255. package/dist/src/yaml/platform-detector.d.ts.map +0 -1
  256. package/dist/src/yaml/platform-detector.js +0 -189
  257. package/dist/src/yaml/platform-detector.test.d.ts +0 -5
  258. package/dist/src/yaml/platform-detector.test.d.ts.map +0 -1
  259. package/dist/src/yaml/platform-detector.test.js +0 -525
  260. package/dist/src/yaml/preflight-validation.d.ts +0 -29
  261. package/dist/src/yaml/preflight-validation.d.ts.map +0 -1
  262. package/dist/src/yaml/preflight-validation.js +0 -21
  263. package/dist/src/yaml/secrets-manager.d.ts +0 -87
  264. package/dist/src/yaml/secrets-manager.d.ts.map +0 -1
  265. package/dist/src/yaml/secrets-manager.js +0 -230
  266. package/dist/src/yaml/shell-assignments.d.ts +0 -40
  267. package/dist/src/yaml/shell-assignments.d.ts.map +0 -1
  268. package/dist/src/yaml/shell-assignments.js +0 -77
  269. package/dist/src/yaml/step-validator-check-failure.test.d.ts +0 -24
  270. package/dist/src/yaml/step-validator-check-failure.test.d.ts.map +0 -1
  271. package/dist/src/yaml/step-validator-check-failure.test.js +0 -130
  272. package/dist/src/yaml/step-validator-self-assigned.test.d.ts +0 -23
  273. package/dist/src/yaml/step-validator-self-assigned.test.d.ts.map +0 -1
  274. package/dist/src/yaml/step-validator-self-assigned.test.js +0 -191
  275. package/dist/src/yaml/step-validator.d.ts +0 -67
  276. package/dist/src/yaml/step-validator.d.ts.map +0 -1
  277. package/dist/src/yaml/step-validator.js +0 -466
  278. package/dist/src/yaml/step-validator.test.d.ts +0 -18
  279. package/dist/src/yaml/step-validator.test.d.ts.map +0 -1
  280. package/dist/src/yaml/step-validator.test.js +0 -140
  281. package/dist/src/yaml/steps/android-sign.d.ts +0 -35
  282. package/dist/src/yaml/steps/android-sign.d.ts.map +0 -1
  283. package/dist/src/yaml/steps/android-sign.js +0 -147
  284. package/dist/src/yaml/steps/android-variant-resolution.test.d.ts +0 -2
  285. package/dist/src/yaml/steps/android-variant-resolution.test.d.ts.map +0 -1
  286. package/dist/src/yaml/steps/android-variant-resolution.test.js +0 -260
  287. package/dist/src/yaml/steps/android-version.d.ts +0 -26
  288. package/dist/src/yaml/steps/android-version.d.ts.map +0 -1
  289. package/dist/src/yaml/steps/android-version.js +0 -128
  290. package/dist/src/yaml/steps/android-version.test.d.ts +0 -5
  291. package/dist/src/yaml/steps/android-version.test.d.ts.map +0 -1
  292. package/dist/src/yaml/steps/android-version.test.js +0 -196
  293. package/dist/src/yaml/steps/android.d.ts +0 -156
  294. package/dist/src/yaml/steps/android.d.ts.map +0 -1
  295. package/dist/src/yaml/steps/android.js +0 -1084
  296. package/dist/src/yaml/steps/app-store-deploy.d.ts +0 -48
  297. package/dist/src/yaml/steps/app-store-deploy.d.ts.map +0 -1
  298. package/dist/src/yaml/steps/app-store-deploy.js +0 -167
  299. package/dist/src/yaml/steps/base.d.ts +0 -263
  300. package/dist/src/yaml/steps/base.d.ts.map +0 -1
  301. package/dist/src/yaml/steps/base.js +0 -380
  302. package/dist/src/yaml/steps/bitrise-android-tools.d.ts +0 -26
  303. package/dist/src/yaml/steps/bitrise-android-tools.d.ts.map +0 -1
  304. package/dist/src/yaml/steps/bitrise-android-tools.js +0 -200
  305. package/dist/src/yaml/steps/bitrise-android-tools.test.d.ts +0 -5
  306. package/dist/src/yaml/steps/bitrise-android-tools.test.d.ts.map +0 -1
  307. package/dist/src/yaml/steps/bitrise-android-tools.test.js +0 -280
  308. package/dist/src/yaml/steps/bitrise-apk-info.d.ts +0 -22
  309. package/dist/src/yaml/steps/bitrise-apk-info.d.ts.map +0 -1
  310. package/dist/src/yaml/steps/bitrise-apk-info.js +0 -144
  311. package/dist/src/yaml/steps/bitrise-apk-info.test.d.ts +0 -5
  312. package/dist/src/yaml/steps/bitrise-apk-info.test.d.ts.map +0 -1
  313. package/dist/src/yaml/steps/bitrise-apk-info.test.js +0 -331
  314. package/dist/src/yaml/steps/bitrise-slack.d.ts +0 -49
  315. package/dist/src/yaml/steps/bitrise-slack.d.ts.map +0 -1
  316. package/dist/src/yaml/steps/bitrise-slack.js +0 -280
  317. package/dist/src/yaml/steps/bitrise-slack.test.d.ts +0 -5
  318. package/dist/src/yaml/steps/bitrise-slack.test.d.ts.map +0 -1
  319. package/dist/src/yaml/steps/bitrise-slack.test.js +0 -484
  320. package/dist/src/yaml/steps/bitrise-ssh.d.ts +0 -27
  321. package/dist/src/yaml/steps/bitrise-ssh.d.ts.map +0 -1
  322. package/dist/src/yaml/steps/bitrise-ssh.js +0 -134
  323. package/dist/src/yaml/steps/bitrise-ssh.test.d.ts +0 -5
  324. package/dist/src/yaml/steps/bitrise-ssh.test.d.ts.map +0 -1
  325. package/dist/src/yaml/steps/bitrise-ssh.test.js +0 -205
  326. package/dist/src/yaml/steps/cache-pull-daemon.test.d.ts +0 -27
  327. package/dist/src/yaml/steps/cache-pull-daemon.test.d.ts.map +0 -1
  328. package/dist/src/yaml/steps/cache-pull-daemon.test.js +0 -212
  329. package/dist/src/yaml/steps/cache-pull-restore-roots.test.d.ts +0 -42
  330. package/dist/src/yaml/steps/cache-pull-restore-roots.test.d.ts.map +0 -1
  331. package/dist/src/yaml/steps/cache-pull-restore-roots.test.js +0 -209
  332. package/dist/src/yaml/steps/cache-push-daemon.test.d.ts +0 -27
  333. package/dist/src/yaml/steps/cache-push-daemon.test.d.ts.map +0 -1
  334. package/dist/src/yaml/steps/cache-push-daemon.test.js +0 -171
  335. package/dist/src/yaml/steps/cache.d.ts +0 -59
  336. package/dist/src/yaml/steps/cache.d.ts.map +0 -1
  337. package/dist/src/yaml/steps/cache.js +0 -1027
  338. package/dist/src/yaml/steps/cocoapods-deployment-floor.d.ts +0 -42
  339. package/dist/src/yaml/steps/cocoapods-deployment-floor.d.ts.map +0 -1
  340. package/dist/src/yaml/steps/cocoapods-deployment-floor.js +0 -140
  341. package/dist/src/yaml/steps/cocoapods-deployment-floor.test.d.ts +0 -11
  342. package/dist/src/yaml/steps/cocoapods-deployment-floor.test.d.ts.map +0 -1
  343. package/dist/src/yaml/steps/cocoapods-deployment-floor.test.js +0 -176
  344. package/dist/src/yaml/steps/cocoapods-install-emits-valid-bash.test.d.ts +0 -22
  345. package/dist/src/yaml/steps/cocoapods-install-emits-valid-bash.test.d.ts.map +0 -1
  346. package/dist/src/yaml/steps/cocoapods-install-emits-valid-bash.test.js +0 -97
  347. package/dist/src/yaml/steps/cocoapods-locked-bundler.test.d.ts +0 -17
  348. package/dist/src/yaml/steps/cocoapods-locked-bundler.test.d.ts.map +0 -1
  349. package/dist/src/yaml/steps/cocoapods-locked-bundler.test.js +0 -282
  350. package/dist/src/yaml/steps/cocoapods-skip-if-absent.test.d.ts +0 -17
  351. package/dist/src/yaml/steps/cocoapods-skip-if-absent.test.d.ts.map +0 -1
  352. package/dist/src/yaml/steps/cocoapods-skip-if-absent.test.js +0 -132
  353. package/dist/src/yaml/steps/envstore-loader.test.d.ts +0 -15
  354. package/dist/src/yaml/steps/envstore-loader.test.d.ts.map +0 -1
  355. package/dist/src/yaml/steps/envstore-loader.test.js +0 -143
  356. package/dist/src/yaml/steps/fastlane.d.ts +0 -27
  357. package/dist/src/yaml/steps/fastlane.d.ts.map +0 -1
  358. package/dist/src/yaml/steps/fastlane.js +0 -79
  359. package/dist/src/yaml/steps/fidelity-aspect-guard.d.ts +0 -53
  360. package/dist/src/yaml/steps/fidelity-aspect-guard.d.ts.map +0 -1
  361. package/dist/src/yaml/steps/fidelity-aspect-guard.js +0 -72
  362. package/dist/src/yaml/steps/fidelity-aspect-guard.test.d.ts +0 -11
  363. package/dist/src/yaml/steps/fidelity-aspect-guard.test.d.ts.map +0 -1
  364. package/dist/src/yaml/steps/fidelity-aspect-guard.test.js +0 -50
  365. package/dist/src/yaml/steps/fidelity-reference-provenance.d.ts +0 -87
  366. package/dist/src/yaml/steps/fidelity-reference-provenance.d.ts.map +0 -1
  367. package/dist/src/yaml/steps/fidelity-reference-provenance.js +0 -111
  368. package/dist/src/yaml/steps/fidelity-reference-provenance.test.d.ts +0 -22
  369. package/dist/src/yaml/steps/fidelity-reference-provenance.test.d.ts.map +0 -1
  370. package/dist/src/yaml/steps/fidelity-reference-provenance.test.js +0 -118
  371. package/dist/src/yaml/steps/file.d.ts +0 -52
  372. package/dist/src/yaml/steps/file.d.ts.map +0 -1
  373. package/dist/src/yaml/steps/file.js +0 -108
  374. package/dist/src/yaml/steps/flutter.d.ts +0 -63
  375. package/dist/src/yaml/steps/flutter.d.ts.map +0 -1
  376. package/dist/src/yaml/steps/flutter.js +0 -215
  377. package/dist/src/yaml/steps/git-clone-names-the-inputs-it-ignores.test.d.ts +0 -16
  378. package/dist/src/yaml/steps/git-clone-names-the-inputs-it-ignores.test.d.ts.map +0 -1
  379. package/dist/src/yaml/steps/git-clone-names-the-inputs-it-ignores.test.js +0 -127
  380. package/dist/src/yaml/steps/git-clone.d.ts +0 -32
  381. package/dist/src/yaml/steps/git-clone.d.ts.map +0 -1
  382. package/dist/src/yaml/steps/git-clone.js +0 -171
  383. package/dist/src/yaml/steps/git-fetch-retry-exec.test.d.ts +0 -10
  384. package/dist/src/yaml/steps/git-fetch-retry-exec.test.d.ts.map +0 -1
  385. package/dist/src/yaml/steps/git-fetch-retry-exec.test.js +0 -162
  386. package/dist/src/yaml/steps/git-fetch-retry.d.ts +0 -62
  387. package/dist/src/yaml/steps/git-fetch-retry.d.ts.map +0 -1
  388. package/dist/src/yaml/steps/git-fetch-retry.js +0 -155
  389. package/dist/src/yaml/steps/git-fetch-retry.test.d.ts +0 -5
  390. package/dist/src/yaml/steps/git-fetch-retry.test.d.ts.map +0 -1
  391. package/dist/src/yaml/steps/git-fetch-retry.test.js +0 -86
  392. package/dist/src/yaml/steps/google-play-deploy.d.ts +0 -37
  393. package/dist/src/yaml/steps/google-play-deploy.d.ts.map +0 -1
  394. package/dist/src/yaml/steps/google-play-deploy.js +0 -193
  395. package/dist/src/yaml/steps/google-play-deploy.test.d.ts +0 -5
  396. package/dist/src/yaml/steps/google-play-deploy.test.d.ts.map +0 -1
  397. package/dist/src/yaml/steps/google-play-deploy.test.js +0 -310
  398. package/dist/src/yaml/steps/gradle-memory.d.ts +0 -61
  399. package/dist/src/yaml/steps/gradle-memory.d.ts.map +0 -1
  400. package/dist/src/yaml/steps/gradle-memory.js +0 -311
  401. package/dist/src/yaml/steps/gradle-memory.test.d.ts +0 -2
  402. package/dist/src/yaml/steps/gradle-memory.test.d.ts.map +0 -1
  403. package/dist/src/yaml/steps/gradle-memory.test.js +0 -297
  404. package/dist/src/yaml/steps/gradle-sdk-cmake.d.ts +0 -28
  405. package/dist/src/yaml/steps/gradle-sdk-cmake.d.ts.map +0 -1
  406. package/dist/src/yaml/steps/gradle-sdk-cmake.js +0 -107
  407. package/dist/src/yaml/steps/gradle-sdk-cmake.test.d.ts +0 -2
  408. package/dist/src/yaml/steps/gradle-sdk-cmake.test.d.ts.map +0 -1
  409. package/dist/src/yaml/steps/gradle-sdk-cmake.test.js +0 -183
  410. package/dist/src/yaml/steps/index.d.ts +0 -10
  411. package/dist/src/yaml/steps/index.d.ts.map +0 -1
  412. package/dist/src/yaml/steps/index.js +0 -1461
  413. package/dist/src/yaml/steps/ios-deps.d.ts +0 -78
  414. package/dist/src/yaml/steps/ios-deps.d.ts.map +0 -1
  415. package/dist/src/yaml/steps/ios-deps.js +0 -279
  416. package/dist/src/yaml/steps/ios-deps.test.d.ts +0 -5
  417. package/dist/src/yaml/steps/ios-deps.test.d.ts.map +0 -1
  418. package/dist/src/yaml/steps/ios-deps.test.js +0 -90
  419. package/dist/src/yaml/steps/ios-signing.d.ts +0 -31
  420. package/dist/src/yaml/steps/ios-signing.d.ts.map +0 -1
  421. package/dist/src/yaml/steps/ios-signing.js +0 -144
  422. package/dist/src/yaml/steps/ios-version.d.ts +0 -47
  423. package/dist/src/yaml/steps/ios-version.d.ts.map +0 -1
  424. package/dist/src/yaml/steps/ios-version.js +0 -151
  425. package/dist/src/yaml/steps/java-home-version-spec.test.d.ts +0 -10
  426. package/dist/src/yaml/steps/java-home-version-spec.test.d.ts.map +0 -1
  427. package/dist/src/yaml/steps/java-home-version-spec.test.js +0 -58
  428. package/dist/src/yaml/steps/linting.d.ts +0 -47
  429. package/dist/src/yaml/steps/linting.d.ts.map +0 -1
  430. package/dist/src/yaml/steps/linting.js +0 -148
  431. package/dist/src/yaml/steps/phase2.test.d.ts +0 -6
  432. package/dist/src/yaml/steps/phase2.test.d.ts.map +0 -1
  433. package/dist/src/yaml/steps/phase2.test.js +0 -197
  434. package/dist/src/yaml/steps/phase3.test.d.ts +0 -5
  435. package/dist/src/yaml/steps/phase3.test.d.ts.map +0 -1
  436. package/dist/src/yaml/steps/phase3.test.js +0 -144
  437. package/dist/src/yaml/steps/phase4.test.d.ts +0 -5
  438. package/dist/src/yaml/steps/phase4.test.d.ts.map +0 -1
  439. package/dist/src/yaml/steps/phase4.test.js +0 -166
  440. package/dist/src/yaml/steps/phase5.test.d.ts +0 -6
  441. package/dist/src/yaml/steps/phase5.test.d.ts.map +0 -1
  442. package/dist/src/yaml/steps/phase5.test.js +0 -263
  443. package/dist/src/yaml/steps/registry.d.ts +0 -88
  444. package/dist/src/yaml/steps/registry.d.ts.map +0 -1
  445. package/dist/src/yaml/steps/registry.js +0 -125
  446. package/dist/src/yaml/steps/registry.test.d.ts +0 -5
  447. package/dist/src/yaml/steps/registry.test.d.ts.map +0 -1
  448. package/dist/src/yaml/steps/registry.test.js +0 -235
  449. package/dist/src/yaml/steps/release.d.ts +0 -50
  450. package/dist/src/yaml/steps/release.d.ts.map +0 -1
  451. package/dist/src/yaml/steps/release.js +0 -154
  452. package/dist/src/yaml/steps/render-post-processor.d.ts +0 -100
  453. package/dist/src/yaml/steps/render-post-processor.d.ts.map +0 -1
  454. package/dist/src/yaml/steps/render-post-processor.js +0 -270
  455. package/dist/src/yaml/steps/render-post-processor.test.d.ts +0 -13
  456. package/dist/src/yaml/steps/render-post-processor.test.d.ts.map +0 -1
  457. package/dist/src/yaml/steps/render-post-processor.test.js +0 -220
  458. package/dist/src/yaml/steps/script.d.ts +0 -23
  459. package/dist/src/yaml/steps/script.d.ts.map +0 -1
  460. package/dist/src/yaml/steps/script.js +0 -63
  461. package/dist/src/yaml/steps/spec-validation.test.d.ts +0 -6
  462. package/dist/src/yaml/steps/spec-validation.test.d.ts.map +0 -1
  463. package/dist/src/yaml/steps/spec-validation.test.js +0 -130
  464. package/dist/src/yaml/steps/steps.test.d.ts +0 -6
  465. package/dist/src/yaml/steps/steps.test.d.ts.map +0 -1
  466. package/dist/src/yaml/steps/steps.test.js +0 -881
  467. package/dist/src/yaml/steps/structural-facts.d.ts +0 -992
  468. package/dist/src/yaml/steps/structural-facts.d.ts.map +0 -1
  469. package/dist/src/yaml/steps/structural-facts.js +0 -3276
  470. package/dist/src/yaml/steps/structural-facts.test.d.ts +0 -12
  471. package/dist/src/yaml/steps/structural-facts.test.d.ts.map +0 -1
  472. package/dist/src/yaml/steps/structural-facts.test.js +0 -3039
  473. package/dist/src/yaml/steps/test-config.d.ts +0 -5
  474. package/dist/src/yaml/steps/test-config.d.ts.map +0 -1
  475. package/dist/src/yaml/steps/test-config.js +0 -25
  476. package/dist/src/yaml/steps/trim-align-corpus.test.d.ts +0 -28
  477. package/dist/src/yaml/steps/trim-align-corpus.test.d.ts.map +0 -1
  478. package/dist/src/yaml/steps/trim-align-corpus.test.js +0 -383
  479. package/dist/src/yaml/steps/trim-align.d.ts +0 -87
  480. package/dist/src/yaml/steps/trim-align.d.ts.map +0 -1
  481. package/dist/src/yaml/steps/trim-align.js +0 -367
  482. package/dist/src/yaml/steps/trim-align.test.d.ts +0 -11
  483. package/dist/src/yaml/steps/trim-align.test.d.ts.map +0 -1
  484. package/dist/src/yaml/steps/trim-align.test.js +0 -261
  485. package/dist/src/yaml/steps/ui-fidelity-preview-android.d.ts +0 -66
  486. package/dist/src/yaml/steps/ui-fidelity-preview-android.d.ts.map +0 -1
  487. package/dist/src/yaml/steps/ui-fidelity-preview-android.js +0 -251
  488. package/dist/src/yaml/steps/ui-fidelity-preview-android.test.d.ts +0 -13
  489. package/dist/src/yaml/steps/ui-fidelity-preview-android.test.d.ts.map +0 -1
  490. package/dist/src/yaml/steps/ui-fidelity-preview-android.test.js +0 -302
  491. package/dist/src/yaml/steps/ui-fidelity-preview.d.ts +0 -134
  492. package/dist/src/yaml/steps/ui-fidelity-preview.d.ts.map +0 -1
  493. package/dist/src/yaml/steps/ui-fidelity-preview.js +0 -173
  494. package/dist/src/yaml/steps/ui-fidelity-preview.test.d.ts +0 -11
  495. package/dist/src/yaml/steps/ui-fidelity-preview.test.d.ts.map +0 -1
  496. package/dist/src/yaml/steps/ui-fidelity-preview.test.js +0 -210
  497. package/dist/src/yaml/steps/ui-fidelity-render-android.d.ts +0 -155
  498. package/dist/src/yaml/steps/ui-fidelity-render-android.d.ts.map +0 -1
  499. package/dist/src/yaml/steps/ui-fidelity-render-android.js +0 -1389
  500. package/dist/src/yaml/steps/ui-fidelity-render-android.test.d.ts +0 -2
  501. package/dist/src/yaml/steps/ui-fidelity-render-android.test.d.ts.map +0 -1
  502. package/dist/src/yaml/steps/ui-fidelity-render-android.test.js +0 -1106
  503. package/dist/src/yaml/steps/ui-fidelity-render.d.ts +0 -230
  504. package/dist/src/yaml/steps/ui-fidelity-render.d.ts.map +0 -1
  505. package/dist/src/yaml/steps/ui-fidelity-render.js +0 -1597
  506. package/dist/src/yaml/steps/ui-fidelity-render.test.d.ts +0 -18
  507. package/dist/src/yaml/steps/ui-fidelity-render.test.d.ts.map +0 -1
  508. package/dist/src/yaml/steps/ui-fidelity-render.test.js +0 -1871
  509. package/dist/src/yaml/steps/xcode-app-product.d.ts +0 -90
  510. package/dist/src/yaml/steps/xcode-app-product.d.ts.map +0 -1
  511. package/dist/src/yaml/steps/xcode-app-product.js +0 -247
  512. package/dist/src/yaml/steps/xcode-app-product.test.d.ts +0 -2
  513. package/dist/src/yaml/steps/xcode-app-product.test.d.ts.map +0 -1
  514. package/dist/src/yaml/steps/xcode-app-product.test.js +0 -202
  515. package/dist/src/yaml/steps/xcode-derived-data.test.d.ts +0 -30
  516. package/dist/src/yaml/steps/xcode-derived-data.test.d.ts.map +0 -1
  517. package/dist/src/yaml/steps/xcode-derived-data.test.js +0 -253
  518. package/dist/src/yaml/steps/xcode-destination.d.ts +0 -47
  519. package/dist/src/yaml/steps/xcode-destination.d.ts.map +0 -1
  520. package/dist/src/yaml/steps/xcode-destination.js +0 -202
  521. package/dist/src/yaml/steps/xcode-destination.test.d.ts +0 -9
  522. package/dist/src/yaml/steps/xcode-destination.test.d.ts.map +0 -1
  523. package/dist/src/yaml/steps/xcode-destination.test.js +0 -227
  524. package/dist/src/yaml/steps/xcode-new.test.d.ts +0 -5
  525. package/dist/src/yaml/steps/xcode-new.test.d.ts.map +0 -1
  526. package/dist/src/yaml/steps/xcode-new.test.js +0 -211
  527. package/dist/src/yaml/steps/xcode-resolve-retry.test.d.ts +0 -9
  528. package/dist/src/yaml/steps/xcode-resolve-retry.test.d.ts.map +0 -1
  529. package/dist/src/yaml/steps/xcode-resolve-retry.test.js +0 -146
  530. package/dist/src/yaml/steps/xcode-simulator-archs.d.ts +0 -53
  531. package/dist/src/yaml/steps/xcode-simulator-archs.d.ts.map +0 -1
  532. package/dist/src/yaml/steps/xcode-simulator-archs.js +0 -98
  533. package/dist/src/yaml/steps/xcode-simulator-archs.test.d.ts +0 -21
  534. package/dist/src/yaml/steps/xcode-simulator-archs.test.d.ts.map +0 -1
  535. package/dist/src/yaml/steps/xcode-simulator-archs.test.js +0 -155
  536. package/dist/src/yaml/steps/xcode.d.ts +0 -230
  537. package/dist/src/yaml/steps/xcode.d.ts.map +0 -1
  538. package/dist/src/yaml/steps/xcode.js +0 -1340
  539. package/dist/src/yaml/types.d.ts +0 -76
  540. package/dist/src/yaml/types.d.ts.map +0 -1
  541. package/dist/src/yaml/types.js +0 -5
  542. package/dist/src/yaml/validation-types.d.ts +0 -102
  543. package/dist/src/yaml/validation-types.d.ts.map +0 -1
  544. package/dist/src/yaml/validation-types.js +0 -8
  545. package/dist/src/yaml/yaml-updater.d.ts +0 -24
  546. package/dist/src/yaml/yaml-updater.d.ts.map +0 -1
  547. package/dist/src/yaml/yaml-updater.js +0 -128
@@ -1,1461 +0,0 @@
1
- /**
2
- * Step registry initialization
3
- * Registers all available YAML steps
4
- */
5
- import { registerStep } from './registry.js';
6
- import { GitCloneStepExecutor } from './git-clone.js';
7
- import { ScriptStepExecutor } from './script.js';
8
- import { FileStepExecutor } from './file.js';
9
- import { CachePullStepExecutor, CachePushStepExecutor } from './cache.js';
10
- import { XcodeBuildStepExecutor, XcodeTestStepExecutor, IosArchiveStepExecutor, XcodeArchiveStepExecutor, OtaInstallStepExecutor, XcodeBuildForTestStepExecutor, XcodeTestWithoutBuildingStepExecutor, XcodeBuildForSimulatorStepExecutor, ExportXcarchiveStepExecutor } from './xcode.js';
11
- import { SwiftlintStepExecutor, DetektStepExecutor } from './linting.js';
12
- import { FlutterInstallerStepExecutor, FlutterBuildStepExecutor, FlutterTestStepExecutor } from './flutter.js';
13
- import { GenerateChangelogStepExecutor, GithubReleaseStepExecutor } from './release.js';
14
- import { CocoapodsInstallStepExecutor, CarthageStepExecutor } from './ios-deps.js';
15
- import { SetJavaVersionStepExecutor, GradleBuildStepExecutor, AndroidLintStepExecutor, AndroidUnitTestStepExecutor, AndroidBuildForUITestingStepExecutor, } from './android.js';
16
- import { SignApkStepExecutor } from './android-sign.js';
17
- import { SetXcodeBuildNumberStepExecutor, SetIosVersionStepExecutor } from './ios-version.js';
18
- import { CertificateInstallerStepExecutor } from './ios-signing.js';
19
- import { FastlaneStepExecutor } from './fastlane.js';
20
- import { BitriseSSHStepExecutor } from './bitrise-ssh.js';
21
- import { BitriseAndroidToolsStepExecutor } from './bitrise-android-tools.js';
22
- import { ChangeAndroidVersionStepExecutor } from './android-version.js';
23
- import { BitriseSlackStepExecutor } from './bitrise-slack.js';
24
- import { BitriseApkInfoStepExecutor } from './bitrise-apk-info.js';
25
- import { GooglePlayDeployStepExecutor } from './google-play-deploy.js';
26
- import { AppStoreDeployStepExecutor } from './app-store-deploy.js';
27
- import { UiFidelityRenderStepExecutor, DEFAULT_RENDER_SIZE, DEFAULT_SCALE, DEFAULT_PACKAGE_SOURCE, DEFAULT_REFERENCE_SOURCE, } from './ui-fidelity-render.js';
28
- import { UiFidelityRenderAndroidStepExecutor, DEFAULT_GRADLE_TASK, DEFAULT_PACKAGE_SOURCE as DEFAULT_ANDROID_PACKAGE_SOURCE, DEFAULT_REFERENCE_SOURCE as DEFAULT_ANDROID_REFERENCE_SOURCE, } from './ui-fidelity-render-android.js';
29
- /**
30
- * Initializes the step registry with all available steps
31
- * This function should be called once at application startup
32
- */
33
- export function initializeStepRegistry() {
34
- // Git steps
35
- // Does not clone. The source is already on disk when any step runs — on a
36
- // runner the dispatched commit is checked out before cibuild starts; locally
37
- // it is the developer's working copy. The inputs are kept so existing YAML
38
- // keeps parsing; the executor never reads them.
39
- registerStep('git-clone', new GitCloneStepExecutor(), {
40
- name: 'git-clone',
41
- description: 'Locate the source checkout already on disk and record its commit. Does not clone — on a runner the dispatched commit is checked out before any step runs; locally it is your working copy. Inputs are ignored.',
42
- platform: 'all',
43
- inputs: {
44
- repository: {
45
- description: 'Ignored — no clone is performed; the checkout already exists',
46
- required: false,
47
- default: '$CIBUILD_GIT_REPOSITORY_URL',
48
- },
49
- branch: {
50
- description: 'Ignored — on a runner the dispatched ref is checked out, not this value',
51
- required: false,
52
- default: '$CIBUILD_GIT_BRANCH or main',
53
- },
54
- clone_depth: {
55
- description: 'Ignored — no clone is performed; a runner checkout is always depth 1',
56
- required: false,
57
- default: 0,
58
- },
59
- clone_into_dir: {
60
- description: 'Ignored — the checkout location is not chosen by this step',
61
- required: false,
62
- default: '.',
63
- },
64
- },
65
- });
66
- // File step — writes a secret file to a target path at runtime
67
- registerStep('file', new FileStepExecutor(), {
68
- name: 'file',
69
- description: 'Write a secret file to a path at runtime',
70
- platform: 'all',
71
- inputs: {
72
- target_path: {
73
- description: 'Target path in project (relative to project root)',
74
- required: true,
75
- inputType: 'path',
76
- },
77
- var_name: {
78
- description: 'Secret variable name',
79
- required: true,
80
- inputType: 'text',
81
- deriveFrom: 'target_path',
82
- deriveTransform: 'filename-to-env-var',
83
- },
84
- content: {
85
- description: 'File content (stored as a CI secret, not written to YAML)',
86
- required: true,
87
- inputType: 'multiline',
88
- isSetupSecret: true,
89
- secretKeyField: 'var_name',
90
- },
91
- },
92
- });
93
- // Script step
94
- registerStep('script', new ScriptStepExecutor(), {
95
- name: 'script',
96
- description: 'Execute a custom script',
97
- platform: 'all',
98
- inputs: {
99
- content: {
100
- description: 'Script content to execute',
101
- required: true,
102
- },
103
- working_dir: {
104
- description: 'Working directory for script execution',
105
- required: false,
106
- default: '',
107
- },
108
- runner_bin: {
109
- description: 'Script runner (bash, python, ruby, node)',
110
- required: false,
111
- default: 'bash',
112
- },
113
- },
114
- });
115
- // Cache steps
116
- registerStep('cache-pull', new CachePullStepExecutor(), {
117
- name: 'cache-pull',
118
- description: 'Restore cached files',
119
- platform: 'all',
120
- inputs: {
121
- cache_key: {
122
- description: 'Cache key identifier',
123
- required: false,
124
- default: '',
125
- },
126
- cache_paths: {
127
- description: 'Paths to restore from cache',
128
- required: false,
129
- default: [],
130
- },
131
- is_debug_mode: {
132
- description: 'Enable debug output',
133
- required: false,
134
- default: false,
135
- },
136
- },
137
- });
138
- registerStep('cache-push', new CachePushStepExecutor(), {
139
- name: 'cache-push',
140
- description: 'Save files to cache',
141
- platform: 'all',
142
- inputs: {
143
- cache_key: {
144
- description: 'Cache key identifier',
145
- required: false,
146
- default: '',
147
- },
148
- cache_paths: {
149
- description: 'Paths to cache',
150
- required: true,
151
- },
152
- is_debug_mode: {
153
- description: 'Enable debug output',
154
- required: false,
155
- default: false,
156
- },
157
- ignore_check_on_paths: {
158
- description: 'Ignore missing path warnings',
159
- required: false,
160
- default: false,
161
- },
162
- },
163
- });
164
- // iOS/Xcode steps
165
- registerStep('xcodebuild', new XcodeBuildStepExecutor(), {
166
- name: 'xcodebuild',
167
- description: 'Build iOS/macOS project with Xcode',
168
- platform: 'ios',
169
- inputs: {
170
- project_path: {
171
- description: 'Path to .xcodeproj or .xcworkspace',
172
- required: true,
173
- },
174
- scheme: {
175
- description: 'Xcode scheme name',
176
- required: true,
177
- },
178
- configuration: {
179
- description: 'Build configuration (Debug/Release)',
180
- required: false,
181
- default: 'Release',
182
- },
183
- destination: {
184
- description: 'Build destination',
185
- required: false,
186
- default: 'generic/platform=iOS',
187
- },
188
- xcconfig_content: {
189
- description: 'Custom xcconfig file content',
190
- required: false,
191
- },
192
- output_dir: {
193
- description: 'Build output directory',
194
- required: false,
195
- default: 'build',
196
- },
197
- is_clean_build: {
198
- description: 'Perform clean before build',
199
- required: false,
200
- default: false,
201
- },
202
- },
203
- });
204
- registerStep('xcode-test', new XcodeTestStepExecutor(), {
205
- name: 'xcode-test',
206
- description: 'Run iOS/macOS tests with Xcode',
207
- platform: 'ios',
208
- inputs: {
209
- project_path: {
210
- description: 'Path to .xcodeproj or .xcworkspace',
211
- required: true,
212
- },
213
- scheme: {
214
- description: 'Xcode scheme name',
215
- required: true,
216
- },
217
- destination: {
218
- description: 'Test destination',
219
- required: false,
220
- default: 'platform=iOS Simulator,name=iPhone 14,OS=latest',
221
- },
222
- test_plan: {
223
- description: 'Test plan name',
224
- required: false,
225
- },
226
- is_code_coverage_enabled: {
227
- description: 'Enable code coverage',
228
- required: false,
229
- default: false,
230
- },
231
- },
232
- });
233
- registerStep('ios-archive', new IosArchiveStepExecutor(), {
234
- name: 'ios-archive',
235
- description: 'Create IPA from .app bundle',
236
- platform: 'ios',
237
- inputs: {
238
- app_path: {
239
- description: 'Path to .app bundle',
240
- required: true,
241
- },
242
- output_path: {
243
- description: 'Output directory for IPA file',
244
- required: false,
245
- default: 'artifacts',
246
- },
247
- output_name: {
248
- description: 'Output IPA name (without .ipa extension)',
249
- required: false,
250
- },
251
- },
252
- });
253
- registerStep('xcode-archive', new XcodeArchiveStepExecutor(), {
254
- name: 'xcode-archive',
255
- description: 'Archive and export iOS app to IPA (compatible with bitrise xcode-archive@5)',
256
- platform: 'ios',
257
- inputs: {
258
- project_path: {
259
- description: 'Path to .xcodeproj or .xcworkspace',
260
- required: true,
261
- },
262
- scheme: {
263
- description: 'Xcode scheme name',
264
- required: true,
265
- },
266
- configuration: {
267
- description: 'Build configuration (e.g. Release)',
268
- required: false,
269
- default: 'Release',
270
- },
271
- distribution_method: {
272
- description: 'Export method: development | app-store | ad-hoc | enterprise',
273
- required: false,
274
- default: 'development',
275
- },
276
- perform_clean_action: {
277
- description: 'Execute clean action before archive: yes | no',
278
- required: false,
279
- default: 'no',
280
- },
281
- automatic_code_signing: {
282
- description: 'Code signing method: off | api-key | apple-id',
283
- required: false,
284
- default: 'off',
285
- },
286
- compile_bitcode: {
287
- description: 'Recompile from bitcode (non-App Store): yes | no',
288
- required: false,
289
- default: 'yes',
290
- },
291
- upload_bitcode: {
292
- description: 'Include bitcode in App Store export: yes | no',
293
- required: false,
294
- default: 'yes',
295
- },
296
- xcconfig_content: {
297
- description: 'xcconfig overrides applied during archive',
298
- required: false,
299
- default: 'COMPILER_INDEX_STORE_ENABLE = NO',
300
- },
301
- xcodebuild_options: {
302
- description: 'Additional xcodebuild flags',
303
- required: false,
304
- },
305
- export_options_plist_content: {
306
- description: 'Custom ExportOptions.plist content (overrides generated plist)',
307
- required: false,
308
- },
309
- output_dir: {
310
- description: 'Output directory for IPA, dSYM, xcarchive',
311
- required: false,
312
- default: 'build/ipa',
313
- },
314
- artifact_name: {
315
- description: 'Basename for generated files (defaults to scheme name)',
316
- required: false,
317
- },
318
- },
319
- });
320
- registerStep('ota-install', new OtaInstallStepExecutor(), {
321
- name: 'ota-install',
322
- description: 'Generate OTA install manifest.plist and QR code for iOS distribution via itms-services://',
323
- platform: 'ios',
324
- inputs: {
325
- ipa_url: {
326
- description: 'HTTPS URL where the IPA file will be hosted',
327
- required: true,
328
- inputType: 'text',
329
- },
330
- manifest_url: {
331
- description: 'HTTPS URL where manifest.plist will be hosted (defaults to dirname(ipa_url)/manifest.plist)',
332
- required: false,
333
- inputType: 'text',
334
- },
335
- bundle_id: {
336
- description: 'iOS bundle identifier (e.g. com.example.app)',
337
- required: true,
338
- inputType: 'text',
339
- },
340
- bundle_version: {
341
- description: 'App version string (e.g. 1.2.3)',
342
- required: true,
343
- inputType: 'text',
344
- },
345
- title: {
346
- description: 'App display name shown during install prompt',
347
- required: true,
348
- inputType: 'text',
349
- },
350
- ipa_path: {
351
- description: 'Local IPA path; defaults to $CIBUILD_IPA_PATH env var',
352
- required: false,
353
- inputType: 'path',
354
- },
355
- output_dir: {
356
- description: 'Directory to write manifest.plist',
357
- required: false,
358
- default: '.ci/artifacts',
359
- },
360
- },
361
- });
362
- // App Store Connect deploy
363
- registerStep('app-store-deploy', new AppStoreDeployStepExecutor(), {
364
- name: 'app-store-deploy',
365
- description: 'Upload IPA to App Store Connect / TestFlight via fastlane deliver',
366
- platform: 'ios',
367
- inputs: {
368
- ipa_path: {
369
- description: 'Path to IPA file; defaults to $CIBUILD_IPA_PATH',
370
- required: false,
371
- inputType: 'path',
372
- },
373
- api_key_id: {
374
- description: 'App Store Connect API key ID; defaults to $APPLE_API_KEY_ID',
375
- required: false,
376
- inputType: 'text',
377
- },
378
- api_issuer: {
379
- description: 'API key issuer UUID; defaults to $APPLE_API_ISSUER_ID',
380
- required: false,
381
- inputType: 'text',
382
- },
383
- api_key_path: {
384
- description: 'Base64-encoded .p8 key content; defaults to $APPLE_API_KEY_PATH',
385
- required: false,
386
- inputType: 'text',
387
- },
388
- team_id: {
389
- description: 'Apple Team ID; defaults to $APPLE_TEAM_ID',
390
- required: false,
391
- inputType: 'text',
392
- },
393
- app_id: {
394
- description: 'Numeric App Store Connect Apple ID (optional)',
395
- required: false,
396
- inputType: 'text',
397
- },
398
- bundle_id: {
399
- description: 'App bundle ID (optional); defaults to $APP_BUNDLE_ID',
400
- required: false,
401
- inputType: 'text',
402
- },
403
- platform: {
404
- description: 'Platform (ios / macos / appletvos)',
405
- required: false,
406
- default: 'ios',
407
- },
408
- skip_metadata: {
409
- description: 'Skip metadata upload (yes/no)',
410
- required: false,
411
- default: 'yes',
412
- },
413
- skip_screenshots: {
414
- description: 'Skip screenshot upload (yes/no)',
415
- required: false,
416
- default: 'yes',
417
- },
418
- submit_for_review: {
419
- description: 'Auto-submit for review after upload (yes/no)',
420
- required: false,
421
- default: 'no',
422
- },
423
- options: {
424
- description: 'Extra fastlane deliver flags',
425
- required: false,
426
- inputType: 'text',
427
- },
428
- verbose_log: {
429
- description: 'Enable verbose fastlane output (yes/no)',
430
- required: false,
431
- default: 'no',
432
- },
433
- },
434
- });
435
- // iOS dependency management
436
- registerStep('cocoapods-install', new CocoapodsInstallStepExecutor(), {
437
- name: 'cocoapods-install',
438
- description: 'Run CocoaPods pod install or pod update',
439
- platform: 'ios',
440
- inputs: {
441
- command: {
442
- description: 'CocoaPods command (install or update)',
443
- required: false,
444
- default: 'install',
445
- },
446
- source_root_path: {
447
- description: 'Directory containing the Podfile',
448
- required: false,
449
- },
450
- podfile_path: {
451
- description: 'Explicit path to Podfile',
452
- required: false,
453
- },
454
- project_path: {
455
- description: 'A .xcodeproj/.xcworkspace whose directory holds the Podfile. For repositories that keep the app one directory down from the root.',
456
- required: false,
457
- },
458
- verbose: {
459
- description: 'Enable verbose CocoaPods logging',
460
- required: false,
461
- default: false,
462
- },
463
- skip_if_absent: {
464
- description: 'Succeed and do nothing when there is no Podfile, instead of failing. For pipelines that serve every iOS project, where plenty use Swift Package Manager and have no Podfile.',
465
- required: false,
466
- default: false,
467
- },
468
- },
469
- });
470
- registerStep('carthage', new CarthageStepExecutor(), {
471
- name: 'carthage',
472
- description: 'Run Carthage bootstrap, update, or build',
473
- platform: 'ios',
474
- inputs: {
475
- carthage_command: {
476
- description: 'Carthage command (bootstrap, update, or build)',
477
- required: false,
478
- default: 'bootstrap',
479
- },
480
- carthage_options: {
481
- description: 'Additional options for the carthage command',
482
- required: false,
483
- },
484
- github_access_token: {
485
- description: 'GitHub personal access token to avoid rate limits',
486
- required: false,
487
- },
488
- verbose: {
489
- description: 'Enable verbose Carthage logging',
490
- required: false,
491
- default: false,
492
- },
493
- },
494
- });
495
- // Xcode build-for-test, test-without-building, build-for-simulator
496
- registerStep('xcode-build-for-test', new XcodeBuildForTestStepExecutor(), {
497
- name: 'xcode-build-for-test',
498
- description: 'Build app and tests without running them (build-for-testing)',
499
- platform: 'ios',
500
- inputs: {
501
- project_path: {
502
- description: 'Path to .xcodeproj or .xcworkspace',
503
- required: true,
504
- },
505
- scheme: {
506
- description: 'Xcode scheme name',
507
- required: true,
508
- },
509
- configuration: {
510
- description: 'Build configuration',
511
- required: false,
512
- default: 'Debug',
513
- },
514
- destination: {
515
- description: 'Xcodebuild destination specifier',
516
- required: false,
517
- default: 'generic/platform=iOS Simulator',
518
- },
519
- test_plan: {
520
- description: 'Test Plan to build for',
521
- required: false,
522
- },
523
- xcconfig_content: {
524
- description: 'Extra xcconfig settings',
525
- required: false,
526
- },
527
- xcodebuild_options: {
528
- description: 'Additional xcodebuild flags',
529
- required: false,
530
- },
531
- output_dir: {
532
- description: 'Directory for build artifacts',
533
- required: false,
534
- default: 'build',
535
- },
536
- },
537
- });
538
- registerStep('xcode-test-without-building', new XcodeTestWithoutBuildingStepExecutor(), {
539
- name: 'xcode-test-without-building',
540
- description: 'Run pre-compiled tests from an .xctestrun file',
541
- platform: 'ios',
542
- inputs: {
543
- xctestrun: {
544
- description: 'Path to .xctestrun file',
545
- required: false,
546
- default: '$CIBUILD_XCTESTRUN_FILE_PATH',
547
- },
548
- destination: {
549
- description: 'Device destination specifier',
550
- required: false,
551
- default: 'platform=iOS Simulator,name=iPhone 15,OS=latest',
552
- },
553
- only_testing: {
554
- description: 'Test identifiers to run (newline-separated)',
555
- required: false,
556
- },
557
- skip_testing: {
558
- description: 'Test identifiers to skip (newline-separated)',
559
- required: false,
560
- },
561
- test_repetition_mode: {
562
- description: 'Repeat mode: none | until_failure | retry_on_failure',
563
- required: false,
564
- default: 'none',
565
- },
566
- maximum_test_repetitions: {
567
- description: 'Max test repetitions',
568
- required: false,
569
- default: '3',
570
- },
571
- xcodebuild_options: {
572
- description: 'Additional xcodebuild flags',
573
- required: false,
574
- },
575
- },
576
- });
577
- registerStep('xcode-build-for-simulator', new XcodeBuildForSimulatorStepExecutor(), {
578
- name: 'xcode-build-for-simulator',
579
- description: 'Build iOS app for simulator (.app bundle)',
580
- platform: 'ios',
581
- inputs: {
582
- project_path: {
583
- description: 'Path to .xcodeproj or .xcworkspace',
584
- required: true,
585
- },
586
- scheme: {
587
- description: 'Xcode scheme name',
588
- required: true,
589
- },
590
- configuration: {
591
- description: 'Build configuration',
592
- required: false,
593
- },
594
- destination: {
595
- description: 'Simulator destination specifier',
596
- required: false,
597
- default: 'generic/platform=iOS Simulator',
598
- },
599
- perform_clean_action: {
600
- description: 'Run clean before build (yes/no)',
601
- required: false,
602
- default: 'no',
603
- },
604
- xcconfig_content: {
605
- description: 'Extra xcconfig settings (default disables code signing)',
606
- required: false,
607
- default: 'CODE_SIGNING_ALLOWED=NO',
608
- },
609
- xcodebuild_options: {
610
- description: 'Additional xcodebuild flags',
611
- required: false,
612
- },
613
- output_dir: {
614
- description: 'Directory for build artifacts',
615
- required: false,
616
- default: 'build',
617
- },
618
- },
619
- });
620
- // iOS version management
621
- registerStep('set-xcode-build-number', new SetXcodeBuildNumberStepExecutor(), {
622
- name: 'set-xcode-build-number',
623
- description: 'Set Xcode project build number and marketing version',
624
- platform: 'ios',
625
- inputs: {
626
- project_path: {
627
- description: 'Path to .xcodeproj or .xcworkspace',
628
- required: false,
629
- },
630
- scheme: {
631
- description: 'Xcode scheme name',
632
- required: false,
633
- },
634
- target: {
635
- description: 'Xcode target name',
636
- required: false,
637
- },
638
- build_version: {
639
- description: 'Build number (CFBundleVersion)',
640
- required: false,
641
- default: '$CIBUILD_BUILD_NUMBER',
642
- },
643
- build_version_offset: {
644
- description: 'Offset added to build_version',
645
- required: false,
646
- },
647
- build_short_version_string: {
648
- description: 'Marketing version (CFBundleShortVersionString)',
649
- required: false,
650
- },
651
- },
652
- });
653
- registerStep('set-ios-version', new SetIosVersionStepExecutor(), {
654
- name: 'set-ios-version',
655
- description: 'Set Info.plist version via PlistBuddy',
656
- platform: 'ios',
657
- inputs: {
658
- info_plist_file: {
659
- description: 'Path to Info.plist file',
660
- required: true,
661
- },
662
- bundle_version: {
663
- description: 'CFBundleVersion to set',
664
- required: false,
665
- },
666
- bundle_version_short: {
667
- description: 'CFBundleShortVersionString to set',
668
- required: false,
669
- },
670
- },
671
- });
672
- // iOS code signing
673
- registerStep('certificate-installer', new CertificateInstallerStepExecutor(), {
674
- name: 'certificate-installer',
675
- description: 'Install Apple code signing certificates and provisioning profiles',
676
- platform: 'ios',
677
- inputs: {
678
- certificate_url: {
679
- description: 'URL(s) to .p12 certificate files (pipe-separated)',
680
- required: false,
681
- default: '$CIBUILD_CERTIFICATE_URL',
682
- },
683
- certificate_passphrase: {
684
- description: 'Certificate passphrase(s), pipe-separated',
685
- required: false,
686
- },
687
- provisioning_profile_url: {
688
- description: 'URL(s) to provisioning profiles (pipe-separated)',
689
- required: false,
690
- },
691
- keychain_path: {
692
- description: 'Path to the keychain',
693
- required: false,
694
- default: '$HOME/Library/Keychains/login.keychain',
695
- },
696
- keychain_password: {
697
- description: 'Keychain password',
698
- required: false,
699
- },
700
- verbose: {
701
- description: 'Enable verbose logging',
702
- required: false,
703
- default: 'false',
704
- },
705
- },
706
- });
707
- // Fastlane
708
- registerStep('fastlane', new FastlaneStepExecutor(), {
709
- name: 'fastlane',
710
- description: 'Run a fastlane lane',
711
- platform: 'all',
712
- inputs: {
713
- lane: {
714
- description: 'Fastlane lane to run',
715
- required: true,
716
- },
717
- work_dir: {
718
- description: 'Working directory (parent of fastlane directory)',
719
- required: false,
720
- },
721
- update_fastlane: {
722
- description: 'Update fastlane gem before run',
723
- required: false,
724
- default: 'true',
725
- },
726
- verbose_log: {
727
- description: 'Enable verbose logging',
728
- required: false,
729
- default: 'no',
730
- },
731
- enable_cache: {
732
- description: 'Collect cache files',
733
- required: false,
734
- default: 'yes',
735
- },
736
- },
737
- });
738
- // Linting — iOS
739
- registerStep('swiftlint', new SwiftlintStepExecutor(), {
740
- name: 'swiftlint',
741
- description: 'Run SwiftLint on Swift code',
742
- platform: 'ios',
743
- inputs: {
744
- linting_path: {
745
- description: 'Path where SwiftLint should lint',
746
- required: false,
747
- default: '.',
748
- },
749
- lint_range: {
750
- description: 'Range: all | changed',
751
- required: false,
752
- default: 'all',
753
- },
754
- lint_config_file: {
755
- description: 'Path to .swiftlint.yml config',
756
- required: false,
757
- },
758
- reporter: {
759
- description: 'Reporter style',
760
- required: false,
761
- default: 'xcode',
762
- },
763
- strict: {
764
- description: 'Strict mode (yes/no)',
765
- required: false,
766
- default: 'no',
767
- },
768
- quiet: {
769
- description: 'Quiet mode (yes/no)',
770
- required: false,
771
- default: 'no',
772
- },
773
- },
774
- });
775
- // UI fidelity — render SwiftUI screens to PNGs via ImageRenderer on macOS
776
- registerStep('ui-fidelity-render', new UiFidelityRenderStepExecutor(), {
777
- name: 'ui-fidelity-render',
778
- description: 'Render parameterless SwiftUI views from a SwiftPM package to PNGs with ImageRenderer (no app build, no simulator)',
779
- platform: 'ios',
780
- inputs: {
781
- package_source: {
782
- description: "Where the SwiftPM package comes from: 'repo' (package_path in the checkout) " +
783
- "or 'inputs' (package.tar.gz shipped in the run-inputs directory)",
784
- required: false,
785
- default: DEFAULT_PACKAGE_SOURCE,
786
- },
787
- reference_source: {
788
- description: "Where each screen's reference image comes from: 'inputs' (default — a " +
789
- "basename in the run-inputs directory) or 'repo' (a repo-relative path to " +
790
- 'a committed reference, resolved against the checkout)',
791
- required: false,
792
- default: DEFAULT_REFERENCE_SOURCE,
793
- },
794
- package_path: {
795
- description: "Path to the user's SwiftPM package containing the screens. " +
796
- "Required when package_source is 'repo' (the default); ignored with 'inputs'",
797
- required: false,
798
- inputType: 'path',
799
- },
800
- target: {
801
- description: 'SPM library product to import in the render harness. Required when ' +
802
- "package_source is 'repo'; optional with 'inputs', where it is discovered " +
803
- 'from the shipped manifest when exactly one library product exists',
804
- required: false,
805
- inputType: 'text',
806
- },
807
- render_size: {
808
- description: 'Render size in device points, "<width>x<height>"',
809
- required: false,
810
- default: DEFAULT_RENDER_SIZE,
811
- },
812
- scale: {
813
- description: 'Display scale factor applied to the render',
814
- required: false,
815
- default: DEFAULT_SCALE,
816
- },
817
- },
818
- });
819
- // UI fidelity — render Jetpack Compose wrappers to PNGs via Roborazzi +
820
- // Robolectric on the JVM (no device/emulator), on a macOS runner
821
- registerStep('ui-fidelity-render-android', new UiFidelityRenderAndroidStepExecutor(), {
822
- name: 'ui-fidelity-render-android',
823
- description: 'Render parameterless Jetpack Compose wrappers from a shipped Gradle project to PNGs ' +
824
- 'via Roborazzi + Robolectric on the JVM (no device, no emulator)',
825
- platform: 'android',
826
- inputs: {
827
- package_source: {
828
- description: "Where the Gradle render project comes from: 'inputs' (default — " +
829
- "package.tar.gz shipped in the run-inputs directory) or 'repo' " +
830
- '(package_path in the checkout, rendered directly without an upload)',
831
- required: false,
832
- default: DEFAULT_ANDROID_PACKAGE_SOURCE,
833
- },
834
- reference_source: {
835
- description: "Where each screen's reference image comes from: 'inputs' (default — a " +
836
- "basename in the run-inputs directory) or 'repo' (a repo-relative path to " +
837
- 'a committed reference, resolved against the checkout)',
838
- required: false,
839
- default: DEFAULT_ANDROID_REFERENCE_SOURCE,
840
- },
841
- package_path: {
842
- description: 'Repo-relative path to the committed Gradle render project. Required ' +
843
- "when package_source is 'repo'; ignored with 'inputs'",
844
- required: false,
845
- inputType: 'path',
846
- },
847
- scale: {
848
- description: 'Display scale factor used when reporting logical points; must match the ' +
849
- 'density qualifier the render test pins (xhdpi = 2)',
850
- required: false,
851
- default: DEFAULT_SCALE,
852
- },
853
- gradle_task: {
854
- description: 'Gradle task that records the Roborazzi PNGs, run from the project root',
855
- required: false,
856
- default: DEFAULT_GRADLE_TASK,
857
- },
858
- },
859
- });
860
- // Export xcarchive
861
- registerStep('export-xcarchive', new ExportXcarchiveStepExecutor(), {
862
- name: 'export-xcarchive',
863
- description: 'Export IPA from existing .xcarchive',
864
- platform: 'ios',
865
- inputs: {
866
- archive_path: {
867
- description: 'Path to .xcarchive file',
868
- required: true,
869
- default: '$CIBUILD_XCARCHIVE_PATH',
870
- },
871
- product: {
872
- description: 'Product to export: app | app-clip',
873
- required: false,
874
- default: 'app',
875
- },
876
- distribution_method: {
877
- description: 'Export method: development | app-store | ad-hoc | enterprise',
878
- required: false,
879
- default: 'development',
880
- },
881
- compile_bitcode: {
882
- description: 'Recompile from bitcode (yes/no)',
883
- required: false,
884
- default: 'yes',
885
- },
886
- upload_bitcode: {
887
- description: 'Include bitcode (yes/no)',
888
- required: false,
889
- default: 'yes',
890
- },
891
- export_options_plist_content: {
892
- description: 'Custom ExportOptions.plist content',
893
- required: false,
894
- },
895
- verbose_log: {
896
- description: 'Enable verbose logging (yes/no)',
897
- required: false,
898
- default: 'no',
899
- },
900
- },
901
- });
902
- // Android steps
903
- registerStep('set-java-version', new SetJavaVersionStepExecutor(), {
904
- name: 'set-java-version',
905
- description: 'Set Java version for Android builds',
906
- platform: 'android',
907
- inputs: {
908
- java_version: {
909
- description: 'Java version to use',
910
- required: false,
911
- default: '17',
912
- },
913
- },
914
- });
915
- registerStep('gradle-build', new GradleBuildStepExecutor(), {
916
- name: 'gradle-build',
917
- description: 'Build Android project with Gradle',
918
- platform: 'android',
919
- inputs: {
920
- project_location: {
921
- description: 'Android project location',
922
- required: false,
923
- default: '.',
924
- },
925
- build_type: {
926
- description: 'Build type (Debug/Release)',
927
- required: false,
928
- default: 'Release',
929
- },
930
- gradle_task: {
931
- description: 'Gradle task to run',
932
- required: false,
933
- default: 'assembleRelease',
934
- },
935
- gradle_options: {
936
- description: 'Additional Gradle options',
937
- required: false,
938
- },
939
- },
940
- });
941
- // Register android-build as alias for gradle-build (Bitrise compatibility)
942
- registerStep('android-build', new GradleBuildStepExecutor(), {
943
- name: 'android-build',
944
- description: 'Build Android project with Gradle (Bitrise android-build step)',
945
- platform: 'android',
946
- inputs: {
947
- project_location: {
948
- description: 'Android project location',
949
- required: false,
950
- default: '.',
951
- },
952
- variant: {
953
- description: 'Build variant (debug, release, etc.)',
954
- required: false,
955
- default: 'release',
956
- },
957
- module: {
958
- description: 'Module to build',
959
- required: false,
960
- default: 'app',
961
- },
962
- build_type: {
963
- description: 'Build type (apk or aab)',
964
- required: false,
965
- default: 'apk',
966
- },
967
- gradle_task: {
968
- description: 'Gradle task to run (overrides variant/build_type)',
969
- required: false,
970
- },
971
- gradle_options: {
972
- description: 'Additional Gradle options',
973
- required: false,
974
- },
975
- },
976
- });
977
- registerStep('android-lint', new AndroidLintStepExecutor(), {
978
- name: 'android-lint',
979
- description: 'Run Android lint checks',
980
- platform: 'android',
981
- inputs: {
982
- project_location: {
983
- description: 'Android project location',
984
- required: false,
985
- default: '.',
986
- },
987
- module: {
988
- description: 'Module to lint',
989
- required: false,
990
- default: 'app',
991
- },
992
- variant: {
993
- description: 'Build variant',
994
- required: false,
995
- default: 'debug',
996
- },
997
- },
998
- });
999
- registerStep('android-unit-test', new AndroidUnitTestStepExecutor(), {
1000
- name: 'android-unit-test',
1001
- description: 'Run Android unit tests',
1002
- platform: 'android',
1003
- inputs: {
1004
- project_location: {
1005
- description: 'Android project location',
1006
- required: false,
1007
- default: '.',
1008
- },
1009
- module: {
1010
- description: 'Module to test',
1011
- required: false,
1012
- default: 'app',
1013
- },
1014
- variant: {
1015
- description: 'Build variant',
1016
- required: false,
1017
- default: 'debug',
1018
- },
1019
- test_filter: {
1020
- description: 'Test filter pattern',
1021
- required: false,
1022
- },
1023
- },
1024
- });
1025
- // Linting — Android
1026
- registerStep('detekt', new DetektStepExecutor(), {
1027
- name: 'detekt',
1028
- description: 'Run detekt Kotlin static analysis via Gradle',
1029
- platform: 'android',
1030
- inputs: {
1031
- project_location: {
1032
- description: 'Root directory of the Android project',
1033
- required: false,
1034
- default: '.',
1035
- },
1036
- module: {
1037
- description: 'Module to run detekt on',
1038
- required: false,
1039
- },
1040
- report_path_pattern: {
1041
- description: 'Glob pattern to find report files',
1042
- required: false,
1043
- default: '*/build/reports/detekt/detekt*.html',
1044
- },
1045
- arguments: {
1046
- description: 'Additional Gradle arguments',
1047
- required: false,
1048
- },
1049
- },
1050
- });
1051
- // Android signing
1052
- registerStep('sign-apk', new SignApkStepExecutor(), {
1053
- name: 'sign-apk',
1054
- description: 'Sign APK/AAB with keystore',
1055
- platform: 'android',
1056
- inputs: {
1057
- android_app: {
1058
- description: 'Path(s) to APK or AAB files (pipe-separated)',
1059
- required: false,
1060
- default: '$CIBUILD_APK_PATH',
1061
- },
1062
- keystore_url: {
1063
- description: 'Keystore file URL or local path',
1064
- required: true,
1065
- },
1066
- keystore_password: {
1067
- description: 'Keystore password',
1068
- required: true,
1069
- },
1070
- keystore_alias: {
1071
- description: 'Key alias inside the keystore',
1072
- required: true,
1073
- },
1074
- private_key_password: {
1075
- description: 'Private key password',
1076
- required: false,
1077
- },
1078
- signer_tool: {
1079
- description: 'Signing tool: automatic | apksigner | jarsigner',
1080
- required: false,
1081
- default: 'automatic',
1082
- },
1083
- output_name: {
1084
- description: 'Custom output artifact name',
1085
- required: false,
1086
- },
1087
- },
1088
- });
1089
- // Android UI testing build
1090
- registerStep('android-build-for-ui-testing', new AndroidBuildForUITestingStepExecutor(), {
1091
- name: 'android-build-for-ui-testing',
1092
- description: 'Build app and test APKs for instrumented testing',
1093
- platform: 'android',
1094
- inputs: {
1095
- project_location: {
1096
- description: 'Root directory of the Android project',
1097
- required: false,
1098
- default: '.',
1099
- },
1100
- module: {
1101
- description: 'Module to build',
1102
- required: false,
1103
- default: 'app',
1104
- },
1105
- variant: {
1106
- description: 'Build variant',
1107
- required: false,
1108
- default: 'Debug',
1109
- },
1110
- arguments: {
1111
- description: 'Additional Gradle arguments',
1112
- required: false,
1113
- },
1114
- },
1115
- });
1116
- // Flutter steps
1117
- registerStep('flutter-installer', new FlutterInstallerStepExecutor(), {
1118
- name: 'flutter-installer',
1119
- description: 'Install or activate Flutter SDK',
1120
- platform: 'all',
1121
- inputs: {
1122
- version: {
1123
- description: 'Flutter version or channel (stable, beta, master)',
1124
- required: false,
1125
- default: 'stable',
1126
- },
1127
- installation_path: {
1128
- description: 'Path to install Flutter SDK',
1129
- required: false,
1130
- default: '$HOME/flutter',
1131
- },
1132
- },
1133
- });
1134
- registerStep('flutter-build', new FlutterBuildStepExecutor(), {
1135
- name: 'flutter-build',
1136
- description: 'Build Flutter project for iOS/Android',
1137
- platform: 'all',
1138
- inputs: {
1139
- project_location: {
1140
- description: 'Root directory of the Flutter project',
1141
- required: false,
1142
- default: '.',
1143
- },
1144
- platform: {
1145
- description: 'Platform to build: ios | android | both',
1146
- required: false,
1147
- default: 'both',
1148
- },
1149
- additional_build_params: {
1150
- description: 'Additional flutter build parameters',
1151
- required: false,
1152
- },
1153
- ios_output_type: {
1154
- description: 'iOS output: app | archive',
1155
- required: false,
1156
- default: 'app',
1157
- },
1158
- android_output_type: {
1159
- description: 'Android output: apk | appbundle',
1160
- required: false,
1161
- default: 'apk',
1162
- },
1163
- ios_additional_params: {
1164
- description: 'Additional iOS build params',
1165
- required: false,
1166
- default: '--release',
1167
- },
1168
- android_additional_params: {
1169
- description: 'Additional Android build params',
1170
- required: false,
1171
- default: '--release',
1172
- },
1173
- is_debug_mode: {
1174
- description: 'Enable debug mode',
1175
- required: false,
1176
- default: 'false',
1177
- },
1178
- },
1179
- });
1180
- registerStep('flutter-test', new FlutterTestStepExecutor(), {
1181
- name: 'flutter-test',
1182
- description: 'Run Flutter tests',
1183
- platform: 'all',
1184
- inputs: {
1185
- project_location: {
1186
- description: 'Root directory of the Flutter project',
1187
- required: false,
1188
- default: '.',
1189
- },
1190
- additional_params: {
1191
- description: 'Additional flutter test parameters',
1192
- required: false,
1193
- },
1194
- generate_code_coverage_files: {
1195
- description: 'Enable coverage (true/false)',
1196
- required: false,
1197
- default: 'false',
1198
- },
1199
- },
1200
- });
1201
- // Release steps
1202
- registerStep('generate-changelog', new GenerateChangelogStepExecutor(), {
1203
- name: 'generate-changelog',
1204
- description: 'Generate changelog from git history',
1205
- platform: 'all',
1206
- inputs: {
1207
- changelog_path: {
1208
- description: 'Path to write the changelog',
1209
- required: false,
1210
- default: './CHANGELOG.md',
1211
- },
1212
- working_dir: {
1213
- description: 'Working directory',
1214
- required: false,
1215
- default: '.',
1216
- },
1217
- },
1218
- });
1219
- registerStep('github-release', new GithubReleaseStepExecutor(), {
1220
- name: 'github-release',
1221
- description: 'Create GitHub release with artifact attachments',
1222
- platform: 'all',
1223
- inputs: {
1224
- tag: {
1225
- description: 'Release tag name',
1226
- required: true,
1227
- },
1228
- name: {
1229
- description: 'Release title',
1230
- required: false,
1231
- },
1232
- body: {
1233
- description: 'Release notes',
1234
- required: false,
1235
- },
1236
- changelog_path: {
1237
- description: 'Changelog file for notes',
1238
- required: false,
1239
- },
1240
- draft: {
1241
- description: 'Draft release (true/false)',
1242
- required: false,
1243
- default: 'false',
1244
- },
1245
- pre_release: {
1246
- description: 'Pre-release (true/false)',
1247
- required: false,
1248
- default: 'false',
1249
- },
1250
- files_to_upload: {
1251
- description: 'Files to attach (newline-separated)',
1252
- required: false,
1253
- },
1254
- api_token: {
1255
- description: 'GitHub API token',
1256
- required: false,
1257
- default: '$GITHUB_TOKEN',
1258
- },
1259
- },
1260
- });
1261
- // Bitrise compatibility steps
1262
- // Map all Bitrise version numbers (@1, @2, @3, @4) to single CI Build implementation
1263
- const bitriseSteps = [
1264
- {
1265
- name: 'activate-ssh-key',
1266
- executor: new BitriseSSHStepExecutor(),
1267
- metadata: {
1268
- name: 'activate-ssh-key',
1269
- description: 'Bitrise: Activate SSH key for git operations',
1270
- platform: 'all',
1271
- inputs: {
1272
- ssh_rsa_private_key: {
1273
- description: 'SSH private key (read from SSH_RSA_PRIVATE_KEY env)',
1274
- required: false,
1275
- },
1276
- ssh_key_save_path: {
1277
- description: 'Path to save SSH key',
1278
- required: false,
1279
- default: '~/.ssh/id_rsa',
1280
- },
1281
- },
1282
- },
1283
- },
1284
- {
1285
- name: 'install-missing-android-tools',
1286
- executor: new BitriseAndroidToolsStepExecutor(),
1287
- metadata: {
1288
- name: 'install-missing-android-tools',
1289
- description: 'Bitrise: Install missing Android SDK tools',
1290
- platform: 'android',
1291
- inputs: {
1292
- gradlew_path: {
1293
- description: 'Path to gradlew file',
1294
- required: false,
1295
- default: './gradlew',
1296
- },
1297
- },
1298
- },
1299
- },
1300
- {
1301
- name: 'change-android-versioncode-and-versionname',
1302
- executor: new ChangeAndroidVersionStepExecutor(),
1303
- metadata: {
1304
- name: 'change-android-versioncode-and-versionname',
1305
- description: 'Update versionCode and versionName in build.gradle before building',
1306
- platform: 'android',
1307
- inputs: {
1308
- build_gradle_path: {
1309
- description: 'Path to build.gradle file containing versionCode/versionName',
1310
- required: true,
1311
- default: '$PROJECT_LOCATION/app/build.gradle',
1312
- inputType: 'path',
1313
- },
1314
- new_version_name: {
1315
- description: 'New versionName to set (e.g. "1.2.3"). Leave empty to keep existing.',
1316
- required: false,
1317
- },
1318
- new_version_code: {
1319
- description: 'New versionCode integer. Leave empty to keep existing.',
1320
- required: false,
1321
- },
1322
- version_code_offset: {
1323
- description: 'Integer offset added to new_version_code (or current code if new_version_code is empty)',
1324
- required: false,
1325
- },
1326
- },
1327
- },
1328
- },
1329
- {
1330
- name: 'slack',
1331
- executor: new BitriseSlackStepExecutor(),
1332
- metadata: {
1333
- name: 'slack',
1334
- description: 'Bitrise: Send Slack notification',
1335
- platform: 'all',
1336
- inputs: {
1337
- webhook_url: {
1338
- description: 'Slack webhook URL',
1339
- required: true,
1340
- },
1341
- channel: {
1342
- description: 'Slack channel',
1343
- required: false,
1344
- },
1345
- text: {
1346
- description: 'Message text',
1347
- required: false,
1348
- },
1349
- message: {
1350
- description: 'Message (alternative to text)',
1351
- required: false,
1352
- },
1353
- color: {
1354
- description: 'Message color',
1355
- required: false,
1356
- },
1357
- },
1358
- },
1359
- },
1360
- {
1361
- name: 'apk-info',
1362
- executor: new BitriseApkInfoStepExecutor(),
1363
- metadata: {
1364
- name: 'apk-info',
1365
- description: 'Bitrise: Extract APK information',
1366
- platform: 'android',
1367
- inputs: {
1368
- apk_path: {
1369
- description: 'Path to APK file (auto-detected if not provided)',
1370
- required: false,
1371
- },
1372
- },
1373
- },
1374
- },
1375
- {
1376
- name: 'google-play-deploy',
1377
- executor: new GooglePlayDeployStepExecutor(),
1378
- metadata: {
1379
- name: 'google-play-deploy',
1380
- description: 'Upload APK/AAB to Google Play via fastlane supply',
1381
- platform: 'android',
1382
- inputs: {
1383
- service_account_json_var: {
1384
- description: 'Secret env var name containing the service account JSON content',
1385
- required: false,
1386
- default: 'GOOGLE_PLAY_SERVICE_ACCOUNT_JSON',
1387
- },
1388
- service_account_json_key_path: {
1389
- description: 'Path to service account JSON key file (alternative to service_account_json_var)',
1390
- required: false,
1391
- },
1392
- package_name: {
1393
- description: 'Android app package name',
1394
- required: true,
1395
- },
1396
- app_path: {
1397
- description: 'Path to APK or AAB file',
1398
- required: false,
1399
- default: '$CIBUILD_APK_PATH\n$CIBUILD_AAB_PATH',
1400
- },
1401
- track: {
1402
- description: 'Deployment track (internal/alpha/beta/production)',
1403
- required: false,
1404
- default: 'alpha',
1405
- },
1406
- user_fraction: {
1407
- description: 'Staged rollout fraction (0.0-1.0)',
1408
- required: false,
1409
- },
1410
- status: {
1411
- description: 'Release status',
1412
- required: false,
1413
- },
1414
- update_priority: {
1415
- description: 'In-app update priority (0-5)',
1416
- required: false,
1417
- default: '0',
1418
- },
1419
- whatsnews_dir: {
1420
- description: "Directory of localized release notes (what's new files)",
1421
- required: false,
1422
- },
1423
- mapping_file: {
1424
- description: 'ProGuard mapping file path',
1425
- required: false,
1426
- default: '$CIBUILD_MAPPING_PATH',
1427
- },
1428
- retry_without_sending_to_review: {
1429
- description: 'Retry without sending to review on failure',
1430
- required: false,
1431
- default: 'false',
1432
- },
1433
- ack_bundle_installation_warning: {
1434
- description: 'Acknowledge bundle installation warning',
1435
- required: false,
1436
- default: 'false',
1437
- },
1438
- dry_run: {
1439
- description: 'Validate without creating a release',
1440
- required: false,
1441
- default: 'false',
1442
- },
1443
- verbose_log: {
1444
- description: 'Enable verbose logging',
1445
- required: false,
1446
- default: 'false',
1447
- },
1448
- },
1449
- },
1450
- },
1451
- ];
1452
- // Register each Bitrise step with version mapping
1453
- // This maps @1, @2, @3, @4 versions to the same implementation
1454
- for (const step of bitriseSteps) {
1455
- // Register base step name
1456
- registerStep(step.name, step.executor, step.metadata);
1457
- }
1458
- }
1459
- // Auto-initialize on module import
1460
- initializeStepRegistry();
1461
- //# sourceMappingURL=index.js.map