@invarn/cibuild 2.9.6 → 2.9.8

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 (559) 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/a-missing-pinned-jdk-yields-for-every-gradle-run.test.d.ts +0 -2
  282. package/dist/src/yaml/steps/a-missing-pinned-jdk-yields-for-every-gradle-run.test.d.ts.map +0 -1
  283. package/dist/src/yaml/steps/a-missing-pinned-jdk-yields-for-every-gradle-run.test.js +0 -96
  284. package/dist/src/yaml/steps/android-sign.d.ts +0 -35
  285. package/dist/src/yaml/steps/android-sign.d.ts.map +0 -1
  286. package/dist/src/yaml/steps/android-sign.js +0 -147
  287. package/dist/src/yaml/steps/android-variant-resolution.test.d.ts +0 -2
  288. package/dist/src/yaml/steps/android-variant-resolution.test.d.ts.map +0 -1
  289. package/dist/src/yaml/steps/android-variant-resolution.test.js +0 -260
  290. package/dist/src/yaml/steps/android-version.d.ts +0 -26
  291. package/dist/src/yaml/steps/android-version.d.ts.map +0 -1
  292. package/dist/src/yaml/steps/android-version.js +0 -128
  293. package/dist/src/yaml/steps/android-version.test.d.ts +0 -5
  294. package/dist/src/yaml/steps/android-version.test.d.ts.map +0 -1
  295. package/dist/src/yaml/steps/android-version.test.js +0 -196
  296. package/dist/src/yaml/steps/android.d.ts +0 -156
  297. package/dist/src/yaml/steps/android.d.ts.map +0 -1
  298. package/dist/src/yaml/steps/android.js +0 -1100
  299. package/dist/src/yaml/steps/app-store-deploy.d.ts +0 -48
  300. package/dist/src/yaml/steps/app-store-deploy.d.ts.map +0 -1
  301. package/dist/src/yaml/steps/app-store-deploy.js +0 -167
  302. package/dist/src/yaml/steps/base.d.ts +0 -263
  303. package/dist/src/yaml/steps/base.d.ts.map +0 -1
  304. package/dist/src/yaml/steps/base.js +0 -380
  305. package/dist/src/yaml/steps/bitrise-android-tools.d.ts +0 -26
  306. package/dist/src/yaml/steps/bitrise-android-tools.d.ts.map +0 -1
  307. package/dist/src/yaml/steps/bitrise-android-tools.js +0 -200
  308. package/dist/src/yaml/steps/bitrise-android-tools.test.d.ts +0 -5
  309. package/dist/src/yaml/steps/bitrise-android-tools.test.d.ts.map +0 -1
  310. package/dist/src/yaml/steps/bitrise-android-tools.test.js +0 -280
  311. package/dist/src/yaml/steps/bitrise-apk-info.d.ts +0 -22
  312. package/dist/src/yaml/steps/bitrise-apk-info.d.ts.map +0 -1
  313. package/dist/src/yaml/steps/bitrise-apk-info.js +0 -144
  314. package/dist/src/yaml/steps/bitrise-apk-info.test.d.ts +0 -5
  315. package/dist/src/yaml/steps/bitrise-apk-info.test.d.ts.map +0 -1
  316. package/dist/src/yaml/steps/bitrise-apk-info.test.js +0 -331
  317. package/dist/src/yaml/steps/bitrise-slack.d.ts +0 -49
  318. package/dist/src/yaml/steps/bitrise-slack.d.ts.map +0 -1
  319. package/dist/src/yaml/steps/bitrise-slack.js +0 -280
  320. package/dist/src/yaml/steps/bitrise-slack.test.d.ts +0 -5
  321. package/dist/src/yaml/steps/bitrise-slack.test.d.ts.map +0 -1
  322. package/dist/src/yaml/steps/bitrise-slack.test.js +0 -484
  323. package/dist/src/yaml/steps/bitrise-ssh.d.ts +0 -27
  324. package/dist/src/yaml/steps/bitrise-ssh.d.ts.map +0 -1
  325. package/dist/src/yaml/steps/bitrise-ssh.js +0 -134
  326. package/dist/src/yaml/steps/bitrise-ssh.test.d.ts +0 -5
  327. package/dist/src/yaml/steps/bitrise-ssh.test.d.ts.map +0 -1
  328. package/dist/src/yaml/steps/bitrise-ssh.test.js +0 -205
  329. package/dist/src/yaml/steps/cache-pull-daemon.test.d.ts +0 -27
  330. package/dist/src/yaml/steps/cache-pull-daemon.test.d.ts.map +0 -1
  331. package/dist/src/yaml/steps/cache-pull-daemon.test.js +0 -212
  332. package/dist/src/yaml/steps/cache-pull-restore-roots.test.d.ts +0 -42
  333. package/dist/src/yaml/steps/cache-pull-restore-roots.test.d.ts.map +0 -1
  334. package/dist/src/yaml/steps/cache-pull-restore-roots.test.js +0 -209
  335. package/dist/src/yaml/steps/cache-push-daemon.test.d.ts +0 -27
  336. package/dist/src/yaml/steps/cache-push-daemon.test.d.ts.map +0 -1
  337. package/dist/src/yaml/steps/cache-push-daemon.test.js +0 -171
  338. package/dist/src/yaml/steps/cache.d.ts +0 -59
  339. package/dist/src/yaml/steps/cache.d.ts.map +0 -1
  340. package/dist/src/yaml/steps/cache.js +0 -1027
  341. package/dist/src/yaml/steps/capture-injection.d.ts +0 -30
  342. package/dist/src/yaml/steps/capture-injection.d.ts.map +0 -1
  343. package/dist/src/yaml/steps/capture-injection.js +0 -88
  344. package/dist/src/yaml/steps/capture-injection.test.d.ts +0 -2
  345. package/dist/src/yaml/steps/capture-injection.test.d.ts.map +0 -1
  346. package/dist/src/yaml/steps/capture-injection.test.js +0 -163
  347. package/dist/src/yaml/steps/cocoapods-deployment-floor.d.ts +0 -42
  348. package/dist/src/yaml/steps/cocoapods-deployment-floor.d.ts.map +0 -1
  349. package/dist/src/yaml/steps/cocoapods-deployment-floor.js +0 -140
  350. package/dist/src/yaml/steps/cocoapods-deployment-floor.test.d.ts +0 -11
  351. package/dist/src/yaml/steps/cocoapods-deployment-floor.test.d.ts.map +0 -1
  352. package/dist/src/yaml/steps/cocoapods-deployment-floor.test.js +0 -176
  353. package/dist/src/yaml/steps/cocoapods-install-emits-valid-bash.test.d.ts +0 -22
  354. package/dist/src/yaml/steps/cocoapods-install-emits-valid-bash.test.d.ts.map +0 -1
  355. package/dist/src/yaml/steps/cocoapods-install-emits-valid-bash.test.js +0 -97
  356. package/dist/src/yaml/steps/cocoapods-locked-bundler.test.d.ts +0 -17
  357. package/dist/src/yaml/steps/cocoapods-locked-bundler.test.d.ts.map +0 -1
  358. package/dist/src/yaml/steps/cocoapods-locked-bundler.test.js +0 -282
  359. package/dist/src/yaml/steps/cocoapods-skip-if-absent.test.d.ts +0 -17
  360. package/dist/src/yaml/steps/cocoapods-skip-if-absent.test.d.ts.map +0 -1
  361. package/dist/src/yaml/steps/cocoapods-skip-if-absent.test.js +0 -132
  362. package/dist/src/yaml/steps/envstore-loader.test.d.ts +0 -15
  363. package/dist/src/yaml/steps/envstore-loader.test.d.ts.map +0 -1
  364. package/dist/src/yaml/steps/envstore-loader.test.js +0 -143
  365. package/dist/src/yaml/steps/fastlane.d.ts +0 -27
  366. package/dist/src/yaml/steps/fastlane.d.ts.map +0 -1
  367. package/dist/src/yaml/steps/fastlane.js +0 -79
  368. package/dist/src/yaml/steps/fidelity-aspect-guard.d.ts +0 -53
  369. package/dist/src/yaml/steps/fidelity-aspect-guard.d.ts.map +0 -1
  370. package/dist/src/yaml/steps/fidelity-aspect-guard.js +0 -72
  371. package/dist/src/yaml/steps/fidelity-aspect-guard.test.d.ts +0 -11
  372. package/dist/src/yaml/steps/fidelity-aspect-guard.test.d.ts.map +0 -1
  373. package/dist/src/yaml/steps/fidelity-aspect-guard.test.js +0 -50
  374. package/dist/src/yaml/steps/fidelity-reference-provenance.d.ts +0 -87
  375. package/dist/src/yaml/steps/fidelity-reference-provenance.d.ts.map +0 -1
  376. package/dist/src/yaml/steps/fidelity-reference-provenance.js +0 -111
  377. package/dist/src/yaml/steps/fidelity-reference-provenance.test.d.ts +0 -22
  378. package/dist/src/yaml/steps/fidelity-reference-provenance.test.d.ts.map +0 -1
  379. package/dist/src/yaml/steps/fidelity-reference-provenance.test.js +0 -118
  380. package/dist/src/yaml/steps/file.d.ts +0 -52
  381. package/dist/src/yaml/steps/file.d.ts.map +0 -1
  382. package/dist/src/yaml/steps/file.js +0 -108
  383. package/dist/src/yaml/steps/flutter.d.ts +0 -63
  384. package/dist/src/yaml/steps/flutter.d.ts.map +0 -1
  385. package/dist/src/yaml/steps/flutter.js +0 -215
  386. package/dist/src/yaml/steps/git-clone-names-the-inputs-it-ignores.test.d.ts +0 -16
  387. package/dist/src/yaml/steps/git-clone-names-the-inputs-it-ignores.test.d.ts.map +0 -1
  388. package/dist/src/yaml/steps/git-clone-names-the-inputs-it-ignores.test.js +0 -127
  389. package/dist/src/yaml/steps/git-clone.d.ts +0 -32
  390. package/dist/src/yaml/steps/git-clone.d.ts.map +0 -1
  391. package/dist/src/yaml/steps/git-clone.js +0 -171
  392. package/dist/src/yaml/steps/git-fetch-retry-exec.test.d.ts +0 -10
  393. package/dist/src/yaml/steps/git-fetch-retry-exec.test.d.ts.map +0 -1
  394. package/dist/src/yaml/steps/git-fetch-retry-exec.test.js +0 -162
  395. package/dist/src/yaml/steps/git-fetch-retry.d.ts +0 -62
  396. package/dist/src/yaml/steps/git-fetch-retry.d.ts.map +0 -1
  397. package/dist/src/yaml/steps/git-fetch-retry.js +0 -155
  398. package/dist/src/yaml/steps/git-fetch-retry.test.d.ts +0 -5
  399. package/dist/src/yaml/steps/git-fetch-retry.test.d.ts.map +0 -1
  400. package/dist/src/yaml/steps/git-fetch-retry.test.js +0 -86
  401. package/dist/src/yaml/steps/google-play-deploy.d.ts +0 -37
  402. package/dist/src/yaml/steps/google-play-deploy.d.ts.map +0 -1
  403. package/dist/src/yaml/steps/google-play-deploy.js +0 -193
  404. package/dist/src/yaml/steps/google-play-deploy.test.d.ts +0 -5
  405. package/dist/src/yaml/steps/google-play-deploy.test.d.ts.map +0 -1
  406. package/dist/src/yaml/steps/google-play-deploy.test.js +0 -310
  407. package/dist/src/yaml/steps/gradle-memory.d.ts +0 -91
  408. package/dist/src/yaml/steps/gradle-memory.d.ts.map +0 -1
  409. package/dist/src/yaml/steps/gradle-memory.js +0 -495
  410. package/dist/src/yaml/steps/gradle-memory.test.d.ts +0 -2
  411. package/dist/src/yaml/steps/gradle-memory.test.d.ts.map +0 -1
  412. package/dist/src/yaml/steps/gradle-memory.test.js +0 -344
  413. package/dist/src/yaml/steps/gradle-sdk-cmake.d.ts +0 -28
  414. package/dist/src/yaml/steps/gradle-sdk-cmake.d.ts.map +0 -1
  415. package/dist/src/yaml/steps/gradle-sdk-cmake.js +0 -107
  416. package/dist/src/yaml/steps/gradle-sdk-cmake.test.d.ts +0 -2
  417. package/dist/src/yaml/steps/gradle-sdk-cmake.test.d.ts.map +0 -1
  418. package/dist/src/yaml/steps/gradle-sdk-cmake.test.js +0 -183
  419. package/dist/src/yaml/steps/index.d.ts +0 -10
  420. package/dist/src/yaml/steps/index.d.ts.map +0 -1
  421. package/dist/src/yaml/steps/index.js +0 -1461
  422. package/dist/src/yaml/steps/ios-deps.d.ts +0 -78
  423. package/dist/src/yaml/steps/ios-deps.d.ts.map +0 -1
  424. package/dist/src/yaml/steps/ios-deps.js +0 -279
  425. package/dist/src/yaml/steps/ios-deps.test.d.ts +0 -5
  426. package/dist/src/yaml/steps/ios-deps.test.d.ts.map +0 -1
  427. package/dist/src/yaml/steps/ios-deps.test.js +0 -90
  428. package/dist/src/yaml/steps/ios-signing.d.ts +0 -31
  429. package/dist/src/yaml/steps/ios-signing.d.ts.map +0 -1
  430. package/dist/src/yaml/steps/ios-signing.js +0 -144
  431. package/dist/src/yaml/steps/ios-version.d.ts +0 -47
  432. package/dist/src/yaml/steps/ios-version.d.ts.map +0 -1
  433. package/dist/src/yaml/steps/ios-version.js +0 -151
  434. package/dist/src/yaml/steps/java-home-version-spec.test.d.ts +0 -10
  435. package/dist/src/yaml/steps/java-home-version-spec.test.d.ts.map +0 -1
  436. package/dist/src/yaml/steps/java-home-version-spec.test.js +0 -58
  437. package/dist/src/yaml/steps/kotlin-metadata-compiles-on-a-daemon.test.d.ts +0 -2
  438. package/dist/src/yaml/steps/kotlin-metadata-compiles-on-a-daemon.test.d.ts.map +0 -1
  439. package/dist/src/yaml/steps/kotlin-metadata-compiles-on-a-daemon.test.js +0 -139
  440. package/dist/src/yaml/steps/linting.d.ts +0 -47
  441. package/dist/src/yaml/steps/linting.d.ts.map +0 -1
  442. package/dist/src/yaml/steps/linting.js +0 -148
  443. package/dist/src/yaml/steps/phase2.test.d.ts +0 -6
  444. package/dist/src/yaml/steps/phase2.test.d.ts.map +0 -1
  445. package/dist/src/yaml/steps/phase2.test.js +0 -197
  446. package/dist/src/yaml/steps/phase3.test.d.ts +0 -5
  447. package/dist/src/yaml/steps/phase3.test.d.ts.map +0 -1
  448. package/dist/src/yaml/steps/phase3.test.js +0 -144
  449. package/dist/src/yaml/steps/phase4.test.d.ts +0 -5
  450. package/dist/src/yaml/steps/phase4.test.d.ts.map +0 -1
  451. package/dist/src/yaml/steps/phase4.test.js +0 -166
  452. package/dist/src/yaml/steps/phase5.test.d.ts +0 -6
  453. package/dist/src/yaml/steps/phase5.test.d.ts.map +0 -1
  454. package/dist/src/yaml/steps/phase5.test.js +0 -263
  455. package/dist/src/yaml/steps/registry.d.ts +0 -88
  456. package/dist/src/yaml/steps/registry.d.ts.map +0 -1
  457. package/dist/src/yaml/steps/registry.js +0 -125
  458. package/dist/src/yaml/steps/registry.test.d.ts +0 -5
  459. package/dist/src/yaml/steps/registry.test.d.ts.map +0 -1
  460. package/dist/src/yaml/steps/registry.test.js +0 -235
  461. package/dist/src/yaml/steps/release.d.ts +0 -50
  462. package/dist/src/yaml/steps/release.d.ts.map +0 -1
  463. package/dist/src/yaml/steps/release.js +0 -154
  464. package/dist/src/yaml/steps/render-post-processor.d.ts +0 -100
  465. package/dist/src/yaml/steps/render-post-processor.d.ts.map +0 -1
  466. package/dist/src/yaml/steps/render-post-processor.js +0 -270
  467. package/dist/src/yaml/steps/render-post-processor.test.d.ts +0 -13
  468. package/dist/src/yaml/steps/render-post-processor.test.d.ts.map +0 -1
  469. package/dist/src/yaml/steps/render-post-processor.test.js +0 -220
  470. package/dist/src/yaml/steps/script.d.ts +0 -23
  471. package/dist/src/yaml/steps/script.d.ts.map +0 -1
  472. package/dist/src/yaml/steps/script.js +0 -63
  473. package/dist/src/yaml/steps/spec-validation.test.d.ts +0 -6
  474. package/dist/src/yaml/steps/spec-validation.test.d.ts.map +0 -1
  475. package/dist/src/yaml/steps/spec-validation.test.js +0 -130
  476. package/dist/src/yaml/steps/steps.test.d.ts +0 -6
  477. package/dist/src/yaml/steps/steps.test.d.ts.map +0 -1
  478. package/dist/src/yaml/steps/steps.test.js +0 -881
  479. package/dist/src/yaml/steps/structural-facts.d.ts +0 -992
  480. package/dist/src/yaml/steps/structural-facts.d.ts.map +0 -1
  481. package/dist/src/yaml/steps/structural-facts.js +0 -3276
  482. package/dist/src/yaml/steps/structural-facts.test.d.ts +0 -12
  483. package/dist/src/yaml/steps/structural-facts.test.d.ts.map +0 -1
  484. package/dist/src/yaml/steps/structural-facts.test.js +0 -3039
  485. package/dist/src/yaml/steps/test-config.d.ts +0 -5
  486. package/dist/src/yaml/steps/test-config.d.ts.map +0 -1
  487. package/dist/src/yaml/steps/test-config.js +0 -25
  488. package/dist/src/yaml/steps/trim-align-corpus.test.d.ts +0 -28
  489. package/dist/src/yaml/steps/trim-align-corpus.test.d.ts.map +0 -1
  490. package/dist/src/yaml/steps/trim-align-corpus.test.js +0 -383
  491. package/dist/src/yaml/steps/trim-align.d.ts +0 -87
  492. package/dist/src/yaml/steps/trim-align.d.ts.map +0 -1
  493. package/dist/src/yaml/steps/trim-align.js +0 -367
  494. package/dist/src/yaml/steps/trim-align.test.d.ts +0 -11
  495. package/dist/src/yaml/steps/trim-align.test.d.ts.map +0 -1
  496. package/dist/src/yaml/steps/trim-align.test.js +0 -261
  497. package/dist/src/yaml/steps/ui-fidelity-preview-android.d.ts +0 -66
  498. package/dist/src/yaml/steps/ui-fidelity-preview-android.d.ts.map +0 -1
  499. package/dist/src/yaml/steps/ui-fidelity-preview-android.js +0 -251
  500. package/dist/src/yaml/steps/ui-fidelity-preview-android.test.d.ts +0 -13
  501. package/dist/src/yaml/steps/ui-fidelity-preview-android.test.d.ts.map +0 -1
  502. package/dist/src/yaml/steps/ui-fidelity-preview-android.test.js +0 -302
  503. package/dist/src/yaml/steps/ui-fidelity-preview.d.ts +0 -134
  504. package/dist/src/yaml/steps/ui-fidelity-preview.d.ts.map +0 -1
  505. package/dist/src/yaml/steps/ui-fidelity-preview.js +0 -173
  506. package/dist/src/yaml/steps/ui-fidelity-preview.test.d.ts +0 -11
  507. package/dist/src/yaml/steps/ui-fidelity-preview.test.d.ts.map +0 -1
  508. package/dist/src/yaml/steps/ui-fidelity-preview.test.js +0 -210
  509. package/dist/src/yaml/steps/ui-fidelity-render-android.d.ts +0 -155
  510. package/dist/src/yaml/steps/ui-fidelity-render-android.d.ts.map +0 -1
  511. package/dist/src/yaml/steps/ui-fidelity-render-android.js +0 -1389
  512. package/dist/src/yaml/steps/ui-fidelity-render-android.test.d.ts +0 -2
  513. package/dist/src/yaml/steps/ui-fidelity-render-android.test.d.ts.map +0 -1
  514. package/dist/src/yaml/steps/ui-fidelity-render-android.test.js +0 -1106
  515. package/dist/src/yaml/steps/ui-fidelity-render.d.ts +0 -230
  516. package/dist/src/yaml/steps/ui-fidelity-render.d.ts.map +0 -1
  517. package/dist/src/yaml/steps/ui-fidelity-render.js +0 -1597
  518. package/dist/src/yaml/steps/ui-fidelity-render.test.d.ts +0 -18
  519. package/dist/src/yaml/steps/ui-fidelity-render.test.d.ts.map +0 -1
  520. package/dist/src/yaml/steps/ui-fidelity-render.test.js +0 -1871
  521. package/dist/src/yaml/steps/xcode-app-product.d.ts +0 -90
  522. package/dist/src/yaml/steps/xcode-app-product.d.ts.map +0 -1
  523. package/dist/src/yaml/steps/xcode-app-product.js +0 -247
  524. package/dist/src/yaml/steps/xcode-app-product.test.d.ts +0 -2
  525. package/dist/src/yaml/steps/xcode-app-product.test.d.ts.map +0 -1
  526. package/dist/src/yaml/steps/xcode-app-product.test.js +0 -202
  527. package/dist/src/yaml/steps/xcode-derived-data.test.d.ts +0 -30
  528. package/dist/src/yaml/steps/xcode-derived-data.test.d.ts.map +0 -1
  529. package/dist/src/yaml/steps/xcode-derived-data.test.js +0 -279
  530. package/dist/src/yaml/steps/xcode-destination.d.ts +0 -47
  531. package/dist/src/yaml/steps/xcode-destination.d.ts.map +0 -1
  532. package/dist/src/yaml/steps/xcode-destination.js +0 -202
  533. package/dist/src/yaml/steps/xcode-destination.test.d.ts +0 -9
  534. package/dist/src/yaml/steps/xcode-destination.test.d.ts.map +0 -1
  535. package/dist/src/yaml/steps/xcode-destination.test.js +0 -227
  536. package/dist/src/yaml/steps/xcode-new.test.d.ts +0 -5
  537. package/dist/src/yaml/steps/xcode-new.test.d.ts.map +0 -1
  538. package/dist/src/yaml/steps/xcode-new.test.js +0 -211
  539. package/dist/src/yaml/steps/xcode-resolve-retry.test.d.ts +0 -9
  540. package/dist/src/yaml/steps/xcode-resolve-retry.test.d.ts.map +0 -1
  541. package/dist/src/yaml/steps/xcode-resolve-retry.test.js +0 -146
  542. package/dist/src/yaml/steps/xcode-simulator-archs.d.ts +0 -53
  543. package/dist/src/yaml/steps/xcode-simulator-archs.d.ts.map +0 -1
  544. package/dist/src/yaml/steps/xcode-simulator-archs.js +0 -98
  545. package/dist/src/yaml/steps/xcode-simulator-archs.test.d.ts +0 -21
  546. package/dist/src/yaml/steps/xcode-simulator-archs.test.d.ts.map +0 -1
  547. package/dist/src/yaml/steps/xcode-simulator-archs.test.js +0 -155
  548. package/dist/src/yaml/steps/xcode.d.ts +0 -230
  549. package/dist/src/yaml/steps/xcode.d.ts.map +0 -1
  550. package/dist/src/yaml/steps/xcode.js +0 -1350
  551. package/dist/src/yaml/types.d.ts +0 -76
  552. package/dist/src/yaml/types.d.ts.map +0 -1
  553. package/dist/src/yaml/types.js +0 -5
  554. package/dist/src/yaml/validation-types.d.ts +0 -102
  555. package/dist/src/yaml/validation-types.d.ts.map +0 -1
  556. package/dist/src/yaml/validation-types.js +0 -8
  557. package/dist/src/yaml/yaml-updater.d.ts +0 -24
  558. package/dist/src/yaml/yaml-updater.d.ts.map +0 -1
  559. package/dist/src/yaml/yaml-updater.js +0 -128
@@ -1,5 +0,0 @@
1
- /**
2
- * Unit tests for Bitrise slack step
3
- */
4
- export {};
5
- //# sourceMappingURL=bitrise-slack.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bitrise-slack.test.d.ts","sourceRoot":"","sources":["../../../../src/yaml/steps/bitrise-slack.test.ts"],"names":[],"mappings":"AAAA;;GAEG"}
@@ -1,484 +0,0 @@
1
- /**
2
- * Unit tests for Bitrise slack step
3
- */
4
- import { describe, test, expect } from '@jest/globals';
5
- import { BitriseSlackStepExecutor } from './bitrise-slack.js';
6
- describe('BitriseSlackStepExecutor', () => {
7
- const mockConfig = {
8
- artifactsDir: '/ci/artifacts',
9
- interpreters: {
10
- python: '/usr/bin/python3',
11
- ruby: '/usr/bin/ruby',
12
- node: '/usr/bin/node',
13
- bash: '/bin/bash',
14
- },
15
- maxConcurrentJobs: 4,
16
- paths: {
17
- buildsDir: '/ci/builds',
18
- cacheDir: '/ci/cache',
19
- derivedDataDir: '/ci/derived_data',
20
- },
21
- };
22
- describe('Basic functionality', () => {
23
- test('should create Slack notification script with minimal inputs', async () => {
24
- const executor = new BitriseSlackStepExecutor();
25
- const env = {};
26
- const inputs = {
27
- webhook_url: 'https://hooks.slack.com/services/TEST/WEBHOOK/URL',
28
- text: 'Build completed!',
29
- };
30
- const result = await executor.execute(inputs, env, mockConfig);
31
- expect(result.kind).toBe('script');
32
- expect(result.name).toBe('slack');
33
- expect(result.script).toContain('Sending Slack notification');
34
- expect(result.script).toContain('https://hooks.slack.com/services/TEST/WEBHOOK/URL');
35
- expect(result.script).toContain('Build completed!');
36
- });
37
- test('should use text input for message content', async () => {
38
- const executor = new BitriseSlackStepExecutor();
39
- const env = {};
40
- const inputs = {
41
- webhook_url: 'https://hooks.slack.com/test',
42
- text: 'Test message',
43
- };
44
- const result = await executor.execute(inputs, env, mockConfig);
45
- expect(result.script).toContain('Test message');
46
- });
47
- test('should fall back to message input if text not provided', async () => {
48
- const executor = new BitriseSlackStepExecutor();
49
- const env = {};
50
- const inputs = {
51
- webhook_url: 'https://hooks.slack.com/test',
52
- message: 'Fallback message',
53
- };
54
- const result = await executor.execute(inputs, env, mockConfig);
55
- expect(result.script).toContain('Fallback message');
56
- });
57
- test('should use default message if neither text nor message provided', async () => {
58
- const executor = new BitriseSlackStepExecutor();
59
- const env = {};
60
- const inputs = {
61
- webhook_url: 'https://hooks.slack.com/test',
62
- };
63
- const result = await executor.execute(inputs, env, mockConfig);
64
- expect(result.script).toContain('CI Build build notification');
65
- });
66
- });
67
- describe('Webhook URL handling', () => {
68
- test('should use webhook_url from inputs', async () => {
69
- const executor = new BitriseSlackStepExecutor();
70
- const env = {};
71
- const inputs = {
72
- webhook_url: 'https://hooks.slack.com/services/CUSTOM',
73
- text: 'Test',
74
- };
75
- const result = await executor.execute(inputs, env, mockConfig);
76
- expect(result.script).toContain('https://hooks.slack.com/services/CUSTOM');
77
- });
78
- test('should fall back to SLACK_WEBHOOK_URL environment variable', async () => {
79
- const executor = new BitriseSlackStepExecutor();
80
- const env = {
81
- SLACK_WEBHOOK_URL: 'https://hooks.slack.com/services/FROM_ENV',
82
- };
83
- const inputs = {
84
- text: 'Test',
85
- };
86
- const result = await executor.execute(inputs, env, mockConfig);
87
- expect(result.script).toContain('https://hooks.slack.com/services/FROM_ENV');
88
- });
89
- test('should prefer input over environment variable', async () => {
90
- const executor = new BitriseSlackStepExecutor();
91
- const env = {
92
- SLACK_WEBHOOK_URL: 'https://hooks.slack.com/env',
93
- };
94
- const inputs = {
95
- webhook_url: 'https://hooks.slack.com/input',
96
- text: 'Test',
97
- };
98
- const result = await executor.execute(inputs, env, mockConfig);
99
- expect(result.script).toContain('https://hooks.slack.com/input');
100
- expect(result.script).not.toContain('https://hooks.slack.com/env');
101
- });
102
- });
103
- describe('Message formatting', () => {
104
- test('should include channel when provided', async () => {
105
- const executor = new BitriseSlackStepExecutor();
106
- const env = {};
107
- const inputs = {
108
- webhook_url: 'https://hooks.slack.com/test',
109
- text: 'Test',
110
- channel: '#builds',
111
- };
112
- const result = await executor.execute(inputs, env, mockConfig);
113
- expect(result.script).toContain('"channel": "#builds"');
114
- });
115
- test('should include custom username', async () => {
116
- const executor = new BitriseSlackStepExecutor();
117
- const env = {};
118
- const inputs = {
119
- webhook_url: 'https://hooks.slack.com/test',
120
- text: 'Test',
121
- from_username: 'Build Bot',
122
- };
123
- const result = await executor.execute(inputs, env, mockConfig);
124
- expect(result.script).toContain('"username": "Build Bot"');
125
- });
126
- test('should use default username CI Build', async () => {
127
- const executor = new BitriseSlackStepExecutor();
128
- const env = {};
129
- const inputs = {
130
- webhook_url: 'https://hooks.slack.com/test',
131
- text: 'Test',
132
- };
133
- const result = await executor.execute(inputs, env, mockConfig);
134
- expect(result.script).toContain('"username": "CI Build"');
135
- });
136
- test('should include icon_emoji when provided', async () => {
137
- const executor = new BitriseSlackStepExecutor();
138
- const env = {};
139
- const inputs = {
140
- webhook_url: 'https://hooks.slack.com/test',
141
- text: 'Test',
142
- icon_emoji: ':robot_face:',
143
- };
144
- const result = await executor.execute(inputs, env, mockConfig);
145
- expect(result.script).toContain('"icon_emoji": ":robot_face:"');
146
- });
147
- test('should include icon_url when provided', async () => {
148
- const executor = new BitriseSlackStepExecutor();
149
- const env = {};
150
- const inputs = {
151
- webhook_url: 'https://hooks.slack.com/test',
152
- text: 'Test',
153
- icon_url: 'https://example.com/icon.png',
154
- };
155
- const result = await executor.execute(inputs, env, mockConfig);
156
- expect(result.script).toContain('"icon_url": "https://example.com/icon.png"');
157
- });
158
- test('should include color attachment', async () => {
159
- const executor = new BitriseSlackStepExecutor();
160
- const env = {};
161
- const inputs = {
162
- webhook_url: 'https://hooks.slack.com/test',
163
- text: 'Test',
164
- color: 'danger',
165
- };
166
- const result = await executor.execute(inputs, env, mockConfig);
167
- expect(result.script).toContain('"color": "danger"');
168
- });
169
- test('should use default color good', async () => {
170
- const executor = new BitriseSlackStepExecutor();
171
- const env = {};
172
- const inputs = {
173
- webhook_url: 'https://hooks.slack.com/test',
174
- text: 'Test',
175
- };
176
- const result = await executor.execute(inputs, env, mockConfig);
177
- expect(result.script).toContain('"color": "good"');
178
- });
179
- });
180
- describe('Advanced formatting', () => {
181
- test('should include pretext when provided', async () => {
182
- const executor = new BitriseSlackStepExecutor();
183
- const env = {};
184
- const inputs = {
185
- webhook_url: 'https://hooks.slack.com/test',
186
- text: 'Test',
187
- pretext: 'Build notification:',
188
- };
189
- const result = await executor.execute(inputs, env, mockConfig);
190
- expect(result.script).toContain('"pretext": "Build notification:"');
191
- });
192
- test('should include author_name when provided', async () => {
193
- const executor = new BitriseSlackStepExecutor();
194
- const env = {};
195
- const inputs = {
196
- webhook_url: 'https://hooks.slack.com/test',
197
- text: 'Test',
198
- author_name: 'John Doe',
199
- };
200
- const result = await executor.execute(inputs, env, mockConfig);
201
- expect(result.script).toContain('"author_name": "John Doe"');
202
- });
203
- test('should include title and title_link', async () => {
204
- const executor = new BitriseSlackStepExecutor();
205
- const env = {};
206
- const inputs = {
207
- webhook_url: 'https://hooks.slack.com/test',
208
- text: 'Test',
209
- title: 'Build #42',
210
- title_link: 'https://ci.example.com/builds/42',
211
- };
212
- const result = await executor.execute(inputs, env, mockConfig);
213
- expect(result.script).toContain('"title": "Build #42"');
214
- expect(result.script).toContain('"title_link": "https://ci.example.com/builds/42"');
215
- });
216
- test('should include footer when provided', async () => {
217
- const executor = new BitriseSlackStepExecutor();
218
- const env = {};
219
- const inputs = {
220
- webhook_url: 'https://hooks.slack.com/test',
221
- text: 'Test',
222
- footer: 'CI Build',
223
- footer_icon: 'https://example.com/footer.png',
224
- };
225
- const result = await executor.execute(inputs, env, mockConfig);
226
- expect(result.script).toContain('"footer": "CI Build"');
227
- expect(result.script).toContain('"footer_icon": "https://example.com/footer.png"');
228
- });
229
- test('should include timestamp when provided', async () => {
230
- const executor = new BitriseSlackStepExecutor();
231
- const env = {};
232
- const inputs = {
233
- webhook_url: 'https://hooks.slack.com/test',
234
- text: 'Test',
235
- timestamp: '1234567890',
236
- };
237
- const result = await executor.execute(inputs, env, mockConfig);
238
- expect(result.script).toContain('"ts": 1234567890');
239
- });
240
- test('should include fields when provided', async () => {
241
- const executor = new BitriseSlackStepExecutor();
242
- const env = {};
243
- const inputs = {
244
- webhook_url: 'https://hooks.slack.com/test',
245
- text: 'Test',
246
- fields: '[{"title":"Status","value":"Success","short":true}]',
247
- };
248
- const result = await executor.execute(inputs, env, mockConfig);
249
- expect(result.script).toContain('"fields": [{"title":"Status","value":"Success","short":true}]');
250
- });
251
- test('should include buttons when provided', async () => {
252
- const executor = new BitriseSlackStepExecutor();
253
- const env = {};
254
- const inputs = {
255
- webhook_url: 'https://hooks.slack.com/test',
256
- text: 'Test',
257
- buttons: 'View Build|https://example.com',
258
- };
259
- const result = await executor.execute(inputs, env, mockConfig);
260
- // Buttons are now base64-encoded and processed as inline links, not JSON actions
261
- expect(result.script).toContain('BUTTONS_DATA=$(echo "');
262
- expect(result.script).toContain('base64 -d)');
263
- expect(result.script).toContain('BUTTON_LINKS');
264
- });
265
- });
266
- describe('JSON payload generation', () => {
267
- test('should generate valid JSON structure', async () => {
268
- const executor = new BitriseSlackStepExecutor();
269
- const env = {};
270
- const inputs = {
271
- webhook_url: 'https://hooks.slack.com/test',
272
- text: 'Test message',
273
- };
274
- const result = await executor.execute(inputs, env, mockConfig);
275
- expect(result.script).toContain('cat > /tmp/slack-payload.json');
276
- expect(result.script).toContain('"attachments": [');
277
- expect(result.script).toContain('"text": "$SLACK_MESSAGE_TEXT"');
278
- });
279
- test('should use curl POST request', async () => {
280
- const executor = new BitriseSlackStepExecutor();
281
- const env = {};
282
- const inputs = {
283
- webhook_url: 'https://hooks.slack.com/test',
284
- text: 'Test',
285
- };
286
- const result = await executor.execute(inputs, env, mockConfig);
287
- expect(result.script).toContain('curl -X POST');
288
- expect(result.script).toContain('-H "Content-Type: application/json"');
289
- expect(result.script).toContain('-d @/tmp/slack-payload.json');
290
- });
291
- test('should clean up temporary file', async () => {
292
- const executor = new BitriseSlackStepExecutor();
293
- const env = {};
294
- const inputs = {
295
- webhook_url: 'https://hooks.slack.com/test',
296
- text: 'Test',
297
- };
298
- const result = await executor.execute(inputs, env, mockConfig);
299
- expect(result.script).toContain('rm -f /tmp/slack-payload.json');
300
- });
301
- });
302
- describe('Debug mode', () => {
303
- test('should not display payload by default', async () => {
304
- const executor = new BitriseSlackStepExecutor();
305
- const env = {};
306
- const inputs = {
307
- webhook_url: 'https://hooks.slack.com/test',
308
- text: 'Test',
309
- };
310
- const result = await executor.execute(inputs, env, mockConfig);
311
- expect(result.script).not.toContain('Debug: Display payload');
312
- });
313
- test('should display payload when is_debug_mode is true', async () => {
314
- const executor = new BitriseSlackStepExecutor();
315
- const env = {};
316
- const inputs = {
317
- webhook_url: 'https://hooks.slack.com/test',
318
- text: 'Test',
319
- is_debug_mode: 'true',
320
- };
321
- const result = await executor.execute(inputs, env, mockConfig);
322
- expect(result.script).toContain('Debug: Display payload');
323
- expect(result.script).toContain('cat /tmp/slack-payload.json');
324
- });
325
- test('should display payload when is_debug_mode is yes', async () => {
326
- const executor = new BitriseSlackStepExecutor();
327
- const env = {};
328
- const inputs = {
329
- webhook_url: 'https://hooks.slack.com/test',
330
- text: 'Test',
331
- is_debug_mode: 'yes',
332
- };
333
- const result = await executor.execute(inputs, env, mockConfig);
334
- expect(result.script).toContain('Debug: Display payload');
335
- });
336
- });
337
- describe('Error handling', () => {
338
- test('should throw error when webhook_url is missing', async () => {
339
- const executor = new BitriseSlackStepExecutor();
340
- const env = {};
341
- const inputs = {
342
- text: 'Test',
343
- };
344
- await expect(executor.execute(inputs, env, mockConfig)).rejects.toThrow(/Missing environment variable: 'SLACK_WEBHOOK_URL'/);
345
- });
346
- test('should include helpful error message for missing webhook', async () => {
347
- const executor = new BitriseSlackStepExecutor();
348
- const env = {};
349
- const inputs = {};
350
- await expect(executor.execute(inputs, env, mockConfig)).rejects.toThrow(/Missing environment variable: 'SLACK_WEBHOOK_URL'[\s\S]*Slack webhook URL/);
351
- });
352
- test('should check curl exit status', async () => {
353
- const executor = new BitriseSlackStepExecutor();
354
- const env = {};
355
- const inputs = {
356
- webhook_url: 'https://hooks.slack.com/test',
357
- text: 'Test',
358
- };
359
- const result = await executor.execute(inputs, env, mockConfig);
360
- expect(result.script).toContain('if [ "$HTTP_CODE" = "200" ] || [ "$RESPONSE_BODY" = "ok" ]; then');
361
- expect(result.script).toContain('Slack notification sent successfully');
362
- expect(result.script).toContain('Failed to send Slack notification');
363
- });
364
- });
365
- describe('Special characters handling', () => {
366
- test('should escape quotes in message text', async () => {
367
- const executor = new BitriseSlackStepExecutor();
368
- const env = {};
369
- const inputs = {
370
- webhook_url: 'https://hooks.slack.com/test',
371
- text: 'Build "success" message',
372
- };
373
- const result = await executor.execute(inputs, env, mockConfig);
374
- expect(result.script).toContain('Build \\"success\\" message');
375
- });
376
- test('should escape newlines in message text', async () => {
377
- const executor = new BitriseSlackStepExecutor();
378
- const env = {};
379
- const inputs = {
380
- webhook_url: 'https://hooks.slack.com/test',
381
- text: 'Line 1\nLine 2',
382
- };
383
- const result = await executor.execute(inputs, env, mockConfig);
384
- expect(result.script).toContain('Line 1\\nLine 2');
385
- });
386
- test('should escape backslashes in message text', async () => {
387
- const executor = new BitriseSlackStepExecutor();
388
- const env = {};
389
- const inputs = {
390
- webhook_url: 'https://hooks.slack.com/test',
391
- text: 'Path: C:\\Windows\\System32',
392
- };
393
- const result = await executor.execute(inputs, env, mockConfig);
394
- expect(result.script).toContain('C:\\\\Windows\\\\System32');
395
- });
396
- });
397
- describe('Script structure', () => {
398
- test('should include bash error handling directives', async () => {
399
- const executor = new BitriseSlackStepExecutor();
400
- const env = {};
401
- const inputs = {
402
- webhook_url: 'https://hooks.slack.com/test',
403
- text: 'Test',
404
- };
405
- const result = await executor.execute(inputs, env, mockConfig);
406
- expect(result.script).toContain('#!/bin/bash');
407
- expect(result.script).toContain('set -e');
408
- expect(result.script).toContain('set -o pipefail');
409
- });
410
- test('should include informative messages', async () => {
411
- const executor = new BitriseSlackStepExecutor();
412
- const env = {};
413
- const inputs = {
414
- webhook_url: 'https://hooks.slack.com/test',
415
- text: 'Test',
416
- };
417
- const result = await executor.execute(inputs, env, mockConfig);
418
- expect(result.script).toContain('Bitrise slack step → CI Build Slack notification');
419
- expect(result.script).toContain('Sending Slack notification');
420
- });
421
- });
422
- describe('Integration scenarios', () => {
423
- test('should work with all formatting options combined', async () => {
424
- const executor = new BitriseSlackStepExecutor();
425
- const env = {};
426
- const inputs = {
427
- webhook_url: 'https://hooks.slack.com/test',
428
- text: 'Build completed',
429
- channel: '#deployments',
430
- from_username: 'Deploy Bot',
431
- icon_emoji: ':rocket:',
432
- color: 'good',
433
- pretext: 'Deployment notification',
434
- author_name: 'CI Build',
435
- title: 'Production Deploy',
436
- title_link: 'https://example.com/deploy',
437
- footer: 'CI Build',
438
- timestamp: '1234567890',
439
- };
440
- const result = await executor.execute(inputs, env, mockConfig);
441
- expect(result.kind).toBe('script');
442
- expect(result.script).toContain('#deployments');
443
- expect(result.script).toContain('Deploy Bot');
444
- expect(result.script).toContain(':rocket:');
445
- expect(result.script).toContain('Production Deploy');
446
- });
447
- test('should work with minimal configuration', async () => {
448
- const executor = new BitriseSlackStepExecutor();
449
- const env = {
450
- SLACK_WEBHOOK_URL: 'https://hooks.slack.com/minimal',
451
- };
452
- const inputs = {};
453
- const result = await executor.execute(inputs, env, mockConfig);
454
- expect(result.kind).toBe('script');
455
- expect(result.script).toContain('CI Build build notification');
456
- });
457
- });
458
- describe('Bitrise compatibility', () => {
459
- test('should support Bitrise input naming conventions', async () => {
460
- const executor = new BitriseSlackStepExecutor();
461
- const env = {};
462
- const inputs = {
463
- webhook_url: 'https://hooks.slack.com/test',
464
- text: 'Build message',
465
- from_username: 'Bitrise',
466
- icon_emoji: ':bitrise:',
467
- };
468
- const result = await executor.execute(inputs, env, mockConfig);
469
- expect(result.script).toBeDefined();
470
- expect(result.kind).toBe('script');
471
- });
472
- test('should map to CI Build Slack notification pattern', async () => {
473
- const executor = new BitriseSlackStepExecutor();
474
- const env = {};
475
- const inputs = {
476
- webhook_url: 'https://hooks.slack.com/test',
477
- text: 'Test',
478
- };
479
- const result = await executor.execute(inputs, env, mockConfig);
480
- expect(result.script).toContain('CI Build Slack notification');
481
- });
482
- });
483
- });
484
- //# sourceMappingURL=bitrise-slack.test.js.map
@@ -1,27 +0,0 @@
1
- /**
2
- * Bitrise activate-ssh-key step implementation
3
- * Maps Bitrise activate-ssh-key@* to CI Build SSH key activation
4
- */
5
- import { BaseStepExecutor } from './base.js';
6
- import type { StepDef, CIConfig } from '../../types.js';
7
- import type { ValidationRequirement } from '../validation-types.js';
8
- /**
9
- * Inputs for activate-ssh-key step
10
- */
11
- export interface BitriseSSHInputs {
12
- ssh_rsa_private_key?: string;
13
- ssh_key_save_path?: string;
14
- is_remove_other_identities?: string;
15
- }
16
- /**
17
- * Bitrise activate-ssh-key step executor (FR-2)
18
- * Activates an SSH key for Git operations
19
- *
20
- * Supports Bitrise step versions: activate-ssh-key@1, @2, @3, @4
21
- */
22
- export declare class BitriseSSHStepExecutor extends BaseStepExecutor {
23
- isSkippedInLocalMode(): boolean;
24
- getValidationRequirements(_inputs: BitriseSSHInputs, env: Record<string, string>, config: CIConfig): ValidationRequirement[];
25
- execute(inputs: BitriseSSHInputs, env: Record<string, string>, config: CIConfig): Promise<StepDef>;
26
- }
27
- //# sourceMappingURL=bitrise-ssh.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bitrise-ssh.d.ts","sourceRoot":"","sources":["../../../../src/yaml/steps/bitrise-ssh.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAExD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAEpE;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,0BAA0B,CAAC,EAAE,MAAM,CAAC;CACrC;AAED;;;;;GAKG;AACH,qBAAa,sBAAuB,SAAQ,gBAAgB;IAC1D,oBAAoB,IAAI,OAAO;IAI/B,yBAAyB,CACvB,OAAO,EAAE,gBAAgB,EACzB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC3B,MAAM,EAAE,QAAQ,GACf,qBAAqB,EAAE;IAsBpB,OAAO,CAAC,MAAM,EAAE,gBAAgB,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;CAmIzG"}
@@ -1,134 +0,0 @@
1
- /**
2
- * Bitrise activate-ssh-key step implementation
3
- * Maps Bitrise activate-ssh-key@* to CI Build SSH key activation
4
- */
5
- import { BaseStepExecutor } from './base.js';
6
- import { MissingEnvironmentVariableError } from '../env-resolver.js';
7
- /**
8
- * Bitrise activate-ssh-key step executor (FR-2)
9
- * Activates an SSH key for Git operations
10
- *
11
- * Supports Bitrise step versions: activate-ssh-key@1, @2, @3, @4
12
- */
13
- export class BitriseSSHStepExecutor extends BaseStepExecutor {
14
- isSkippedInLocalMode() {
15
- return true;
16
- }
17
- getValidationRequirements(_inputs, env, config) {
18
- if (config.local)
19
- return [];
20
- return [
21
- this.requireEnvVar('SSH_RSA_PRIVATE_KEY', 'SSH private key for git authentication', env, 'Set SSH_RSA_PRIVATE_KEY environment variable with your private key'),
22
- this.requireCommand('ssh-agent', 'SSH agent for managing SSH keys', 'ssh-agent should be pre-installed on macOS and Linux'),
23
- this.requireCommand('ssh-add', 'SSH key management tool', 'ssh-add should be pre-installed on macOS and Linux'),
24
- ];
25
- }
26
- async execute(inputs, env, config) {
27
- const stepName = 'activate-ssh-key';
28
- if (config.local) {
29
- const script = this.createBashScriptFromCommands(['echo "⏭️ activate-ssh-key: skipped in local mode"'], stepName);
30
- return this.createScriptStep(script, stepName);
31
- }
32
- // Get SSH key from environment variable (FR-2.3)
33
- const sshKeyEnvVar = 'SSH_RSA_PRIVATE_KEY';
34
- // Check if SSH key is available
35
- if (!env[sshKeyEnvVar]) {
36
- throw new MissingEnvironmentVariableError(sshKeyEnvVar, stepName, 'SSH private key used for Git authentication and repository access.\n\n' +
37
- 'Expected format (PEM):\n' +
38
- ' ┌────────────────────────────────────────┐\n' +
39
- ' │ -----BEGIN RSA PRIVATE KEY----- │\n' +
40
- ' │ MIIEpAIBAAKCAQEA... │\n' +
41
- ' │ -----END RSA PRIVATE KEY----- │\n' +
42
- ' └────────────────────────────────────────┘\n\n' +
43
- 'Or OpenSSH format:\n' +
44
- ' ┌────────────────────────────────────────┐\n' +
45
- ' │ -----BEGIN OPENSSH PRIVATE KEY----- │\n' +
46
- ' │ b3BlbnNzaC1rZXktdjEAAAAA... │\n' +
47
- ' │ -----END OPENSSH PRIVATE KEY----- │\n' +
48
- ' └────────────────────────────────────────┘\n\n' +
49
- 'How to generate:\n' +
50
- ' • ssh-keygen -t rsa -b 4096 -C "ci@example.com"\n' +
51
- ' • Add public key to GitHub/GitLab deploy keys\n' +
52
- ' • Store private key in CI secrets');
53
- }
54
- // Get SSH key save path (FR-2.4)
55
- // Use YAML filename in key path to avoid conflicts between different pipeline files
56
- const yamlFilename = env['CIBUILD_YAML_FILENAME'] || env['CIBUILD_TRIGGERED_WORKFLOW_ID'] || 'default';
57
- const defaultKeyPath = `~/.ssh/${yamlFilename}.pem`;
58
- const sshKeyPath = this.getInput(inputs, 'ssh_key_save_path', defaultKeyPath);
59
- // Get remove other identities flag
60
- const removeOtherIdentities = this.getInput(inputs, 'is_remove_other_identities', 'true');
61
- // Get the actual SSH key value to embed in the script
62
- const sshKeyValue = env[sshKeyEnvVar];
63
- const commands = [];
64
- commands.push('# Bitrise activate-ssh-key step → CI Build SSH activation');
65
- commands.push('echo "📋 Setting up SSH key for Git operations..."');
66
- commands.push('');
67
- // Create .ssh directory if it doesn't exist
68
- commands.push('# Create .ssh directory with proper permissions');
69
- commands.push('mkdir -p ~/.ssh');
70
- commands.push('chmod 700 ~/.ssh');
71
- commands.push('');
72
- // Write SSH key to file using node to handle newlines properly
73
- // Export the key using heredoc to preserve special characters
74
- commands.push('# Export SSH key from YAML config');
75
- commands.push(`export ${sshKeyEnvVar}=$(cat <<'SSHKEY_EOF'`);
76
- commands.push(sshKeyValue);
77
- commands.push('SSHKEY_EOF');
78
- commands.push(')');
79
- commands.push('');
80
- // Write SSH private key to file
81
- // Use tr to convert \r to \n, then printf %b to interpret escape sequences
82
- const keyFileName = sshKeyPath.replace('~/.ssh/', '');
83
- commands.push('# Write SSH private key to file');
84
- commands.push(`echo "Writing SSH key to ${sshKeyPath}"`);
85
- commands.push(`echo "\${${sshKeyEnvVar}}" | tr '\\r' '\\n' > ~/.ssh/${keyFileName}`);
86
- commands.push(`chmod 600 ${sshKeyPath}`);
87
- commands.push('');
88
- // Remove other SSH identities if requested
89
- if (removeOtherIdentities === 'true' || removeOtherIdentities === 'yes') {
90
- commands.push('# Remove other SSH identities from agent');
91
- commands.push('ssh-add -D 2>/dev/null || true');
92
- commands.push('');
93
- }
94
- // Start SSH agent and add key (FR-2.5)
95
- commands.push('# Start SSH agent and add key');
96
- commands.push('eval "$(ssh-agent -s)"');
97
- commands.push(`ssh-add ${sshKeyPath}`);
98
- commands.push('');
99
- // Configure SSH to use the key file and avoid host key verification issues
100
- // This ensures the key is used in subsequent steps without needing ssh-agent
101
- commands.push('# Configure SSH client to use the key file');
102
- commands.push('cat >> ~/.ssh/config << EOF');
103
- commands.push('Host github.com');
104
- commands.push(` IdentityFile ${sshKeyPath}`);
105
- commands.push(' StrictHostKeyChecking no');
106
- commands.push(' UserKnownHostsFile=/dev/null');
107
- commands.push(' LogLevel ERROR');
108
- commands.push('');
109
- commands.push('Host gitlab.com');
110
- commands.push(` IdentityFile ${sshKeyPath}`);
111
- commands.push(' StrictHostKeyChecking no');
112
- commands.push(' UserKnownHostsFile=/dev/null');
113
- commands.push(' LogLevel ERROR');
114
- commands.push('');
115
- commands.push('Host bitbucket.org');
116
- commands.push(` IdentityFile ${sshKeyPath}`);
117
- commands.push(' StrictHostKeyChecking no');
118
- commands.push(' UserKnownHostsFile=/dev/null');
119
- commands.push(' LogLevel ERROR');
120
- commands.push('');
121
- commands.push('Host *');
122
- commands.push(` IdentityFile ${sshKeyPath}`);
123
- commands.push(' StrictHostKeyChecking no');
124
- commands.push(' UserKnownHostsFile=/dev/null');
125
- commands.push(' LogLevel ERROR');
126
- commands.push('EOF');
127
- commands.push('chmod 600 ~/.ssh/config');
128
- commands.push('');
129
- commands.push('echo "✅ SSH key activated successfully"');
130
- const script = this.createBashScriptFromCommands(commands, stepName);
131
- return this.createScriptStep(script, stepName);
132
- }
133
- }
134
- //# sourceMappingURL=bitrise-ssh.js.map
@@ -1,5 +0,0 @@
1
- /**
2
- * Unit tests for Bitrise activate-ssh-key step
3
- */
4
- export {};
5
- //# sourceMappingURL=bitrise-ssh.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bitrise-ssh.test.d.ts","sourceRoot":"","sources":["../../../../src/yaml/steps/bitrise-ssh.test.ts"],"names":[],"mappings":"AAAA;;GAEG"}