@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.
- package/dist/chunk-35SI42CD.mjs +1 -0
- package/dist/chunk-IC45KVLJ.mjs +1 -0
- package/dist/chunk-XDY4V23V.mjs +1 -0
- package/dist/cli.cjs +14 -14
- package/dist/commands.mjs +1 -0
- package/dist/lib.mjs +3934 -0
- package/package.json +6 -10
- package/dist/src/cli.d.ts +0 -3
- package/dist/src/cli.d.ts.map +0 -1
- package/dist/src/cli.js +0 -399
- package/dist/src/commands/a-credential-target-follows-the-flavor-source-set.test.d.ts +0 -38
- package/dist/src/commands/a-credential-target-follows-the-flavor-source-set.test.d.ts.map +0 -1
- package/dist/src/commands/a-credential-target-follows-the-flavor-source-set.test.js +0 -222
- package/dist/src/commands/a-credential-two-workflows-cannot-share-is-declared-per-workflow.test.d.ts +0 -41
- package/dist/src/commands/a-credential-two-workflows-cannot-share-is-declared-per-workflow.test.d.ts.map +0 -1
- package/dist/src/commands/a-credential-two-workflows-cannot-share-is-declared-per-workflow.test.js +0 -324
- package/dist/src/commands/a-properties-stand-in-declares-the-keys-the-build-reads.test.d.ts +0 -2
- package/dist/src/commands/a-properties-stand-in-declares-the-keys-the-build-reads.test.d.ts.map +0 -1
- package/dist/src/commands/a-properties-stand-in-declares-the-keys-the-build-reads.test.js +0 -382
- package/dist/src/commands/an-already-stored-value-does-not-answer-the-target-question.test.d.ts +0 -29
- package/dist/src/commands/an-already-stored-value-does-not-answer-the-target-question.test.d.ts.map +0 -1
- package/dist/src/commands/an-already-stored-value-does-not-answer-the-target-question.test.js +0 -160
- package/dist/src/commands/android-gms-guard.test.d.ts +0 -9
- package/dist/src/commands/android-gms-guard.test.d.ts.map +0 -1
- package/dist/src/commands/android-gms-guard.test.js +0 -78
- package/dist/src/commands/android-java-version.test.d.ts +0 -12
- package/dist/src/commands/android-java-version.test.d.ts.map +0 -1
- package/dist/src/commands/android-java-version.test.js +0 -209
- package/dist/src/commands/android-scanner-java.test.d.ts +0 -2
- package/dist/src/commands/android-scanner-java.test.d.ts.map +0 -1
- package/dist/src/commands/android-scanner-java.test.js +0 -130
- package/dist/src/commands/android-scanner.d.ts +0 -250
- package/dist/src/commands/android-scanner.d.ts.map +0 -1
- package/dist/src/commands/android-scanner.js +0 -1639
- package/dist/src/commands/build.d.ts +0 -215
- package/dist/src/commands/build.d.ts.map +0 -1
- package/dist/src/commands/build.js +0 -1433
- package/dist/src/commands/build.test.d.ts +0 -13
- package/dist/src/commands/build.test.d.ts.map +0 -1
- package/dist/src/commands/build.test.js +0 -121
- package/dist/src/commands/detect-platform.d.ts +0 -13
- package/dist/src/commands/detect-platform.d.ts.map +0 -1
- package/dist/src/commands/detect-platform.js +0 -51
- package/dist/src/commands/detect-project.d.ts +0 -7
- package/dist/src/commands/detect-project.d.ts.map +0 -1
- package/dist/src/commands/detect-project.js +0 -12
- package/dist/src/commands/each-flavor-is-asked-for-its-own-properties-file.test.d.ts +0 -26
- package/dist/src/commands/each-flavor-is-asked-for-its-own-properties-file.test.d.ts.map +0 -1
- package/dist/src/commands/each-flavor-is-asked-for-its-own-properties-file.test.js +0 -196
- package/dist/src/commands/edit.d.ts +0 -12
- package/dist/src/commands/edit.d.ts.map +0 -1
- package/dist/src/commands/edit.js +0 -652
- package/dist/src/commands/edit.test.d.ts +0 -6
- package/dist/src/commands/edit.test.d.ts.map +0 -1
- package/dist/src/commands/edit.test.js +0 -45
- package/dist/src/commands/fidelity-trim.d.ts +0 -13
- package/dist/src/commands/fidelity-trim.d.ts.map +0 -1
- package/dist/src/commands/fidelity-trim.js +0 -21
- package/dist/src/commands/fidelity-trim.test.d.ts +0 -8
- package/dist/src/commands/fidelity-trim.test.d.ts.map +0 -1
- package/dist/src/commands/fidelity-trim.test.js +0 -79
- package/dist/src/commands/file-secret-collector.d.ts +0 -50
- package/dist/src/commands/file-secret-collector.d.ts.map +0 -1
- package/dist/src/commands/file-secret-collector.js +0 -217
- package/dist/src/commands/flavors-a-convention-plugin-creates-are-still-found.test.d.ts +0 -38
- package/dist/src/commands/flavors-a-convention-plugin-creates-are-still-found.test.d.ts.map +0 -1
- package/dist/src/commands/flavors-a-convention-plugin-creates-are-still-found.test.js +0 -300
- package/dist/src/commands/github-workflow.d.ts +0 -5
- package/dist/src/commands/github-workflow.d.ts.map +0 -1
- package/dist/src/commands/github-workflow.js +0 -45
- package/dist/src/commands/index.d.ts +0 -33
- package/dist/src/commands/index.d.ts.map +0 -1
- package/dist/src/commands/index.js +0 -33
- package/dist/src/commands/init.d.ts +0 -20
- package/dist/src/commands/init.d.ts.map +0 -1
- package/dist/src/commands/init.js +0 -264
- package/dist/src/commands/ios-scanner.d.ts +0 -104
- package/dist/src/commands/ios-scanner.d.ts.map +0 -1
- package/dist/src/commands/ios-scanner.js +0 -492
- package/dist/src/commands/ios-scheme-ranking.test.d.ts +0 -2
- package/dist/src/commands/ios-scheme-ranking.test.d.ts.map +0 -1
- package/dist/src/commands/ios-scheme-ranking.test.js +0 -264
- package/dist/src/commands/local-properties-reaches-every-workflow.test.d.ts +0 -30
- package/dist/src/commands/local-properties-reaches-every-workflow.test.d.ts.map +0 -1
- package/dist/src/commands/local-properties-reaches-every-workflow.test.js +0 -146
- package/dist/src/commands/reset.d.ts +0 -7
- package/dist/src/commands/reset.d.ts.map +0 -1
- package/dist/src/commands/reset.js +0 -81
- package/dist/src/commands/run.d.ts +0 -22
- package/dist/src/commands/run.d.ts.map +0 -1
- package/dist/src/commands/run.js +0 -141
- package/dist/src/commands/secrets-sync-workflow.d.ts +0 -15
- package/dist/src/commands/secrets-sync-workflow.d.ts.map +0 -1
- package/dist/src/commands/secrets-sync-workflow.js +0 -255
- package/dist/src/commands/secrets-upload.d.ts +0 -21
- package/dist/src/commands/secrets-upload.d.ts.map +0 -1
- package/dist/src/commands/secrets-upload.js +0 -177
- package/dist/src/commands/secrets-upload.test.d.ts +0 -5
- package/dist/src/commands/secrets-upload.test.d.ts.map +0 -1
- package/dist/src/commands/secrets-upload.test.js +0 -60
- package/dist/src/commands/validate.d.ts +0 -10
- package/dist/src/commands/validate.d.ts.map +0 -1
- package/dist/src/commands/validate.js +0 -46
- package/dist/src/config.d.ts +0 -3
- package/dist/src/config.d.ts.map +0 -1
- package/dist/src/config.js +0 -47
- package/dist/src/envman/cli.d.ts +0 -21
- package/dist/src/envman/cli.d.ts.map +0 -1
- package/dist/src/envman/cli.js +0 -240
- package/dist/src/envman/envman.d.ts +0 -83
- package/dist/src/envman/envman.d.ts.map +0 -1
- package/dist/src/envman/envman.js +0 -361
- package/dist/src/envman/envman.test.d.ts +0 -5
- package/dist/src/envman/envman.test.d.ts.map +0 -1
- package/dist/src/envman/envman.test.js +0 -236
- package/dist/src/envman/envstore-round-trip.test.d.ts +0 -27
- package/dist/src/envman/envstore-round-trip.test.d.ts.map +0 -1
- package/dist/src/envman/envstore-round-trip.test.js +0 -130
- package/dist/src/envman/index.d.ts +0 -23
- package/dist/src/envman/index.d.ts.map +0 -1
- package/dist/src/envman/index.js +0 -23
- package/dist/src/envman/shim.d.ts +0 -16
- package/dist/src/envman/shim.d.ts.map +0 -1
- package/dist/src/envman/shim.js +0 -66
- package/dist/src/envman/types.d.ts +0 -55
- package/dist/src/envman/types.d.ts.map +0 -1
- package/dist/src/envman/types.js +0 -12
- package/dist/src/lib.d.ts +0 -33
- package/dist/src/lib.d.ts.map +0 -1
- package/dist/src/lib.js +0 -37
- package/dist/src/pipeline.d.ts +0 -3
- package/dist/src/pipeline.d.ts.map +0 -1
- package/dist/src/pipeline.js +0 -57
- package/dist/src/runner-node-step.test.d.ts +0 -12
- package/dist/src/runner-node-step.test.d.ts.map +0 -1
- package/dist/src/runner-node-step.test.js +0 -61
- package/dist/src/runner.d.ts +0 -31
- package/dist/src/runner.d.ts.map +0 -1
- package/dist/src/runner.js +0 -240
- package/dist/src/shared/detect-project.d.ts +0 -57
- package/dist/src/shared/detect-project.d.ts.map +0 -1
- package/dist/src/shared/detect-project.js +0 -219
- package/dist/src/shared/detect-project.test.d.ts +0 -2
- package/dist/src/shared/detect-project.test.d.ts.map +0 -1
- package/dist/src/shared/detect-project.test.js +0 -161
- package/dist/src/shared/git.d.ts +0 -25
- package/dist/src/shared/git.d.ts.map +0 -1
- package/dist/src/shared/git.js +0 -53
- package/dist/src/shared/git.test.d.ts +0 -9
- package/dist/src/shared/git.test.d.ts.map +0 -1
- package/dist/src/shared/git.test.js +0 -66
- package/dist/src/shared/gitignore.d.ts +0 -6
- package/dist/src/shared/gitignore.d.ts.map +0 -1
- package/dist/src/shared/gitignore.js +0 -26
- package/dist/src/shared/gradle-settings.d.ts +0 -49
- package/dist/src/shared/gradle-settings.d.ts.map +0 -1
- package/dist/src/shared/gradle-settings.js +0 -138
- package/dist/src/shared/gradle-settings.test.d.ts +0 -2
- package/dist/src/shared/gradle-settings.test.d.ts.map +0 -1
- package/dist/src/shared/gradle-settings.test.js +0 -65
- package/dist/src/shared/prompts.d.ts +0 -30
- package/dist/src/shared/prompts.d.ts.map +0 -1
- package/dist/src/shared/prompts.js +0 -121
- package/dist/src/shared/xcode-container.test.d.ts +0 -2
- package/dist/src/shared/xcode-container.test.d.ts.map +0 -1
- package/dist/src/shared/xcode-container.test.js +0 -123
- package/dist/src/step-marker.d.ts +0 -12
- package/dist/src/step-marker.d.ts.map +0 -1
- package/dist/src/step-marker.js +0 -29
- package/dist/src/step-marker.test.d.ts +0 -11
- package/dist/src/step-marker.test.d.ts.map +0 -1
- package/dist/src/step-marker.test.js +0 -45
- package/dist/src/types.d.ts +0 -58
- package/dist/src/types.d.ts.map +0 -1
- package/dist/src/types.js +0 -2
- package/dist/src/yaml/a-cache-path-must-not-swallow-a-credential.test.d.ts +0 -28
- package/dist/src/yaml/a-cache-path-must-not-swallow-a-credential.test.d.ts.map +0 -1
- package/dist/src/yaml/a-cache-path-must-not-swallow-a-credential.test.js +0 -223
- package/dist/src/yaml/a-declared-secret-reaches-the-file-step.test.d.ts +0 -20
- package/dist/src/yaml/a-declared-secret-reaches-the-file-step.test.d.ts.map +0 -1
- package/dist/src/yaml/a-declared-secret-reaches-the-file-step.test.js +0 -201
- package/dist/src/yaml/a-declared-slot-may-name-the-workflow-it-belongs-to.test.d.ts +0 -37
- package/dist/src/yaml/a-declared-slot-may-name-the-workflow-it-belongs-to.test.d.ts.map +0 -1
- package/dist/src/yaml/a-declared-slot-may-name-the-workflow-it-belongs-to.test.js +0 -255
- package/dist/src/yaml/a-missing-credential-is-loud.test.d.ts +0 -32
- package/dist/src/yaml/a-missing-credential-is-loud.test.d.ts.map +0 -1
- package/dist/src/yaml/a-missing-credential-is-loud.test.js +0 -301
- package/dist/src/yaml/a-runtime-requirement-names-a-real-provider.test.d.ts +0 -18
- package/dist/src/yaml/a-runtime-requirement-names-a-real-provider.test.d.ts.map +0 -1
- package/dist/src/yaml/a-runtime-requirement-names-a-real-provider.test.js +0 -66
- package/dist/src/yaml/a-scoped-slot-must-name-a-workflow-the-pipeline-has.test.d.ts +0 -34
- package/dist/src/yaml/a-scoped-slot-must-name-a-workflow-the-pipeline-has.test.d.ts.map +0 -1
- package/dist/src/yaml/a-scoped-slot-must-name-a-workflow-the-pipeline-has.test.js +0 -218
- package/dist/src/yaml/a-value-this-instance-stored-is-a-value-it-has.test.d.ts +0 -27
- package/dist/src/yaml/a-value-this-instance-stored-is-a-value-it-has.test.d.ts.map +0 -1
- package/dist/src/yaml/a-value-this-instance-stored-is-a-value-it-has.test.js +0 -126
- package/dist/src/yaml/bitrise-compat.d.ts +0 -65
- package/dist/src/yaml/bitrise-compat.d.ts.map +0 -1
- package/dist/src/yaml/bitrise-compat.js +0 -206
- package/dist/src/yaml/bitrise-compat.test.d.ts +0 -5
- package/dist/src/yaml/bitrise-compat.test.d.ts.map +0 -1
- package/dist/src/yaml/bitrise-compat.test.js +0 -347
- package/dist/src/yaml/cache-key-missing-file.test.d.ts +0 -12
- package/dist/src/yaml/cache-key-missing-file.test.d.ts.map +0 -1
- package/dist/src/yaml/cache-key-missing-file.test.js +0 -116
- package/dist/src/yaml/converter.d.ts +0 -103
- package/dist/src/yaml/converter.d.ts.map +0 -1
- package/dist/src/yaml/converter.js +0 -420
- package/dist/src/yaml/converter.test.d.ts +0 -5
- package/dist/src/yaml/converter.test.d.ts.map +0 -1
- package/dist/src/yaml/converter.test.js +0 -548
- package/dist/src/yaml/e2e.test.d.ts +0 -6
- package/dist/src/yaml/e2e.test.d.ts.map +0 -1
- package/dist/src/yaml/e2e.test.js +0 -446
- package/dist/src/yaml/env-resolver.d.ts +0 -218
- package/dist/src/yaml/env-resolver.d.ts.map +0 -1
- package/dist/src/yaml/env-resolver.js +0 -591
- package/dist/src/yaml/env-resolver.test.d.ts +0 -5
- package/dist/src/yaml/env-resolver.test.d.ts.map +0 -1
- package/dist/src/yaml/env-resolver.test.js +0 -502
- package/dist/src/yaml/every-build-log-witnesses-the-commit-on-disk.test.d.ts +0 -16
- package/dist/src/yaml/every-build-log-witnesses-the-commit-on-disk.test.d.ts.map +0 -1
- package/dist/src/yaml/every-build-log-witnesses-the-commit-on-disk.test.js +0 -126
- package/dist/src/yaml/fidelity-input-digest.d.ts +0 -37
- package/dist/src/yaml/fidelity-input-digest.d.ts.map +0 -1
- package/dist/src/yaml/fidelity-input-digest.js +0 -208
- package/dist/src/yaml/fidelity-input-digest.test.d.ts +0 -2
- package/dist/src/yaml/fidelity-input-digest.test.d.ts.map +0 -1
- package/dist/src/yaml/fidelity-input-digest.test.js +0 -167
- package/dist/src/yaml/fidelity-manifest.d.ts +0 -126
- package/dist/src/yaml/fidelity-manifest.d.ts.map +0 -1
- package/dist/src/yaml/fidelity-manifest.js +0 -134
- package/dist/src/yaml/fidelity-manifest.test.d.ts +0 -12
- package/dist/src/yaml/fidelity-manifest.test.d.ts.map +0 -1
- package/dist/src/yaml/fidelity-manifest.test.js +0 -251
- package/dist/src/yaml/interactive-prompts.d.ts +0 -71
- package/dist/src/yaml/interactive-prompts.d.ts.map +0 -1
- package/dist/src/yaml/interactive-prompts.js +0 -260
- package/dist/src/yaml/meta-helpers.d.ts +0 -28
- package/dist/src/yaml/meta-helpers.d.ts.map +0 -1
- package/dist/src/yaml/meta-helpers.js +0 -46
- package/dist/src/yaml/missing-env-handler.d.ts +0 -45
- package/dist/src/yaml/missing-env-handler.d.ts.map +0 -1
- package/dist/src/yaml/missing-env-handler.js +0 -64
- package/dist/src/yaml/parser.d.ts +0 -33
- package/dist/src/yaml/parser.d.ts.map +0 -1
- package/dist/src/yaml/parser.js +0 -148
- package/dist/src/yaml/parser.test.d.ts +0 -5
- package/dist/src/yaml/parser.test.d.ts.map +0 -1
- package/dist/src/yaml/parser.test.js +0 -83
- package/dist/src/yaml/pipeline-with-secrets.d.ts +0 -25
- package/dist/src/yaml/pipeline-with-secrets.d.ts.map +0 -1
- package/dist/src/yaml/pipeline-with-secrets.js +0 -76
- package/dist/src/yaml/platform-detector.d.ts +0 -83
- package/dist/src/yaml/platform-detector.d.ts.map +0 -1
- package/dist/src/yaml/platform-detector.js +0 -189
- package/dist/src/yaml/platform-detector.test.d.ts +0 -5
- package/dist/src/yaml/platform-detector.test.d.ts.map +0 -1
- package/dist/src/yaml/platform-detector.test.js +0 -525
- package/dist/src/yaml/preflight-validation.d.ts +0 -29
- package/dist/src/yaml/preflight-validation.d.ts.map +0 -1
- package/dist/src/yaml/preflight-validation.js +0 -21
- package/dist/src/yaml/secrets-manager.d.ts +0 -87
- package/dist/src/yaml/secrets-manager.d.ts.map +0 -1
- package/dist/src/yaml/secrets-manager.js +0 -230
- package/dist/src/yaml/shell-assignments.d.ts +0 -40
- package/dist/src/yaml/shell-assignments.d.ts.map +0 -1
- package/dist/src/yaml/shell-assignments.js +0 -77
- package/dist/src/yaml/step-validator-check-failure.test.d.ts +0 -24
- package/dist/src/yaml/step-validator-check-failure.test.d.ts.map +0 -1
- package/dist/src/yaml/step-validator-check-failure.test.js +0 -130
- package/dist/src/yaml/step-validator-self-assigned.test.d.ts +0 -23
- package/dist/src/yaml/step-validator-self-assigned.test.d.ts.map +0 -1
- package/dist/src/yaml/step-validator-self-assigned.test.js +0 -191
- package/dist/src/yaml/step-validator.d.ts +0 -67
- package/dist/src/yaml/step-validator.d.ts.map +0 -1
- package/dist/src/yaml/step-validator.js +0 -466
- package/dist/src/yaml/step-validator.test.d.ts +0 -18
- package/dist/src/yaml/step-validator.test.d.ts.map +0 -1
- package/dist/src/yaml/step-validator.test.js +0 -140
- package/dist/src/yaml/steps/android-sign.d.ts +0 -35
- package/dist/src/yaml/steps/android-sign.d.ts.map +0 -1
- package/dist/src/yaml/steps/android-sign.js +0 -147
- package/dist/src/yaml/steps/android-variant-resolution.test.d.ts +0 -2
- package/dist/src/yaml/steps/android-variant-resolution.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/android-variant-resolution.test.js +0 -260
- package/dist/src/yaml/steps/android-version.d.ts +0 -26
- package/dist/src/yaml/steps/android-version.d.ts.map +0 -1
- package/dist/src/yaml/steps/android-version.js +0 -128
- package/dist/src/yaml/steps/android-version.test.d.ts +0 -5
- package/dist/src/yaml/steps/android-version.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/android-version.test.js +0 -196
- package/dist/src/yaml/steps/android.d.ts +0 -156
- package/dist/src/yaml/steps/android.d.ts.map +0 -1
- package/dist/src/yaml/steps/android.js +0 -1084
- package/dist/src/yaml/steps/app-store-deploy.d.ts +0 -48
- package/dist/src/yaml/steps/app-store-deploy.d.ts.map +0 -1
- package/dist/src/yaml/steps/app-store-deploy.js +0 -167
- package/dist/src/yaml/steps/base.d.ts +0 -263
- package/dist/src/yaml/steps/base.d.ts.map +0 -1
- package/dist/src/yaml/steps/base.js +0 -380
- package/dist/src/yaml/steps/bitrise-android-tools.d.ts +0 -26
- package/dist/src/yaml/steps/bitrise-android-tools.d.ts.map +0 -1
- package/dist/src/yaml/steps/bitrise-android-tools.js +0 -200
- package/dist/src/yaml/steps/bitrise-android-tools.test.d.ts +0 -5
- package/dist/src/yaml/steps/bitrise-android-tools.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/bitrise-android-tools.test.js +0 -280
- package/dist/src/yaml/steps/bitrise-apk-info.d.ts +0 -22
- package/dist/src/yaml/steps/bitrise-apk-info.d.ts.map +0 -1
- package/dist/src/yaml/steps/bitrise-apk-info.js +0 -144
- package/dist/src/yaml/steps/bitrise-apk-info.test.d.ts +0 -5
- package/dist/src/yaml/steps/bitrise-apk-info.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/bitrise-apk-info.test.js +0 -331
- package/dist/src/yaml/steps/bitrise-slack.d.ts +0 -49
- package/dist/src/yaml/steps/bitrise-slack.d.ts.map +0 -1
- package/dist/src/yaml/steps/bitrise-slack.js +0 -280
- package/dist/src/yaml/steps/bitrise-slack.test.d.ts +0 -5
- package/dist/src/yaml/steps/bitrise-slack.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/bitrise-slack.test.js +0 -484
- package/dist/src/yaml/steps/bitrise-ssh.d.ts +0 -27
- package/dist/src/yaml/steps/bitrise-ssh.d.ts.map +0 -1
- package/dist/src/yaml/steps/bitrise-ssh.js +0 -134
- package/dist/src/yaml/steps/bitrise-ssh.test.d.ts +0 -5
- package/dist/src/yaml/steps/bitrise-ssh.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/bitrise-ssh.test.js +0 -205
- package/dist/src/yaml/steps/cache-pull-daemon.test.d.ts +0 -27
- package/dist/src/yaml/steps/cache-pull-daemon.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/cache-pull-daemon.test.js +0 -212
- package/dist/src/yaml/steps/cache-pull-restore-roots.test.d.ts +0 -42
- package/dist/src/yaml/steps/cache-pull-restore-roots.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/cache-pull-restore-roots.test.js +0 -209
- package/dist/src/yaml/steps/cache-push-daemon.test.d.ts +0 -27
- package/dist/src/yaml/steps/cache-push-daemon.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/cache-push-daemon.test.js +0 -171
- package/dist/src/yaml/steps/cache.d.ts +0 -59
- package/dist/src/yaml/steps/cache.d.ts.map +0 -1
- package/dist/src/yaml/steps/cache.js +0 -1027
- package/dist/src/yaml/steps/cocoapods-deployment-floor.d.ts +0 -42
- package/dist/src/yaml/steps/cocoapods-deployment-floor.d.ts.map +0 -1
- package/dist/src/yaml/steps/cocoapods-deployment-floor.js +0 -140
- package/dist/src/yaml/steps/cocoapods-deployment-floor.test.d.ts +0 -11
- package/dist/src/yaml/steps/cocoapods-deployment-floor.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/cocoapods-deployment-floor.test.js +0 -176
- package/dist/src/yaml/steps/cocoapods-install-emits-valid-bash.test.d.ts +0 -22
- package/dist/src/yaml/steps/cocoapods-install-emits-valid-bash.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/cocoapods-install-emits-valid-bash.test.js +0 -97
- package/dist/src/yaml/steps/cocoapods-locked-bundler.test.d.ts +0 -17
- package/dist/src/yaml/steps/cocoapods-locked-bundler.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/cocoapods-locked-bundler.test.js +0 -282
- package/dist/src/yaml/steps/cocoapods-skip-if-absent.test.d.ts +0 -17
- package/dist/src/yaml/steps/cocoapods-skip-if-absent.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/cocoapods-skip-if-absent.test.js +0 -132
- package/dist/src/yaml/steps/envstore-loader.test.d.ts +0 -15
- package/dist/src/yaml/steps/envstore-loader.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/envstore-loader.test.js +0 -143
- package/dist/src/yaml/steps/fastlane.d.ts +0 -27
- package/dist/src/yaml/steps/fastlane.d.ts.map +0 -1
- package/dist/src/yaml/steps/fastlane.js +0 -79
- package/dist/src/yaml/steps/fidelity-aspect-guard.d.ts +0 -53
- package/dist/src/yaml/steps/fidelity-aspect-guard.d.ts.map +0 -1
- package/dist/src/yaml/steps/fidelity-aspect-guard.js +0 -72
- package/dist/src/yaml/steps/fidelity-aspect-guard.test.d.ts +0 -11
- package/dist/src/yaml/steps/fidelity-aspect-guard.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/fidelity-aspect-guard.test.js +0 -50
- package/dist/src/yaml/steps/fidelity-reference-provenance.d.ts +0 -87
- package/dist/src/yaml/steps/fidelity-reference-provenance.d.ts.map +0 -1
- package/dist/src/yaml/steps/fidelity-reference-provenance.js +0 -111
- package/dist/src/yaml/steps/fidelity-reference-provenance.test.d.ts +0 -22
- package/dist/src/yaml/steps/fidelity-reference-provenance.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/fidelity-reference-provenance.test.js +0 -118
- package/dist/src/yaml/steps/file.d.ts +0 -52
- package/dist/src/yaml/steps/file.d.ts.map +0 -1
- package/dist/src/yaml/steps/file.js +0 -108
- package/dist/src/yaml/steps/flutter.d.ts +0 -63
- package/dist/src/yaml/steps/flutter.d.ts.map +0 -1
- package/dist/src/yaml/steps/flutter.js +0 -215
- package/dist/src/yaml/steps/git-clone-names-the-inputs-it-ignores.test.d.ts +0 -16
- package/dist/src/yaml/steps/git-clone-names-the-inputs-it-ignores.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/git-clone-names-the-inputs-it-ignores.test.js +0 -127
- package/dist/src/yaml/steps/git-clone.d.ts +0 -32
- package/dist/src/yaml/steps/git-clone.d.ts.map +0 -1
- package/dist/src/yaml/steps/git-clone.js +0 -171
- package/dist/src/yaml/steps/git-fetch-retry-exec.test.d.ts +0 -10
- package/dist/src/yaml/steps/git-fetch-retry-exec.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/git-fetch-retry-exec.test.js +0 -162
- package/dist/src/yaml/steps/git-fetch-retry.d.ts +0 -62
- package/dist/src/yaml/steps/git-fetch-retry.d.ts.map +0 -1
- package/dist/src/yaml/steps/git-fetch-retry.js +0 -155
- package/dist/src/yaml/steps/git-fetch-retry.test.d.ts +0 -5
- package/dist/src/yaml/steps/git-fetch-retry.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/git-fetch-retry.test.js +0 -86
- package/dist/src/yaml/steps/google-play-deploy.d.ts +0 -37
- package/dist/src/yaml/steps/google-play-deploy.d.ts.map +0 -1
- package/dist/src/yaml/steps/google-play-deploy.js +0 -193
- package/dist/src/yaml/steps/google-play-deploy.test.d.ts +0 -5
- package/dist/src/yaml/steps/google-play-deploy.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/google-play-deploy.test.js +0 -310
- package/dist/src/yaml/steps/gradle-memory.d.ts +0 -61
- package/dist/src/yaml/steps/gradle-memory.d.ts.map +0 -1
- package/dist/src/yaml/steps/gradle-memory.js +0 -311
- package/dist/src/yaml/steps/gradle-memory.test.d.ts +0 -2
- package/dist/src/yaml/steps/gradle-memory.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/gradle-memory.test.js +0 -297
- package/dist/src/yaml/steps/gradle-sdk-cmake.d.ts +0 -28
- package/dist/src/yaml/steps/gradle-sdk-cmake.d.ts.map +0 -1
- package/dist/src/yaml/steps/gradle-sdk-cmake.js +0 -107
- package/dist/src/yaml/steps/gradle-sdk-cmake.test.d.ts +0 -2
- package/dist/src/yaml/steps/gradle-sdk-cmake.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/gradle-sdk-cmake.test.js +0 -183
- package/dist/src/yaml/steps/index.d.ts +0 -10
- package/dist/src/yaml/steps/index.d.ts.map +0 -1
- package/dist/src/yaml/steps/index.js +0 -1461
- package/dist/src/yaml/steps/ios-deps.d.ts +0 -78
- package/dist/src/yaml/steps/ios-deps.d.ts.map +0 -1
- package/dist/src/yaml/steps/ios-deps.js +0 -279
- package/dist/src/yaml/steps/ios-deps.test.d.ts +0 -5
- package/dist/src/yaml/steps/ios-deps.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/ios-deps.test.js +0 -90
- package/dist/src/yaml/steps/ios-signing.d.ts +0 -31
- package/dist/src/yaml/steps/ios-signing.d.ts.map +0 -1
- package/dist/src/yaml/steps/ios-signing.js +0 -144
- package/dist/src/yaml/steps/ios-version.d.ts +0 -47
- package/dist/src/yaml/steps/ios-version.d.ts.map +0 -1
- package/dist/src/yaml/steps/ios-version.js +0 -151
- package/dist/src/yaml/steps/java-home-version-spec.test.d.ts +0 -10
- package/dist/src/yaml/steps/java-home-version-spec.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/java-home-version-spec.test.js +0 -58
- package/dist/src/yaml/steps/linting.d.ts +0 -47
- package/dist/src/yaml/steps/linting.d.ts.map +0 -1
- package/dist/src/yaml/steps/linting.js +0 -148
- package/dist/src/yaml/steps/phase2.test.d.ts +0 -6
- package/dist/src/yaml/steps/phase2.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/phase2.test.js +0 -197
- package/dist/src/yaml/steps/phase3.test.d.ts +0 -5
- package/dist/src/yaml/steps/phase3.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/phase3.test.js +0 -144
- package/dist/src/yaml/steps/phase4.test.d.ts +0 -5
- package/dist/src/yaml/steps/phase4.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/phase4.test.js +0 -166
- package/dist/src/yaml/steps/phase5.test.d.ts +0 -6
- package/dist/src/yaml/steps/phase5.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/phase5.test.js +0 -263
- package/dist/src/yaml/steps/registry.d.ts +0 -88
- package/dist/src/yaml/steps/registry.d.ts.map +0 -1
- package/dist/src/yaml/steps/registry.js +0 -125
- package/dist/src/yaml/steps/registry.test.d.ts +0 -5
- package/dist/src/yaml/steps/registry.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/registry.test.js +0 -235
- package/dist/src/yaml/steps/release.d.ts +0 -50
- package/dist/src/yaml/steps/release.d.ts.map +0 -1
- package/dist/src/yaml/steps/release.js +0 -154
- package/dist/src/yaml/steps/render-post-processor.d.ts +0 -100
- package/dist/src/yaml/steps/render-post-processor.d.ts.map +0 -1
- package/dist/src/yaml/steps/render-post-processor.js +0 -270
- package/dist/src/yaml/steps/render-post-processor.test.d.ts +0 -13
- package/dist/src/yaml/steps/render-post-processor.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/render-post-processor.test.js +0 -220
- package/dist/src/yaml/steps/script.d.ts +0 -23
- package/dist/src/yaml/steps/script.d.ts.map +0 -1
- package/dist/src/yaml/steps/script.js +0 -63
- package/dist/src/yaml/steps/spec-validation.test.d.ts +0 -6
- package/dist/src/yaml/steps/spec-validation.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/spec-validation.test.js +0 -130
- package/dist/src/yaml/steps/steps.test.d.ts +0 -6
- package/dist/src/yaml/steps/steps.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/steps.test.js +0 -881
- package/dist/src/yaml/steps/structural-facts.d.ts +0 -992
- package/dist/src/yaml/steps/structural-facts.d.ts.map +0 -1
- package/dist/src/yaml/steps/structural-facts.js +0 -3276
- package/dist/src/yaml/steps/structural-facts.test.d.ts +0 -12
- package/dist/src/yaml/steps/structural-facts.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/structural-facts.test.js +0 -3039
- package/dist/src/yaml/steps/test-config.d.ts +0 -5
- package/dist/src/yaml/steps/test-config.d.ts.map +0 -1
- package/dist/src/yaml/steps/test-config.js +0 -25
- package/dist/src/yaml/steps/trim-align-corpus.test.d.ts +0 -28
- package/dist/src/yaml/steps/trim-align-corpus.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/trim-align-corpus.test.js +0 -383
- package/dist/src/yaml/steps/trim-align.d.ts +0 -87
- package/dist/src/yaml/steps/trim-align.d.ts.map +0 -1
- package/dist/src/yaml/steps/trim-align.js +0 -367
- package/dist/src/yaml/steps/trim-align.test.d.ts +0 -11
- package/dist/src/yaml/steps/trim-align.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/trim-align.test.js +0 -261
- package/dist/src/yaml/steps/ui-fidelity-preview-android.d.ts +0 -66
- package/dist/src/yaml/steps/ui-fidelity-preview-android.d.ts.map +0 -1
- package/dist/src/yaml/steps/ui-fidelity-preview-android.js +0 -251
- package/dist/src/yaml/steps/ui-fidelity-preview-android.test.d.ts +0 -13
- package/dist/src/yaml/steps/ui-fidelity-preview-android.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/ui-fidelity-preview-android.test.js +0 -302
- package/dist/src/yaml/steps/ui-fidelity-preview.d.ts +0 -134
- package/dist/src/yaml/steps/ui-fidelity-preview.d.ts.map +0 -1
- package/dist/src/yaml/steps/ui-fidelity-preview.js +0 -173
- package/dist/src/yaml/steps/ui-fidelity-preview.test.d.ts +0 -11
- package/dist/src/yaml/steps/ui-fidelity-preview.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/ui-fidelity-preview.test.js +0 -210
- package/dist/src/yaml/steps/ui-fidelity-render-android.d.ts +0 -155
- package/dist/src/yaml/steps/ui-fidelity-render-android.d.ts.map +0 -1
- package/dist/src/yaml/steps/ui-fidelity-render-android.js +0 -1389
- package/dist/src/yaml/steps/ui-fidelity-render-android.test.d.ts +0 -2
- package/dist/src/yaml/steps/ui-fidelity-render-android.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/ui-fidelity-render-android.test.js +0 -1106
- package/dist/src/yaml/steps/ui-fidelity-render.d.ts +0 -230
- package/dist/src/yaml/steps/ui-fidelity-render.d.ts.map +0 -1
- package/dist/src/yaml/steps/ui-fidelity-render.js +0 -1597
- package/dist/src/yaml/steps/ui-fidelity-render.test.d.ts +0 -18
- package/dist/src/yaml/steps/ui-fidelity-render.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/ui-fidelity-render.test.js +0 -1871
- package/dist/src/yaml/steps/xcode-app-product.d.ts +0 -90
- package/dist/src/yaml/steps/xcode-app-product.d.ts.map +0 -1
- package/dist/src/yaml/steps/xcode-app-product.js +0 -247
- package/dist/src/yaml/steps/xcode-app-product.test.d.ts +0 -2
- package/dist/src/yaml/steps/xcode-app-product.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/xcode-app-product.test.js +0 -202
- package/dist/src/yaml/steps/xcode-derived-data.test.d.ts +0 -30
- package/dist/src/yaml/steps/xcode-derived-data.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/xcode-derived-data.test.js +0 -253
- package/dist/src/yaml/steps/xcode-destination.d.ts +0 -47
- package/dist/src/yaml/steps/xcode-destination.d.ts.map +0 -1
- package/dist/src/yaml/steps/xcode-destination.js +0 -202
- package/dist/src/yaml/steps/xcode-destination.test.d.ts +0 -9
- package/dist/src/yaml/steps/xcode-destination.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/xcode-destination.test.js +0 -227
- package/dist/src/yaml/steps/xcode-new.test.d.ts +0 -5
- package/dist/src/yaml/steps/xcode-new.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/xcode-new.test.js +0 -211
- package/dist/src/yaml/steps/xcode-resolve-retry.test.d.ts +0 -9
- package/dist/src/yaml/steps/xcode-resolve-retry.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/xcode-resolve-retry.test.js +0 -146
- package/dist/src/yaml/steps/xcode-simulator-archs.d.ts +0 -53
- package/dist/src/yaml/steps/xcode-simulator-archs.d.ts.map +0 -1
- package/dist/src/yaml/steps/xcode-simulator-archs.js +0 -98
- package/dist/src/yaml/steps/xcode-simulator-archs.test.d.ts +0 -21
- package/dist/src/yaml/steps/xcode-simulator-archs.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/xcode-simulator-archs.test.js +0 -155
- package/dist/src/yaml/steps/xcode.d.ts +0 -230
- package/dist/src/yaml/steps/xcode.d.ts.map +0 -1
- package/dist/src/yaml/steps/xcode.js +0 -1340
- package/dist/src/yaml/types.d.ts +0 -76
- package/dist/src/yaml/types.d.ts.map +0 -1
- package/dist/src/yaml/types.js +0 -5
- package/dist/src/yaml/validation-types.d.ts +0 -102
- package/dist/src/yaml/validation-types.d.ts.map +0 -1
- package/dist/src/yaml/validation-types.js +0 -8
- package/dist/src/yaml/yaml-updater.d.ts +0 -24
- package/dist/src/yaml/yaml-updater.d.ts.map +0 -1
- package/dist/src/yaml/yaml-updater.js +0 -128
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* iOS dependency management steps: cocoapods-install, carthage
|
|
3
|
-
*/
|
|
4
|
-
import { BaseStepExecutor } from './base.js';
|
|
5
|
-
import type { StepDef, CIConfig } from '../../types.js';
|
|
6
|
-
import type { ValidationRequirement } from '../validation-types.js';
|
|
7
|
-
export interface CocoapodsInstallInputs {
|
|
8
|
-
/** CocoaPods command: install | update */
|
|
9
|
-
command?: string;
|
|
10
|
-
/** Directory containing Podfile (and optionally Gemfile) */
|
|
11
|
-
source_root_path?: string;
|
|
12
|
-
/** Explicit path to Podfile (overrides source_root_path) */
|
|
13
|
-
podfile_path?: string;
|
|
14
|
-
/**
|
|
15
|
-
* A .xcodeproj/.xcworkspace whose DIRECTORY holds the Podfile.
|
|
16
|
-
*
|
|
17
|
-
* About a quarter of iOS repositories keep the app one directory down from
|
|
18
|
-
* the repository root, and the Podfile is down there with it — so "run pod
|
|
19
|
-
* install at the root" is wrong for them. A caller that already knows where
|
|
20
|
-
* the project is should not have to compute its directory separately, and a
|
|
21
|
-
* pipeline template cannot: template inputs interpolate variables, not
|
|
22
|
-
* `$(dirname …)`, so `source_root_path` alone could not express it and the
|
|
23
|
-
* iOS template had to run `pod install` from an inline script to get at
|
|
24
|
-
* `dirname`. That inline script is what put it out of reach of the
|
|
25
|
-
* refused-fetch retry.
|
|
26
|
-
*
|
|
27
|
-
* Only the directory is used; the file itself need not exist.
|
|
28
|
-
*
|
|
29
|
-
* Precedence, most specific first: podfile_path, source_root_path,
|
|
30
|
-
* project_path, then $CIBUILD_SOURCE_DIR.
|
|
31
|
-
*/
|
|
32
|
-
project_path?: string;
|
|
33
|
-
/** Enable verbose CocoaPods logging */
|
|
34
|
-
verbose?: boolean;
|
|
35
|
-
/**
|
|
36
|
-
* Succeed and do nothing when there is no Podfile, instead of failing.
|
|
37
|
-
*
|
|
38
|
-
* Defaults to false, which keeps the contract every existing caller was
|
|
39
|
-
* written against: a pipeline that names this step is asserting the project
|
|
40
|
-
* uses CocoaPods, and a missing Podfile is a real error worth stopping for.
|
|
41
|
-
*
|
|
42
|
-
* The iOS template is the caller that needs the other behaviour. It serves
|
|
43
|
-
* every iOS project, and a large share of them resolve dependencies through
|
|
44
|
-
* Swift Package Manager and have no Podfile at all — for those, "Podfile not
|
|
45
|
-
* found" is a CocoaPods error in a project that does not use CocoaPods.
|
|
46
|
-
* Until this existed the template could not use this step, and so ran
|
|
47
|
-
* `pod install` from an inline script instead, out of reach of the
|
|
48
|
-
* refused-fetch retry that this step carries.
|
|
49
|
-
*/
|
|
50
|
-
skip_if_absent?: boolean;
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* Runs `pod install` or `pod update`.
|
|
54
|
-
* Auto-detects Gemfile and uses `bundle exec pod` when appropriate.
|
|
55
|
-
* Determines CocoaPods version from Podfile.lock or Gemfile.lock.
|
|
56
|
-
*/
|
|
57
|
-
export declare class CocoapodsInstallStepExecutor extends BaseStepExecutor {
|
|
58
|
-
getValidationRequirements(_inputs: CocoapodsInstallInputs, _env: Record<string, string>, _config: CIConfig): ValidationRequirement[];
|
|
59
|
-
execute(inputs: CocoapodsInstallInputs, _env: Record<string, string>, _config: CIConfig): Promise<StepDef>;
|
|
60
|
-
}
|
|
61
|
-
export interface CarthageInputs {
|
|
62
|
-
/** Carthage command: bootstrap | update | build */
|
|
63
|
-
carthage_command?: string;
|
|
64
|
-
/** Additional options for the carthage command */
|
|
65
|
-
carthage_options?: string;
|
|
66
|
-
/** GitHub personal access token (avoids rate limits) */
|
|
67
|
-
github_access_token?: string;
|
|
68
|
-
/** Enable verbose logging */
|
|
69
|
-
verbose?: boolean;
|
|
70
|
-
}
|
|
71
|
-
/**
|
|
72
|
-
* Runs a Carthage command (bootstrap/update/build) to manage dependencies.
|
|
73
|
-
*/
|
|
74
|
-
export declare class CarthageStepExecutor extends BaseStepExecutor {
|
|
75
|
-
getValidationRequirements(_inputs: CarthageInputs, _env: Record<string, string>, _config: CIConfig): ValidationRequirement[];
|
|
76
|
-
execute(inputs: CarthageInputs, _env: Record<string, string>, _config: CIConfig): Promise<StepDef>;
|
|
77
|
-
}
|
|
78
|
-
//# sourceMappingURL=ios-deps.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ios-deps.d.ts","sourceRoot":"","sources":["../../../../src/yaml/steps/ios-deps.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAG7C,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,KAAK,EAAE,qBAAqB,EAAc,MAAM,wBAAwB,CAAC;AAMhF,MAAM,WAAW,sBAAsB;IACrC,0CAA0C;IAC1C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,4DAA4D;IAC5D,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,4DAA4D;IAC5D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;;;;;;;;;;;;;OAiBG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,uCAAuC;IACvC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;;;;;;;;;;;OAcG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED;;;;GAIG;AACH,qBAAa,4BAA6B,SAAQ,gBAAgB;IAChE,yBAAyB,CACvB,OAAO,EAAE,sBAAsB,EAC/B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC5B,OAAO,EAAE,QAAQ,GAChB,qBAAqB,EAAE;IAUpB,OAAO,CACX,MAAM,EAAE,sBAAsB,EAC9B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC5B,OAAO,EAAE,QAAQ,GAChB,OAAO,CAAC,OAAO,CAAC;CAgNpB;AAMD,MAAM,WAAW,cAAc;IAC7B,mDAAmD;IACnD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,kDAAkD;IAClD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,wDAAwD;IACxD,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,6BAA6B;IAC7B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,gBAAgB;IACxD,yBAAyB,CACvB,OAAO,EAAE,cAAc,EACvB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC5B,OAAO,EAAE,QAAQ,GAChB,qBAAqB,EAAE;IAUpB,OAAO,CACX,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC5B,OAAO,EAAE,QAAQ,GAChB,OAAO,CAAC,OAAO,CAAC;CAyDpB"}
|
|
@@ -1,279 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* iOS dependency management steps: cocoapods-install, carthage
|
|
3
|
-
*/
|
|
4
|
-
import { BaseStepExecutor } from './base.js';
|
|
5
|
-
import { refusedFetchHelpers, retryOnRefusedFetch } from './git-fetch-retry.js';
|
|
6
|
-
import { podDeploymentFloorLines } from './cocoapods-deployment-floor.js';
|
|
7
|
-
/**
|
|
8
|
-
* Runs `pod install` or `pod update`.
|
|
9
|
-
* Auto-detects Gemfile and uses `bundle exec pod` when appropriate.
|
|
10
|
-
* Determines CocoaPods version from Podfile.lock or Gemfile.lock.
|
|
11
|
-
*/
|
|
12
|
-
export class CocoapodsInstallStepExecutor extends BaseStepExecutor {
|
|
13
|
-
getValidationRequirements(_inputs, _env, _config) {
|
|
14
|
-
return [
|
|
15
|
-
this.requireCommand('pod', 'CocoaPods is required', 'Install: gem install cocoapods (or use Gemfile)'),
|
|
16
|
-
];
|
|
17
|
-
}
|
|
18
|
-
async execute(inputs, _env, _config) {
|
|
19
|
-
const stepName = 'cocoapods-install';
|
|
20
|
-
const command = this.getInput(inputs, 'command', 'install');
|
|
21
|
-
const sourceRootPath = this.getInput(inputs, 'source_root_path', '');
|
|
22
|
-
const podfilePath = this.getInput(inputs, 'podfile_path', '');
|
|
23
|
-
const projectPath = this.getInput(inputs, 'project_path', '');
|
|
24
|
-
const verbose = this.getInput(inputs, 'verbose', false);
|
|
25
|
-
const skipIfAbsent = this.getInput(inputs, 'skip_if_absent', false);
|
|
26
|
-
const commands = [];
|
|
27
|
-
commands.push('# cocoapods-install');
|
|
28
|
-
commands.push('echo "🔧 Running CocoaPods..."');
|
|
29
|
-
commands.push('');
|
|
30
|
-
// Determine working directory
|
|
31
|
-
if (podfilePath) {
|
|
32
|
-
commands.push(`# Use directory from explicit Podfile path`);
|
|
33
|
-
commands.push(`WORK_DIR="$(dirname '${this.escapeBash(podfilePath)}')"`);
|
|
34
|
-
commands.push(`cd "$WORK_DIR"`);
|
|
35
|
-
}
|
|
36
|
-
else if (sourceRootPath) {
|
|
37
|
-
commands.push(`cd '${this.escapeBash(sourceRootPath)}'`);
|
|
38
|
-
}
|
|
39
|
-
else if (projectPath) {
|
|
40
|
-
commands.push('# Podfile sits beside the Xcode project, not at the repo root');
|
|
41
|
-
commands.push(`WORK_DIR="$(dirname '${this.escapeBash(projectPath)}')"`);
|
|
42
|
-
commands.push('cd "$WORK_DIR"');
|
|
43
|
-
}
|
|
44
|
-
else {
|
|
45
|
-
commands.push('# Use CIBUILD_SOURCE_DIR if set, otherwise current directory');
|
|
46
|
-
commands.push('if [ -n "$CIBUILD_SOURCE_DIR" ]; then');
|
|
47
|
-
commands.push(' cd "$CIBUILD_SOURCE_DIR"');
|
|
48
|
-
commands.push('fi');
|
|
49
|
-
}
|
|
50
|
-
commands.push('');
|
|
51
|
-
// Check for Podfile. Absent is either a hard error or a clean no-op,
|
|
52
|
-
// depending on whether the caller is asserting "this project uses
|
|
53
|
-
// CocoaPods" or asking "use CocoaPods if this project does".
|
|
54
|
-
commands.push('if [ ! -f "Podfile" ]; then');
|
|
55
|
-
if (skipIfAbsent) {
|
|
56
|
-
commands.push(' echo "No Podfile in $(pwd) — skipping CocoaPods install."');
|
|
57
|
-
commands.push(' exit 0');
|
|
58
|
-
}
|
|
59
|
-
else {
|
|
60
|
-
commands.push(' echo "❌ Error: Podfile not found in $(pwd)"');
|
|
61
|
-
commands.push(' exit 1');
|
|
62
|
-
}
|
|
63
|
-
commands.push('fi');
|
|
64
|
-
commands.push('');
|
|
65
|
-
// Determine whether to use bundle exec
|
|
66
|
-
commands.push('# Detect Gemfile with cocoapods gem → use bundle exec');
|
|
67
|
-
commands.push('USE_BUNDLE_EXEC="false"');
|
|
68
|
-
commands.push('if [ -f "Gemfile.lock" ] && grep -q "cocoapods" "Gemfile.lock" 2>/dev/null; then');
|
|
69
|
-
commands.push(' USE_BUNDLE_EXEC="true"');
|
|
70
|
-
commands.push(' echo "Detected cocoapods in Gemfile.lock — using bundle exec"');
|
|
71
|
-
commands.push('elif [ -f "Gemfile" ] && grep -q "cocoapods" "Gemfile" 2>/dev/null; then');
|
|
72
|
-
commands.push(' USE_BUNDLE_EXEC="true"');
|
|
73
|
-
commands.push(' echo "Detected cocoapods in Gemfile — using bundle exec"');
|
|
74
|
-
commands.push('fi');
|
|
75
|
-
commands.push('');
|
|
76
|
-
// Run the bundler the lockfile names, from a Ruby that can install it.
|
|
77
|
-
//
|
|
78
|
-
// A Gemfile.lock ends in `BUNDLED WITH <version>`, and RubyGems refuses to
|
|
79
|
-
// start any other bundler for it: "Could not find 'bundler' (2.3.21)
|
|
80
|
-
// required by your Gemfile.lock". The step used to run whatever `bundle`
|
|
81
|
-
// was on PATH, which on a mac guest is /usr/bin/bundle, system Ruby 2.6 —
|
|
82
|
-
// and system Ruby cannot `gem install` without sudo, so nothing in the step
|
|
83
|
-
// could recover.
|
|
84
|
-
//
|
|
85
|
-
// Three moves, each conditional, so a machine missing a piece keeps the
|
|
86
|
-
// old behaviour rather than failing on it:
|
|
87
|
-
// - run a Ruby that fits the one the project names: Gemfile.lock's
|
|
88
|
-
// `RUBY VERSION`, then `.ruby-version`. Homebrew's Ruby is 4 on the mac
|
|
89
|
-
// image, and an old lockfile's gems do not load there — rake 13.0.6
|
|
90
|
-
// requires `ostruct`, no longer a default gem — so "newest installed"
|
|
91
|
-
// is the wrong default. System Ruby 2.6 is no answer either: the Xcode
|
|
92
|
-
// 26.4 SDK's Ruby 2.6 headers have no `ruby/config.h`, so no native
|
|
93
|
-
// extension (json, ffi) compiles under it. So a Ruby named below 3, or
|
|
94
|
-
// none, runs a Homebrew `ruby@3.3`; a named 3.x runs 3.3 unless
|
|
95
|
-
// Homebrew's `ruby` has its major.minor; a named 4.x runs Homebrew's.
|
|
96
|
-
// Both are keg-only, so neither is on PATH where it is installed. With
|
|
97
|
-
// no 3.3 on the machine, below 3 stays on system Ruby and 3+ runs
|
|
98
|
-
// Homebrew's, as before. The `Ruby:` line says which, and why;
|
|
99
|
-
// - point GEM_HOME at a writable directory outside the checkout, so both
|
|
100
|
-
// `gem install bundler` and `bundle install` can write without sudo,
|
|
101
|
-
// and put its bin directory first;
|
|
102
|
-
// - install the locked bundler if it is absent and invoke it by version,
|
|
103
|
-
// `bundle _<version>_`, which is the form RubyGems accepts.
|
|
104
|
-
commands.push('BUNDLE_CMD="bundle"');
|
|
105
|
-
commands.push('if [ "$USE_BUNDLE_EXEC" = "true" ]; then');
|
|
106
|
-
commands.push(' WANTED_RUBY=""');
|
|
107
|
-
commands.push(' WANTED_FROM=""');
|
|
108
|
-
commands.push(' if [ -f "Gemfile.lock" ]; then');
|
|
109
|
-
commands.push(' WANTED_RUBY="$(awk \'/^RUBY VERSION/ { getline; sub(/^[[:space:]]*ruby[[:space:]]+/, ""); sub(/p[0-9]+.*$/, ""); gsub(/[[:space:]]/, ""); print; exit }\' Gemfile.lock)"');
|
|
110
|
-
commands.push(' [ -n "$WANTED_RUBY" ] && WANTED_FROM="Gemfile.lock RUBY VERSION"');
|
|
111
|
-
commands.push(' fi');
|
|
112
|
-
commands.push(' if [ -z "$WANTED_RUBY" ] && [ -f ".ruby-version" ]; then');
|
|
113
|
-
commands.push(' WANTED_RUBY="$(head -n 1 .ruby-version | tr -d \'[:space:]\')"');
|
|
114
|
-
commands.push(' WANTED_RUBY="${WANTED_RUBY#ruby-}"');
|
|
115
|
-
commands.push(' WANTED_FROM=".ruby-version"');
|
|
116
|
-
commands.push(' fi');
|
|
117
|
-
commands.push(' case "${WANTED_RUBY%%.*}" in');
|
|
118
|
-
commands.push(' \'\'|*[!0-9]*) WANTED_RUBY="" ;;');
|
|
119
|
-
commands.push(' esac');
|
|
120
|
-
commands.push(' # The Rubies this machine has: a Homebrew `ruby@3.3` keg, and Homebrew\'s');
|
|
121
|
-
commands.push(' # `ruby` with its major.minor. Both keg-only, so neither is on PATH.');
|
|
122
|
-
commands.push(' RUBY33=""');
|
|
123
|
-
commands.push(' BREW_RUBY=""');
|
|
124
|
-
commands.push(' BREW_RUBY_MM=""');
|
|
125
|
-
commands.push(' if command -v brew &>/dev/null; then');
|
|
126
|
-
commands.push(' RUBY33="$(brew --prefix --installed ruby@3.3 2>/dev/null || true)"');
|
|
127
|
-
commands.push(' if [ -n "$RUBY33" ] && [ ! -x "$RUBY33/bin/ruby" ]; then RUBY33=""; fi');
|
|
128
|
-
commands.push(' BREW_RUBY="$(brew --prefix --installed ruby 2>/dev/null || true)"');
|
|
129
|
-
commands.push(' if [ -n "$BREW_RUBY" ] && [ -x "$BREW_RUBY/bin/ruby" ]; then');
|
|
130
|
-
commands.push(' BREW_RUBY_MM="$(brew list --versions ruby 2>/dev/null | awk \'{ split($2, v, "."); print v[1] "." v[2]; exit }\')"');
|
|
131
|
-
commands.push(' else');
|
|
132
|
-
commands.push(' BREW_RUBY=""');
|
|
133
|
-
commands.push(' fi');
|
|
134
|
-
commands.push(' fi');
|
|
135
|
-
commands.push(' WANTED_MAJOR="${WANTED_RUBY%%.*}"');
|
|
136
|
-
commands.push(' WANTED_MM="$(printf \'%s\' "$WANTED_RUBY" | awk -F. \'{ print $1 "." $2 }\')"');
|
|
137
|
-
commands.push(' if [ -z "$WANTED_RUBY" ] || [ "$WANTED_MAJOR" -lt 3 ]; then');
|
|
138
|
-
commands.push(' if [ -z "$WANTED_RUBY" ]; then');
|
|
139
|
-
commands.push(' if [ -n "$RUBY33" ]; then');
|
|
140
|
-
commands.push(' export PATH="$RUBY33/bin:$PATH"');
|
|
141
|
-
commands.push(' RUBY_REASON="Ruby 3.3: lockfile names no Ruby, and system Ruby 2.6 cannot build native gems"');
|
|
142
|
-
commands.push(' else');
|
|
143
|
-
commands.push(' RUBY_REASON="system: lockfile names no Ruby, and no Ruby 3.3 is installed"');
|
|
144
|
-
commands.push(' fi');
|
|
145
|
-
commands.push(' elif [ -n "$RUBY33" ]; then');
|
|
146
|
-
commands.push(' export PATH="$RUBY33/bin:$PATH"');
|
|
147
|
-
commands.push(' RUBY_REASON="from $WANTED_FROM $WANTED_RUBY, run on Ruby 3.3: system Ruby 2.6 cannot build native gems"');
|
|
148
|
-
commands.push(' else');
|
|
149
|
-
commands.push(' RUBY_REASON="from $WANTED_FROM $WANTED_RUBY, and no Ruby 3.3 is installed"');
|
|
150
|
-
commands.push(' fi');
|
|
151
|
-
commands.push(' else');
|
|
152
|
-
commands.push(' RUBY_REASON="from $WANTED_FROM $WANTED_RUBY"');
|
|
153
|
-
commands.push(' if [ "$WANTED_MAJOR" -eq 3 ] && [ -n "$RUBY33" ] && [ "$BREW_RUBY_MM" != "$WANTED_MM" ]; then');
|
|
154
|
-
commands.push(' export PATH="$RUBY33/bin:$PATH"');
|
|
155
|
-
commands.push(' [ "$WANTED_MM" != "3.3" ] && RUBY_REASON="$RUBY_REASON, run on Ruby 3.3"');
|
|
156
|
-
commands.push(' elif [ -n "$BREW_RUBY" ]; then');
|
|
157
|
-
commands.push(' export PATH="$BREW_RUBY/bin:$PATH"');
|
|
158
|
-
commands.push(' else');
|
|
159
|
-
commands.push(' RUBY_REASON="$RUBY_REASON, but no Homebrew Ruby is installed"');
|
|
160
|
-
commands.push(' fi');
|
|
161
|
-
commands.push(' fi');
|
|
162
|
-
commands.push(' if ! command -v bundle &>/dev/null && ! command -v gem &>/dev/null; then');
|
|
163
|
-
commands.push(' USE_BUNDLE_EXEC="false"');
|
|
164
|
-
commands.push(' echo "No bundle or gem on PATH — running pod directly"');
|
|
165
|
-
commands.push(' fi');
|
|
166
|
-
commands.push('fi');
|
|
167
|
-
commands.push('if [ "$USE_BUNDLE_EXEC" = "true" ]; then');
|
|
168
|
-
commands.push(' export GEM_HOME="${CIBUILD_SCRATCH:-${TMPDIR:-/tmp}}/cibuild-gems"');
|
|
169
|
-
commands.push(' mkdir -p "$GEM_HOME"');
|
|
170
|
-
commands.push(' export PATH="$GEM_HOME/bin:$PATH"');
|
|
171
|
-
commands.push(' RUBY_VERSION_USED="$(ruby -e \'print RUBY_VERSION\' 2>/dev/null || echo unknown)"');
|
|
172
|
-
commands.push(' echo "Ruby: $(command -v ruby || echo none) ($RUBY_VERSION_USED), GEM_HOME: $GEM_HOME — $RUBY_REASON"');
|
|
173
|
-
commands.push(' LOCKED_BUNDLER=""');
|
|
174
|
-
commands.push(' if [ -f "Gemfile.lock" ]; then');
|
|
175
|
-
commands.push(' LOCKED_BUNDLER="$(awk \'/^BUNDLED WITH/ { getline; gsub(/[[:space:]]/, ""); print; exit }\' Gemfile.lock)"');
|
|
176
|
-
commands.push(' fi');
|
|
177
|
-
commands.push(' if [ -n "$LOCKED_BUNDLER" ]; then');
|
|
178
|
-
commands.push(' if ! gem list -i bundler -v "$LOCKED_BUNDLER" &>/dev/null; then');
|
|
179
|
-
commands.push(' echo "Installing bundler $LOCKED_BUNDLER, which Gemfile.lock names under BUNDLED WITH"');
|
|
180
|
-
commands.push(' if ! gem install bundler -v "$LOCKED_BUNDLER" --no-document; then');
|
|
181
|
-
commands.push(' echo "❌ Error: could not install bundler $LOCKED_BUNDLER (Gemfile.lock BUNDLED WITH) under Ruby $RUBY_VERSION_USED"');
|
|
182
|
-
commands.push(' exit 1');
|
|
183
|
-
commands.push(' fi');
|
|
184
|
-
commands.push(' fi');
|
|
185
|
-
commands.push(' BUNDLE_CMD="bundle _${LOCKED_BUNDLER}_"');
|
|
186
|
-
commands.push(' elif ! command -v bundle &>/dev/null; then');
|
|
187
|
-
commands.push(' echo "Installing bundler — none on PATH and Gemfile.lock names no version"');
|
|
188
|
-
commands.push(' gem install bundler --no-document');
|
|
189
|
-
commands.push(' fi');
|
|
190
|
-
commands.push(' $BUNDLE_CMD install --quiet');
|
|
191
|
-
commands.push('fi');
|
|
192
|
-
commands.push('');
|
|
193
|
-
// Build pod command
|
|
194
|
-
const verboseFlag = verbose ? ' --verbose' : '';
|
|
195
|
-
commands.push(`POD_CMD="${this.escapeBash(command)}${verboseFlag}"`);
|
|
196
|
-
commands.push('');
|
|
197
|
-
// One invocation, chosen up front, so the retry wraps it once rather than
|
|
198
|
-
// once per branch. `pod install` clones each pod's source over https, and a
|
|
199
|
-
// refused anonymous clone there fails the step exactly as it does during a
|
|
200
|
-
// Swift package resolve — same signature, same fix.
|
|
201
|
-
commands.push('if [ "$USE_BUNDLE_EXEC" = "true" ]; then');
|
|
202
|
-
commands.push(' POD_INVOCATION="$BUNDLE_CMD exec pod"');
|
|
203
|
-
commands.push('else');
|
|
204
|
-
commands.push(' POD_INVOCATION="pod"');
|
|
205
|
-
commands.push('fi');
|
|
206
|
-
commands.push('echo "Running: $POD_INVOCATION $POD_CMD"');
|
|
207
|
-
commands.push('');
|
|
208
|
-
commands.push(...refusedFetchHelpers());
|
|
209
|
-
commands.push(...retryOnRefusedFetch({
|
|
210
|
-
label: 'CocoaPods dependency fetch',
|
|
211
|
-
command: '$POD_INVOCATION $POD_CMD',
|
|
212
|
-
}));
|
|
213
|
-
commands.push('');
|
|
214
|
-
commands.push(...podDeploymentFloorLines());
|
|
215
|
-
commands.push('echo "✅ CocoaPods ${POD_CMD%% *} completed"');
|
|
216
|
-
const script = this.createBashScriptFromCommands(commands, stepName);
|
|
217
|
-
return this.createScriptStep(script, stepName);
|
|
218
|
-
}
|
|
219
|
-
}
|
|
220
|
-
/**
|
|
221
|
-
* Runs a Carthage command (bootstrap/update/build) to manage dependencies.
|
|
222
|
-
*/
|
|
223
|
-
export class CarthageStepExecutor extends BaseStepExecutor {
|
|
224
|
-
getValidationRequirements(_inputs, _env, _config) {
|
|
225
|
-
return [
|
|
226
|
-
this.requireCommand('carthage', 'Carthage is required', 'Install: brew install carthage'),
|
|
227
|
-
];
|
|
228
|
-
}
|
|
229
|
-
async execute(inputs, _env, _config) {
|
|
230
|
-
const stepName = 'carthage';
|
|
231
|
-
const carthageCommand = this.getInput(inputs, 'carthage_command', 'bootstrap');
|
|
232
|
-
const carthageOptions = this.getInput(inputs, 'carthage_options', '');
|
|
233
|
-
const githubAccessToken = this.getInput(inputs, 'github_access_token', '');
|
|
234
|
-
const verbose = this.getInput(inputs, 'verbose', false);
|
|
235
|
-
const commands = [];
|
|
236
|
-
commands.push('# carthage');
|
|
237
|
-
commands.push(`echo "🔧 Running Carthage ${this.escapeBash(carthageCommand)}..."`);
|
|
238
|
-
commands.push('');
|
|
239
|
-
// Navigate to source dir if available
|
|
240
|
-
commands.push('if [ -n "$CIBUILD_SOURCE_DIR" ]; then');
|
|
241
|
-
commands.push(' cd "$CIBUILD_SOURCE_DIR"');
|
|
242
|
-
commands.push('fi');
|
|
243
|
-
commands.push('');
|
|
244
|
-
// Check for Cartfile
|
|
245
|
-
commands.push('if [ ! -f "Cartfile" ]; then');
|
|
246
|
-
commands.push(' echo "❌ Error: Cartfile not found in $(pwd)"');
|
|
247
|
-
commands.push(' exit 1');
|
|
248
|
-
commands.push('fi');
|
|
249
|
-
commands.push('');
|
|
250
|
-
// Set GitHub access token if provided
|
|
251
|
-
if (githubAccessToken) {
|
|
252
|
-
commands.push('# Set GitHub access token to avoid rate limiting');
|
|
253
|
-
commands.push(`export GITHUB_ACCESS_TOKEN='${this.escapeBash(githubAccessToken)}'`);
|
|
254
|
-
commands.push('');
|
|
255
|
-
}
|
|
256
|
-
else {
|
|
257
|
-
commands.push('# Use GITHUB_ACCESS_TOKEN from env if available');
|
|
258
|
-
commands.push('if [ -n "$GITHUB_ACCESS_TOKEN" ]; then');
|
|
259
|
-
commands.push(' echo "Using GitHub access token from environment"');
|
|
260
|
-
commands.push('fi');
|
|
261
|
-
commands.push('');
|
|
262
|
-
}
|
|
263
|
-
// Build command
|
|
264
|
-
let cmd = `carthage ${this.escapeBash(carthageCommand)}`;
|
|
265
|
-
if (carthageOptions) {
|
|
266
|
-
cmd += ` ${carthageOptions}`;
|
|
267
|
-
}
|
|
268
|
-
if (verbose) {
|
|
269
|
-
cmd += ' --verbose';
|
|
270
|
-
}
|
|
271
|
-
commands.push(`echo "Running: ${cmd}"`);
|
|
272
|
-
commands.push(cmd);
|
|
273
|
-
commands.push('');
|
|
274
|
-
commands.push(`echo "✅ Carthage ${this.escapeBash(carthageCommand)} completed"`);
|
|
275
|
-
const script = this.createBashScriptFromCommands(commands, stepName);
|
|
276
|
-
return this.createScriptStep(script, stepName);
|
|
277
|
-
}
|
|
278
|
-
}
|
|
279
|
-
//# sourceMappingURL=ios-deps.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ios-deps.test.d.ts","sourceRoot":"","sources":["../../../../src/yaml/steps/ios-deps.test.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Tests for iOS dependency management steps: cocoapods-install, carthage
|
|
3
|
-
*/
|
|
4
|
-
import { describe, test, expect } from '@jest/globals';
|
|
5
|
-
import { CocoapodsInstallStepExecutor, CarthageStepExecutor } from './ios-deps.js';
|
|
6
|
-
import { testConfig } from './test-config.js';
|
|
7
|
-
describe('CocoapodsInstallStepExecutor', () => {
|
|
8
|
-
test('should generate pod install script', async () => {
|
|
9
|
-
const executor = new CocoapodsInstallStepExecutor();
|
|
10
|
-
const result = await executor.execute({}, {}, testConfig);
|
|
11
|
-
expect(result.kind).toBe('script');
|
|
12
|
-
expect(result.name).toBe('cocoapods-install');
|
|
13
|
-
expect(result.script).toContain('pod');
|
|
14
|
-
expect(result.script).toContain('install');
|
|
15
|
-
expect(result.script).toContain('Podfile');
|
|
16
|
-
});
|
|
17
|
-
test('should support pod update command', async () => {
|
|
18
|
-
const executor = new CocoapodsInstallStepExecutor();
|
|
19
|
-
const result = await executor.execute({ command: 'update' }, {}, testConfig);
|
|
20
|
-
expect(result.script).toContain('update');
|
|
21
|
-
});
|
|
22
|
-
test('should support verbose mode', async () => {
|
|
23
|
-
const executor = new CocoapodsInstallStepExecutor();
|
|
24
|
-
const result = await executor.execute({ verbose: true }, {}, testConfig);
|
|
25
|
-
expect(result.script).toContain('--verbose');
|
|
26
|
-
});
|
|
27
|
-
test('should detect Gemfile and use bundle exec', async () => {
|
|
28
|
-
const executor = new CocoapodsInstallStepExecutor();
|
|
29
|
-
const result = await executor.execute({}, {}, testConfig);
|
|
30
|
-
expect(result.script).toContain('bundle exec');
|
|
31
|
-
expect(result.script).toContain('Gemfile');
|
|
32
|
-
});
|
|
33
|
-
test('should support custom source root path', async () => {
|
|
34
|
-
const executor = new CocoapodsInstallStepExecutor();
|
|
35
|
-
const result = await executor.execute({ source_root_path: '/path/to/project' }, {}, testConfig);
|
|
36
|
-
expect(result.script).toContain('/path/to/project');
|
|
37
|
-
});
|
|
38
|
-
test('should support explicit podfile path', async () => {
|
|
39
|
-
const executor = new CocoapodsInstallStepExecutor();
|
|
40
|
-
const result = await executor.execute({ podfile_path: '/path/to/Podfile' }, {}, testConfig);
|
|
41
|
-
expect(result.script).toContain('/path/to/Podfile');
|
|
42
|
-
});
|
|
43
|
-
test('should check for Podfile existence', async () => {
|
|
44
|
-
const executor = new CocoapodsInstallStepExecutor();
|
|
45
|
-
const result = await executor.execute({}, {}, testConfig);
|
|
46
|
-
expect(result.script).toContain('Podfile not found');
|
|
47
|
-
expect(result.script).toContain('exit 1');
|
|
48
|
-
});
|
|
49
|
-
});
|
|
50
|
-
describe('CarthageStepExecutor', () => {
|
|
51
|
-
test('should generate carthage bootstrap script', async () => {
|
|
52
|
-
const executor = new CarthageStepExecutor();
|
|
53
|
-
const result = await executor.execute({}, {}, testConfig);
|
|
54
|
-
expect(result.kind).toBe('script');
|
|
55
|
-
expect(result.name).toBe('carthage');
|
|
56
|
-
expect(result.script).toContain('carthage bootstrap');
|
|
57
|
-
});
|
|
58
|
-
test('should support update command', async () => {
|
|
59
|
-
const executor = new CarthageStepExecutor();
|
|
60
|
-
const result = await executor.execute({ carthage_command: 'update' }, {}, testConfig);
|
|
61
|
-
expect(result.script).toContain('carthage update');
|
|
62
|
-
});
|
|
63
|
-
test('should support build command', async () => {
|
|
64
|
-
const executor = new CarthageStepExecutor();
|
|
65
|
-
const result = await executor.execute({ carthage_command: 'build' }, {}, testConfig);
|
|
66
|
-
expect(result.script).toContain('carthage build');
|
|
67
|
-
});
|
|
68
|
-
test('should support additional options', async () => {
|
|
69
|
-
const executor = new CarthageStepExecutor();
|
|
70
|
-
const result = await executor.execute({ carthage_options: '--platform ios --use-xcframeworks' }, {}, testConfig);
|
|
71
|
-
expect(result.script).toContain('--platform ios --use-xcframeworks');
|
|
72
|
-
});
|
|
73
|
-
test('should support verbose mode', async () => {
|
|
74
|
-
const executor = new CarthageStepExecutor();
|
|
75
|
-
const result = await executor.execute({ verbose: true }, {}, testConfig);
|
|
76
|
-
expect(result.script).toContain('--verbose');
|
|
77
|
-
});
|
|
78
|
-
test('should support GitHub access token', async () => {
|
|
79
|
-
const executor = new CarthageStepExecutor();
|
|
80
|
-
const result = await executor.execute({ github_access_token: 'ghp_test123' }, {}, testConfig);
|
|
81
|
-
expect(result.script).toContain('GITHUB_ACCESS_TOKEN');
|
|
82
|
-
});
|
|
83
|
-
test('should check for Cartfile existence', async () => {
|
|
84
|
-
const executor = new CarthageStepExecutor();
|
|
85
|
-
const result = await executor.execute({}, {}, testConfig);
|
|
86
|
-
expect(result.script).toContain('Cartfile not found');
|
|
87
|
-
expect(result.script).toContain('exit 1');
|
|
88
|
-
});
|
|
89
|
-
});
|
|
90
|
-
//# sourceMappingURL=ios-deps.test.js.map
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* iOS code signing step: certificate-installer
|
|
3
|
-
* Installs .p12 certificates and provisioning profiles into the macOS keychain.
|
|
4
|
-
*/
|
|
5
|
-
import { BaseStepExecutor } from './base.js';
|
|
6
|
-
import type { StepDef, CIConfig } from '../../types.js';
|
|
7
|
-
import type { ValidationRequirement, StepOutput } from '../validation-types.js';
|
|
8
|
-
export interface CertificateInstallerInputs {
|
|
9
|
-
/** URL(s) to .p12 certificate files (pipe-separated). Supports file:// */
|
|
10
|
-
certificate_url?: string;
|
|
11
|
-
/** Certificate passphrase(s), pipe-separated to match certificate_url count */
|
|
12
|
-
certificate_passphrase?: string;
|
|
13
|
-
/** URL(s) to provisioning profile files (pipe-separated). Supports file:// */
|
|
14
|
-
provisioning_profile_url?: string;
|
|
15
|
-
/** Path to the keychain to use */
|
|
16
|
-
keychain_path?: string;
|
|
17
|
-
/** Password for the keychain */
|
|
18
|
-
keychain_password?: string;
|
|
19
|
-
/** Enable verbose logging */
|
|
20
|
-
verbose?: string;
|
|
21
|
-
}
|
|
22
|
-
/**
|
|
23
|
-
* Installs Apple code signing certificates (.p12) and provisioning profiles
|
|
24
|
-
* into the macOS keychain for Xcode builds.
|
|
25
|
-
*/
|
|
26
|
-
export declare class CertificateInstallerStepExecutor extends BaseStepExecutor {
|
|
27
|
-
getValidationRequirements(_inputs: CertificateInstallerInputs, _env: Record<string, string>, _config: CIConfig): ValidationRequirement[];
|
|
28
|
-
getOutputs(): StepOutput[];
|
|
29
|
-
execute(inputs: CertificateInstallerInputs, _env: Record<string, string>, _config: CIConfig): Promise<StepDef>;
|
|
30
|
-
}
|
|
31
|
-
//# sourceMappingURL=ios-signing.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ios-signing.d.ts","sourceRoot":"","sources":["../../../../src/yaml/steps/ios-signing.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,KAAK,EAAE,qBAAqB,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEhF,MAAM,WAAW,0BAA0B;IACzC,0EAA0E;IAC1E,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,+EAA+E;IAC/E,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,8EAA8E;IAC9E,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,kCAAkC;IAClC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gCAAgC;IAChC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,6BAA6B;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;GAGG;AACH,qBAAa,gCAAiC,SAAQ,gBAAgB;IACpE,yBAAyB,CACvB,OAAO,EAAE,0BAA0B,EACnC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC5B,OAAO,EAAE,QAAQ,GAChB,qBAAqB,EAAE;IAM1B,UAAU,IAAI,UAAU,EAAE;IAIpB,OAAO,CAAC,MAAM,EAAE,0BAA0B,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;CAwIrH"}
|
|
@@ -1,144 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* iOS code signing step: certificate-installer
|
|
3
|
-
* Installs .p12 certificates and provisioning profiles into the macOS keychain.
|
|
4
|
-
*/
|
|
5
|
-
import { BaseStepExecutor } from './base.js';
|
|
6
|
-
/**
|
|
7
|
-
* Installs Apple code signing certificates (.p12) and provisioning profiles
|
|
8
|
-
* into the macOS keychain for Xcode builds.
|
|
9
|
-
*/
|
|
10
|
-
export class CertificateInstallerStepExecutor extends BaseStepExecutor {
|
|
11
|
-
getValidationRequirements(_inputs, _env, _config) {
|
|
12
|
-
return [
|
|
13
|
-
this.requireCommand('security', 'macOS security command is required for keychain operations'),
|
|
14
|
-
];
|
|
15
|
-
}
|
|
16
|
-
getOutputs() {
|
|
17
|
-
return [];
|
|
18
|
-
}
|
|
19
|
-
async execute(inputs, _env, _config) {
|
|
20
|
-
const stepName = 'certificate-installer';
|
|
21
|
-
const certificateUrl = this.getInput(inputs, 'certificate_url', '$CIBUILD_CERTIFICATE_URL');
|
|
22
|
-
const certificatePassphrase = this.getInput(inputs, 'certificate_passphrase', '$CIBUILD_CERTIFICATE_PASSPHRASE');
|
|
23
|
-
const provisioningProfileUrl = this.getInput(inputs, 'provisioning_profile_url', '$CIBUILD_PROVISION_URL');
|
|
24
|
-
const keychainPath = this.getInput(inputs, 'keychain_path', '$HOME/Library/Keychains/login.keychain');
|
|
25
|
-
const keychainPassword = this.getInput(inputs, 'keychain_password', '$CIBUILD_KEYCHAIN_PASSWORD');
|
|
26
|
-
const verbose = this.getInput(inputs, 'verbose', 'false') === 'true';
|
|
27
|
-
const commands = [];
|
|
28
|
-
commands.push('# certificate-installer — install certs & profiles into keychain');
|
|
29
|
-
commands.push('echo "🔐 Installing certificates and provisioning profiles..."');
|
|
30
|
-
commands.push('');
|
|
31
|
-
// Keychain setup
|
|
32
|
-
commands.push(`KEYCHAIN_PATH='${this.escapeBash(keychainPath)}'`);
|
|
33
|
-
commands.push(`KEYCHAIN_PASSWORD='${this.escapeBash(keychainPassword)}'`);
|
|
34
|
-
commands.push('');
|
|
35
|
-
// Ensure keychain exists and is unlocked
|
|
36
|
-
commands.push('# Unlock keychain');
|
|
37
|
-
commands.push('if [ ! -f "$KEYCHAIN_PATH" ]; then');
|
|
38
|
-
commands.push(' echo "Keychain not found at $KEYCHAIN_PATH — creating..."');
|
|
39
|
-
commands.push(' security create-keychain -p "$KEYCHAIN_PASSWORD" "$KEYCHAIN_PATH"');
|
|
40
|
-
commands.push('fi');
|
|
41
|
-
commands.push('security unlock-keychain -p "$KEYCHAIN_PASSWORD" "$KEYCHAIN_PATH"');
|
|
42
|
-
commands.push('');
|
|
43
|
-
// Set keychain settings — keep it unlocked
|
|
44
|
-
commands.push('# Set keychain settings');
|
|
45
|
-
commands.push('security set-keychain-settings -lut 7200 "$KEYCHAIN_PATH"');
|
|
46
|
-
commands.push('');
|
|
47
|
-
// Add keychain to search list
|
|
48
|
-
commands.push('# Add keychain to search list');
|
|
49
|
-
commands.push('EXISTING_KEYCHAINS=$(security list-keychains -d user | tr -d \'"\' | tr \'\\n\' \' \')');
|
|
50
|
-
commands.push('security list-keychains -d user -s $EXISTING_KEYCHAINS "$KEYCHAIN_PATH"');
|
|
51
|
-
commands.push('security default-keychain -s "$KEYCHAIN_PATH"');
|
|
52
|
-
commands.push('');
|
|
53
|
-
// Install certificates
|
|
54
|
-
commands.push('# Install certificates');
|
|
55
|
-
commands.push(`CERT_URLS='${this.escapeBash(certificateUrl)}'`);
|
|
56
|
-
commands.push(`CERT_PASSPHRASES='${this.escapeBash(certificatePassphrase)}'`);
|
|
57
|
-
commands.push('');
|
|
58
|
-
commands.push('if [ -n "$CERT_URLS" ]; then');
|
|
59
|
-
commands.push(' IFS="|" read -ra URL_ARRAY <<< "$CERT_URLS"');
|
|
60
|
-
commands.push(' IFS="|" read -ra PASS_ARRAY <<< "$CERT_PASSPHRASES"');
|
|
61
|
-
commands.push(' CERT_INDEX=0');
|
|
62
|
-
commands.push(' for CERT_URL in "${URL_ARRAY[@]}"; do');
|
|
63
|
-
commands.push(' CERT_URL=$(echo "$CERT_URL" | xargs)');
|
|
64
|
-
commands.push(' [ -z "$CERT_URL" ] && continue');
|
|
65
|
-
commands.push(' CERT_PASS="${PASS_ARRAY[$CERT_INDEX]:-}"');
|
|
66
|
-
commands.push(' CERT_FILE=$(mktemp /tmp/cert_XXXXXX.p12)');
|
|
67
|
-
commands.push(' ');
|
|
68
|
-
commands.push(' if [[ "$CERT_URL" == file://* ]]; then');
|
|
69
|
-
commands.push(' LOCAL_PATH="${CERT_URL#file://}"');
|
|
70
|
-
commands.push(' cp "$LOCAL_PATH" "$CERT_FILE"');
|
|
71
|
-
commands.push(' else');
|
|
72
|
-
if (verbose) {
|
|
73
|
-
commands.push(' echo "Downloading certificate from: $CERT_URL"');
|
|
74
|
-
}
|
|
75
|
-
commands.push(' curl -fsSL "$CERT_URL" -o "$CERT_FILE"');
|
|
76
|
-
commands.push(' fi');
|
|
77
|
-
commands.push(' ');
|
|
78
|
-
commands.push(' echo "Installing certificate $((CERT_INDEX + 1))..."');
|
|
79
|
-
commands.push(' security import "$CERT_FILE" -k "$KEYCHAIN_PATH" -P "$CERT_PASS" -T /usr/bin/codesign -T /usr/bin/security');
|
|
80
|
-
commands.push(' rm -f "$CERT_FILE"');
|
|
81
|
-
commands.push(' CERT_INDEX=$((CERT_INDEX + 1))');
|
|
82
|
-
commands.push(' done');
|
|
83
|
-
commands.push(' echo "Installed $CERT_INDEX certificate(s)"');
|
|
84
|
-
commands.push('fi');
|
|
85
|
-
commands.push('');
|
|
86
|
-
// Allow codesign to access the keychain without prompt
|
|
87
|
-
commands.push('# Allow codesign access without prompt');
|
|
88
|
-
commands.push('security set-key-partition-list -S apple-tool:,apple:,codesign: -s -k "$KEYCHAIN_PASSWORD" "$KEYCHAIN_PATH" 2>/dev/null || true');
|
|
89
|
-
commands.push('');
|
|
90
|
-
// Install provisioning profiles
|
|
91
|
-
commands.push('# Install provisioning profiles');
|
|
92
|
-
commands.push(`PROFILE_URLS='${this.escapeBash(provisioningProfileUrl)}'`);
|
|
93
|
-
commands.push('PROFILES_DIR="$HOME/Library/MobileDevice/Provisioning Profiles"');
|
|
94
|
-
commands.push('mkdir -p "$PROFILES_DIR"');
|
|
95
|
-
commands.push('');
|
|
96
|
-
commands.push('if [ -n "$PROFILE_URLS" ]; then');
|
|
97
|
-
commands.push(' IFS="|" read -ra PROFILE_URL_ARRAY <<< "$PROFILE_URLS"');
|
|
98
|
-
commands.push(' PROFILE_INDEX=0');
|
|
99
|
-
commands.push(' for PROFILE_URL in "${PROFILE_URL_ARRAY[@]}"; do');
|
|
100
|
-
commands.push(' PROFILE_URL=$(echo "$PROFILE_URL" | xargs)');
|
|
101
|
-
commands.push(' [ -z "$PROFILE_URL" ] && continue');
|
|
102
|
-
commands.push(' PROFILE_FILE=$(mktemp /tmp/profile_XXXXXX.mobileprovision)');
|
|
103
|
-
commands.push(' ');
|
|
104
|
-
commands.push(' if [[ "$PROFILE_URL" == file://* ]]; then');
|
|
105
|
-
commands.push(' LOCAL_PATH="${PROFILE_URL#file://}"');
|
|
106
|
-
commands.push(' cp "$LOCAL_PATH" "$PROFILE_FILE"');
|
|
107
|
-
commands.push(' else');
|
|
108
|
-
if (verbose) {
|
|
109
|
-
commands.push(' echo "Downloading provisioning profile from: $PROFILE_URL"');
|
|
110
|
-
}
|
|
111
|
-
commands.push(' curl -fsSL "$PROFILE_URL" -o "$PROFILE_FILE"');
|
|
112
|
-
commands.push(' fi');
|
|
113
|
-
commands.push(' ');
|
|
114
|
-
commands.push(' # Extract UUID from profile and install');
|
|
115
|
-
commands.push(' PROFILE_UUID=$(/usr/libexec/PlistBuddy -c "Print :UUID" /dev/stdin <<< "$(security cms -D -i "$PROFILE_FILE" 2>/dev/null)" 2>/dev/null || true)');
|
|
116
|
-
commands.push(' if [ -n "$PROFILE_UUID" ]; then');
|
|
117
|
-
commands.push(' cp "$PROFILE_FILE" "$PROFILES_DIR/$PROFILE_UUID.mobileprovision"');
|
|
118
|
-
commands.push(' echo "Installed profile $((PROFILE_INDEX + 1)): $PROFILE_UUID"');
|
|
119
|
-
commands.push(' else');
|
|
120
|
-
commands.push(' echo "⚠️ Warning: Could not extract UUID from profile $((PROFILE_INDEX + 1))"');
|
|
121
|
-
commands.push(' # Install with original name as fallback');
|
|
122
|
-
commands.push(' cp "$PROFILE_FILE" "$PROFILES_DIR/"');
|
|
123
|
-
commands.push(' fi');
|
|
124
|
-
commands.push(' rm -f "$PROFILE_FILE"');
|
|
125
|
-
commands.push(' PROFILE_INDEX=$((PROFILE_INDEX + 1))');
|
|
126
|
-
commands.push(' done');
|
|
127
|
-
commands.push(' echo "Installed $PROFILE_INDEX provisioning profile(s)"');
|
|
128
|
-
commands.push('fi');
|
|
129
|
-
commands.push('');
|
|
130
|
-
// Verify
|
|
131
|
-
if (verbose) {
|
|
132
|
-
commands.push('# List installed identities');
|
|
133
|
-
commands.push('echo "Installed signing identities:"');
|
|
134
|
-
commands.push('security find-identity -v -p codesigning "$KEYCHAIN_PATH"');
|
|
135
|
-
commands.push('');
|
|
136
|
-
commands.push('echo "Installed provisioning profiles:"');
|
|
137
|
-
commands.push('ls -la "$PROFILES_DIR/"');
|
|
138
|
-
}
|
|
139
|
-
commands.push('echo "✅ Certificate and profile installation complete"');
|
|
140
|
-
const script = this.createBashScriptFromCommands(commands, stepName);
|
|
141
|
-
return this.createScriptStep(script, stepName);
|
|
142
|
-
}
|
|
143
|
-
}
|
|
144
|
-
//# sourceMappingURL=ios-signing.js.map
|