@invarn/cibuild 2.9.5 → 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 -1092
- 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/capture-injection.d.ts +0 -30
- package/dist/src/yaml/steps/capture-injection.d.ts.map +0 -1
- package/dist/src/yaml/steps/capture-injection.js +0 -88
- package/dist/src/yaml/steps/capture-injection.test.d.ts +0 -2
- package/dist/src/yaml/steps/capture-injection.test.d.ts.map +0 -1
- package/dist/src/yaml/steps/capture-injection.test.js +0 -163
- 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 -386
- 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 -344
- 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 -279
- 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 -1350
- 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,209 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* `cache-pull` restores every cached path to the root it was recorded against.
|
|
3
|
-
*
|
|
4
|
-
* `cache-push` archives two kinds of entry in one tarball. A `~`- or `/`-rooted
|
|
5
|
-
* path is expanded and tar stores it with the leading `/` stripped
|
|
6
|
-
* (`/home/builder/.gradle/caches` -> `home/builder/.gradle/caches`). A
|
|
7
|
-
* project-relative path (`Pods`, `.gradle`, `node_modules`) is stored as-is,
|
|
8
|
-
* relative to the step's working directory. Every restore then used a single
|
|
9
|
-
* `tar -xf - -C /`, which is right for the first kind and impossible for the
|
|
10
|
-
* second: the build user cannot create `/Pods`.
|
|
11
|
-
*
|
|
12
|
-
* Three shapes, three different failures, all measured before this was fixed:
|
|
13
|
-
*
|
|
14
|
-
* | `cache_paths` | before |
|
|
15
|
-
* |------------------------------------------|---------------------------------|
|
|
16
|
-
* | all `~`-rooted | correct |
|
|
17
|
-
* | mixed (every Gradle/Android pipeline) | `~` half landed, relative half never did, tar exited non-zero, reported **cold** on a build that was warm |
|
|
18
|
-
* | all project-relative (Pods, node_modules)| **nothing** landed — those caches were written on every build and had never restored |
|
|
19
|
-
*
|
|
20
|
-
* So the mixed shape lied and the all-relative shape silently did nothing. Both
|
|
21
|
-
* are asserted here, and the all-`~` shape is asserted too because it already
|
|
22
|
-
* worked and the fix must not cost it anything.
|
|
23
|
-
*
|
|
24
|
-
* ### Why this runs the real `tar`
|
|
25
|
-
*
|
|
26
|
-
* The sibling daemon suite stubs `tar` to `cat > /dev/null`, because the
|
|
27
|
-
* generated script extracts with `-C /` and nothing there is worth writing to
|
|
28
|
-
* the root of the machine running the suite. This suite cannot: *where the
|
|
29
|
-
* bytes land* is the entire question, and a stub answers it by construction.
|
|
30
|
-
*
|
|
31
|
-
* It stays out of the real root by pointing `CIBUILD_USER_HOME` at a temporary
|
|
32
|
-
* directory. `~/.gradle/caches` then expands to an absolute path *inside* that
|
|
33
|
-
* directory, so `-C /` reassembles it exactly where it belongs and writes
|
|
34
|
-
* nothing outside the temp tree. The path is resolved through `realpath` first:
|
|
35
|
-
* on macOS `/var` is a symlink to `/private/var`, and tar refuses to extract
|
|
36
|
-
* through a symlink.
|
|
37
|
-
*
|
|
38
|
-
* `zstd` is stubbed to an identity copy, as in the sibling suite — it is not on
|
|
39
|
-
* every host, and compression is not what is under test.
|
|
40
|
-
*/
|
|
41
|
-
import { describe, test, expect } from '@jest/globals';
|
|
42
|
-
import { execFile } from 'child_process';
|
|
43
|
-
import { createHash } from 'crypto';
|
|
44
|
-
import { mkdtempSync, mkdirSync, writeFileSync, readFileSync, existsSync, realpathSync, rmSync, chmodSync, } from 'fs';
|
|
45
|
-
import { join } from 'path';
|
|
46
|
-
import { tmpdir } from 'os';
|
|
47
|
-
import { promisify } from 'util';
|
|
48
|
-
import { CachePullStepExecutor } from './cache.js';
|
|
49
|
-
import { testConfigNoPeer } from './test-config.js';
|
|
50
|
-
const run = promisify(execFile);
|
|
51
|
-
const CACHE_KEY = 'gradle-abc123def456-fingerprint';
|
|
52
|
-
/**
|
|
53
|
-
* An explicit `cache_key` is prefixed with a project scope so two repositories
|
|
54
|
-
* that write the same key don't share one tarball. These fixtures run outside a
|
|
55
|
-
* git remote, so the step's shell falls back to hashing the literal
|
|
56
|
-
* `"no-remote"` — derived here rather than pasted, so it tracks the step.
|
|
57
|
-
*/
|
|
58
|
-
const PROJECT_SCOPE = createHash('sha256').update('no-remote', 'utf8').digest('hex').slice(0, 8);
|
|
59
|
-
const SCOPED_CACHE_KEY = `${PROJECT_SCOPE}-${CACHE_KEY}`;
|
|
60
|
-
async function restore(shape) {
|
|
61
|
-
// Resolved: see the header — tar will not extract through a symlink, and on
|
|
62
|
-
// macOS the temp root sits behind one.
|
|
63
|
-
const root = realpathSync(mkdtempSync(join(tmpdir(), 'cibuild-restore-roots-')));
|
|
64
|
-
const home = join(root, 'home');
|
|
65
|
-
const checkout = join(root, 'checkout');
|
|
66
|
-
const bin = join(root, 'bin');
|
|
67
|
-
mkdirSync(home, { recursive: true });
|
|
68
|
-
mkdirSync(checkout, { recursive: true });
|
|
69
|
-
mkdirSync(bin, { recursive: true });
|
|
70
|
-
try {
|
|
71
|
-
// Identity stand-in for zstd: copies a named file, or stdin when the
|
|
72
|
-
// daemon path pipes into it.
|
|
73
|
-
writeFileSync(join(bin, 'zstd'), '#!/bin/bash\nfor a in "$@"; do case "$a" in -*) ;; *) exec cat "$a";; esac; done\nexec cat\n', 'utf-8');
|
|
74
|
-
chmodSync(join(bin, 'zstd'), 0o755);
|
|
75
|
-
// Create the content, remembering where each piece has to return to.
|
|
76
|
-
const landings = [];
|
|
77
|
-
const operands = [];
|
|
78
|
-
for (const f of shape.files) {
|
|
79
|
-
const [where, rel] = f.at.split(':', 2);
|
|
80
|
-
const base = where === 'home' ? home : checkout;
|
|
81
|
-
const abs = join(base, rel);
|
|
82
|
-
mkdirSync(join(abs, '..'), { recursive: true });
|
|
83
|
-
writeFileSync(abs, f.body, 'utf-8');
|
|
84
|
-
landings.push({ path: abs, body: f.body });
|
|
85
|
-
}
|
|
86
|
-
// The tar operands are what cache-push would have built: `~` paths
|
|
87
|
-
// expanded to absolute, project-relative paths left alone.
|
|
88
|
-
for (const p of shape.cachePaths) {
|
|
89
|
-
operands.push(p.startsWith('~') ? join(home, p.slice(2)) : p);
|
|
90
|
-
}
|
|
91
|
-
// One archive, mixed operands, created from the checkout — exactly what
|
|
92
|
-
// `tar -cf - "${PATHS_TO_CACHE[@]}"` produces.
|
|
93
|
-
const cacheDir = join(checkout, '.ci-cache');
|
|
94
|
-
mkdirSync(cacheDir, { recursive: true });
|
|
95
|
-
const tarball = join(cacheDir, `${SCOPED_CACHE_KEY}.tar.zst`);
|
|
96
|
-
await run('tar', ['-cf', tarball, ...operands], { cwd: checkout });
|
|
97
|
-
// Remove the originals: "it landed" is only meaningful if it was gone.
|
|
98
|
-
for (const l of landings)
|
|
99
|
-
rmSync(l.path, { force: true });
|
|
100
|
-
const { script } = await new CachePullStepExecutor().execute({ cache_key: CACHE_KEY, cache_paths: shape.cachePaths }, {}, testConfigNoPeer);
|
|
101
|
-
const scriptPath = join(root, '__cache_pull.sh');
|
|
102
|
-
writeFileSync(scriptPath, script, 'utf-8');
|
|
103
|
-
const env = {
|
|
104
|
-
...process.env,
|
|
105
|
-
PATH: `${bin}:${process.env.PATH}`,
|
|
106
|
-
CIBUILD_USER_HOME: home,
|
|
107
|
-
};
|
|
108
|
-
// The filesystem transport is the one under test here; the daemon URL
|
|
109
|
-
// would switch the script to the HTTP path.
|
|
110
|
-
delete env.CIBUILD_CACHE_DAEMON;
|
|
111
|
-
let stdout = '';
|
|
112
|
-
let exitCode = 0;
|
|
113
|
-
try {
|
|
114
|
-
const r = await run('bash', [scriptPath], {
|
|
115
|
-
cwd: checkout,
|
|
116
|
-
encoding: 'utf-8',
|
|
117
|
-
env,
|
|
118
|
-
timeout: 20000,
|
|
119
|
-
});
|
|
120
|
-
stdout = String(r.stdout) + String(r.stderr);
|
|
121
|
-
}
|
|
122
|
-
catch (e) {
|
|
123
|
-
const err = e;
|
|
124
|
-
stdout = String(err.stdout ?? '') + String(err.stderr ?? '');
|
|
125
|
-
exitCode = err.code ?? 1;
|
|
126
|
-
}
|
|
127
|
-
// Read the landings back while the tree is still alive.
|
|
128
|
-
const observed = landings.map((l) => ({
|
|
129
|
-
path: l.path,
|
|
130
|
-
body: existsSync(l.path) ? readFileSync(l.path, 'utf-8') : '',
|
|
131
|
-
}));
|
|
132
|
-
return { stdout, exitCode, landings: observed };
|
|
133
|
-
}
|
|
134
|
-
finally {
|
|
135
|
-
rmSync(root, { recursive: true, force: true });
|
|
136
|
-
}
|
|
137
|
-
}
|
|
138
|
-
describe('cache-pull restores each class of path to its own root', () => {
|
|
139
|
-
test('all `~`-rooted: keeps working, and still streams', async () => {
|
|
140
|
-
// The shape that was already correct. It is here so the fix cannot buy the
|
|
141
|
-
// other two at its expense.
|
|
142
|
-
const { stdout, exitCode, landings } = await restore({
|
|
143
|
-
cachePaths: ['~/.gradle/caches'],
|
|
144
|
-
files: [{ at: 'home:.gradle/caches/modules/marker', body: 'gradle-cache\n' }],
|
|
145
|
-
});
|
|
146
|
-
expect(exitCode).toBe(0);
|
|
147
|
-
expect(stdout).toContain('CACHE_SOURCE=local');
|
|
148
|
-
expect(stdout).not.toContain('CACHE_SOURCE=cold');
|
|
149
|
-
expect(landings).toEqual([
|
|
150
|
-
{ path: landings[0].path, body: 'gradle-cache\n' },
|
|
151
|
-
]);
|
|
152
|
-
});
|
|
153
|
-
test('mixed: reports warm AND the project-relative half lands in the checkout', async () => {
|
|
154
|
-
// Every Gradle/Android pipeline, including the one the README ships. Before
|
|
155
|
-
// the fix: the `~` half restored (that was the real warmth), `.gradle`
|
|
156
|
-
// could not become `/.gradle`, tar exited non-zero, and the step reported
|
|
157
|
-
// CACHE_SOURCE=cold — on the filesystem transport it ended the step outright.
|
|
158
|
-
const { stdout, exitCode, landings } = await restore({
|
|
159
|
-
cachePaths: ['~/.gradle/caches', '.gradle'],
|
|
160
|
-
files: [
|
|
161
|
-
{ at: 'home:.gradle/caches/modules/marker', body: 'gradle-cache\n' },
|
|
162
|
-
{ at: 'checkout:.gradle/configuration-cache/marker', body: 'project-gradle\n' },
|
|
163
|
-
],
|
|
164
|
-
});
|
|
165
|
-
expect(exitCode).toBe(0);
|
|
166
|
-
expect(stdout).toContain('CACHE_SOURCE=local');
|
|
167
|
-
expect(stdout).not.toContain('CACHE_SOURCE=cold');
|
|
168
|
-
// Both halves, at their own roots.
|
|
169
|
-
expect(landings.map((l) => l.body)).toEqual(['gradle-cache\n', 'project-gradle\n']);
|
|
170
|
-
});
|
|
171
|
-
test('all project-relative: restores into the checkout instead of nothing', async () => {
|
|
172
|
-
// The iOS/Pods and node shape. Before the fix every member was extracted to
|
|
173
|
-
// `/` and every one failed, so these caches were pushed on every build and
|
|
174
|
-
// had never restored anything — a silent miss that costs a `pod install`
|
|
175
|
-
// rather than failing a build, which is why it went unnoticed.
|
|
176
|
-
const { stdout, exitCode, landings } = await restore({
|
|
177
|
-
cachePaths: ['Pods', 'Podfile.lock'],
|
|
178
|
-
files: [
|
|
179
|
-
{ at: 'checkout:Pods/Alamofire/marker', body: 'pods\n' },
|
|
180
|
-
{ at: 'checkout:Podfile.lock', body: 'lock\n' },
|
|
181
|
-
],
|
|
182
|
-
});
|
|
183
|
-
expect(exitCode).toBe(0);
|
|
184
|
-
expect(stdout).toContain('CACHE_SOURCE=local');
|
|
185
|
-
expect(stdout).not.toContain('CACHE_SOURCE=cold');
|
|
186
|
-
expect(landings.map((l) => l.body)).toEqual(['pods\n', 'lock\n']);
|
|
187
|
-
});
|
|
188
|
-
test('a project-relative path is never written to the filesystem root', async () => {
|
|
189
|
-
// The direct statement of the bug: `Pods` must not be attempted at `/Pods`.
|
|
190
|
-
// Asserted on the generated script rather than by running it, because the
|
|
191
|
-
// only honest runtime check would be whether `/Pods` appeared on the
|
|
192
|
-
// machine running the suite.
|
|
193
|
-
const { script } = await new CachePullStepExecutor().execute({ cache_key: CACHE_KEY, cache_paths: ['~/.gradle/caches', 'Pods'] }, {}, testConfigNoPeer);
|
|
194
|
-
// No restore pipes into `tar -C /` any more; they all go through the
|
|
195
|
-
// helper, which picks the root per class. The helper keeps a single
|
|
196
|
-
// streaming `tar -xf - -C /` for the all-absolute shape, so the assertion
|
|
197
|
-
// is about the call sites, not about the string appearing anywhere.
|
|
198
|
-
expect(script).not.toContain('| tar -xf - -C /');
|
|
199
|
-
expect(script).toContain('| __ci_cache_extract');
|
|
200
|
-
// `Pods` is declared project-relative, so it can only be extracted
|
|
201
|
-
// relative to the checkout ...
|
|
202
|
-
expect(script).toContain('__ci_cache_rel+=(\'Pods\')');
|
|
203
|
-
// ... and the tilde path is expanded at runtime, then matched against the
|
|
204
|
-
// archive's own top-level names.
|
|
205
|
-
expect(script).toContain('__ci_cache_abs+=("${__ci_p#/}")');
|
|
206
|
-
expect(script).toContain('tar -xf "$__t" -C "$__ci_cache_root"');
|
|
207
|
-
});
|
|
208
|
-
});
|
|
209
|
-
//# sourceMappingURL=cache-pull-restore-roots.test.js.map
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* `cache-push` with an explicit `cache_key`, over the daemon.
|
|
3
|
-
*
|
|
4
|
-
* Every curated Invarn template uses the explicit-key form — `cache_key:
|
|
5
|
-
* pods-{{checksum "Podfile.lock"}}-$CIBUILD_GIT_BRANCH` and its Gradle/KMM
|
|
6
|
-
* siblings — for both halves of the pair. The pull side assigns the shell
|
|
7
|
-
* variable the daemon URL interpolates; the push side did not, and there is
|
|
8
|
-
* no `set -u`, so `$CACHE_KEY` expanded to nothing and the upload went to
|
|
9
|
-
* `<daemon>/cache/.tar.zst`. The daemon requires at least one character
|
|
10
|
-
* before `.tar.zst` and answers 400, which is exactly what the first real
|
|
11
|
-
* `invarn setup` proof logged on 2026-08-30:
|
|
12
|
-
*
|
|
13
|
-
* curl: (22) The requested URL returned error: 400
|
|
14
|
-
* Warning: failed to upload cache to the daemon
|
|
15
|
-
* [step_6] ✓ Success (109ms)
|
|
16
|
-
*
|
|
17
|
-
* Nothing was ever stored, so the pull could never hit, and every iOS build
|
|
18
|
-
* paid a cold `pod install`.
|
|
19
|
-
*
|
|
20
|
-
* These tests RUN the generated script. A containment check on the script
|
|
21
|
-
* text cannot see this defect: the text contains the literal `$CACHE_KEY`
|
|
22
|
-
* either way, which is why the existing assertion passed throughout. `curl`
|
|
23
|
-
* and `zstd` are stubbed onto PATH so the pipeline completes on any host and
|
|
24
|
-
* the URL actually requested can be read back.
|
|
25
|
-
*/
|
|
26
|
-
export {};
|
|
27
|
-
//# sourceMappingURL=cache-push-daemon.test.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cache-push-daemon.test.d.ts","sourceRoot":"","sources":["../../../../src/yaml/steps/cache-push-daemon.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG"}
|
|
@@ -1,171 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* `cache-push` with an explicit `cache_key`, over the daemon.
|
|
3
|
-
*
|
|
4
|
-
* Every curated Invarn template uses the explicit-key form — `cache_key:
|
|
5
|
-
* pods-{{checksum "Podfile.lock"}}-$CIBUILD_GIT_BRANCH` and its Gradle/KMM
|
|
6
|
-
* siblings — for both halves of the pair. The pull side assigns the shell
|
|
7
|
-
* variable the daemon URL interpolates; the push side did not, and there is
|
|
8
|
-
* no `set -u`, so `$CACHE_KEY` expanded to nothing and the upload went to
|
|
9
|
-
* `<daemon>/cache/.tar.zst`. The daemon requires at least one character
|
|
10
|
-
* before `.tar.zst` and answers 400, which is exactly what the first real
|
|
11
|
-
* `invarn setup` proof logged on 2026-08-30:
|
|
12
|
-
*
|
|
13
|
-
* curl: (22) The requested URL returned error: 400
|
|
14
|
-
* Warning: failed to upload cache to the daemon
|
|
15
|
-
* [step_6] ✓ Success (109ms)
|
|
16
|
-
*
|
|
17
|
-
* Nothing was ever stored, so the pull could never hit, and every iOS build
|
|
18
|
-
* paid a cold `pod install`.
|
|
19
|
-
*
|
|
20
|
-
* These tests RUN the generated script. A containment check on the script
|
|
21
|
-
* text cannot see this defect: the text contains the literal `$CACHE_KEY`
|
|
22
|
-
* either way, which is why the existing assertion passed throughout. `curl`
|
|
23
|
-
* and `zstd` are stubbed onto PATH so the pipeline completes on any host and
|
|
24
|
-
* the URL actually requested can be read back.
|
|
25
|
-
*/
|
|
26
|
-
import { describe, test, expect } from '@jest/globals';
|
|
27
|
-
import { execFileSync } from 'child_process';
|
|
28
|
-
import { createHash } from 'crypto';
|
|
29
|
-
import { mkdtempSync, mkdirSync, writeFileSync, readFileSync, rmSync, existsSync, chmodSync } from 'fs';
|
|
30
|
-
import { join } from 'path';
|
|
31
|
-
import { tmpdir } from 'os';
|
|
32
|
-
import { CachePushStepExecutor } from './cache.js';
|
|
33
|
-
import { testConfigNoPeer } from './test-config.js';
|
|
34
|
-
const CACHE_KEY = 'pods-abc123def456-main';
|
|
35
|
-
/**
|
|
36
|
-
* An explicit `cache_key` is prefixed with a project scope so two repositories
|
|
37
|
-
* writing the same key don't share a tarball. These fixtures run outside a git
|
|
38
|
-
* remote, so the step's shell hashes the literal `"no-remote"` — derived here
|
|
39
|
-
* rather than pasted, so it tracks the step.
|
|
40
|
-
*/
|
|
41
|
-
const PROJECT_SCOPE = createHash('sha256').update('no-remote', 'utf8').digest('hex').slice(0, 8);
|
|
42
|
-
const SCOPED_CACHE_KEY = `${PROJECT_SCOPE}-${CACHE_KEY}`;
|
|
43
|
-
/**
|
|
44
|
-
* Generates the explicit-key push step, runs it, and reports what `curl` was
|
|
45
|
-
* actually asked to do.
|
|
46
|
-
*
|
|
47
|
-
* @param curlExit exit status the stub returns, and `curlBody` is what it
|
|
48
|
-
* prints — so a rejection can be exercised without a daemon.
|
|
49
|
-
* @param zstdExit exit status the `zstd` stub returns, which is how the
|
|
50
|
-
* *middle* stage is made to fail. 127 is what a shell that
|
|
51
|
-
* cannot find the binary produces, i.e. an image without it.
|
|
52
|
-
*/
|
|
53
|
-
async function runPush({ curlExit = 0, curlBody = '', zstdExit = 0, } = {}) {
|
|
54
|
-
const dir = mkdtempSync(join(tmpdir(), 'cibuild-push-'));
|
|
55
|
-
try {
|
|
56
|
-
// Something real to cache, so the step does not take its empty branch.
|
|
57
|
-
const payload = join(dir, 'Pods');
|
|
58
|
-
mkdirSync(payload, { recursive: true });
|
|
59
|
-
writeFileSync(join(payload, 'thing.txt'), 'contents\n', 'utf-8');
|
|
60
|
-
const bin = join(dir, 'bin');
|
|
61
|
-
mkdirSync(bin, { recursive: true });
|
|
62
|
-
const urlLog = join(dir, 'curl-urls.txt');
|
|
63
|
-
// Records the URL, drains stdin so the upstream pipe does not break.
|
|
64
|
-
writeFileSync(join(bin, 'curl'), [
|
|
65
|
-
'#!/bin/bash',
|
|
66
|
-
'for arg in "$@"; do',
|
|
67
|
-
' case "$arg" in',
|
|
68
|
-
` http*) printf '%s\\n' "$arg" >> "${urlLog}" ;;`,
|
|
69
|
-
' esac',
|
|
70
|
-
'done',
|
|
71
|
-
'cat > /dev/null',
|
|
72
|
-
curlBody ? `printf '%s' ${JSON.stringify(curlBody)}` : ':',
|
|
73
|
-
`exit ${curlExit}`,
|
|
74
|
-
].join('\n'), 'utf-8');
|
|
75
|
-
chmodSync(join(bin, 'curl'), 0o755);
|
|
76
|
-
// zstd is not on every host, and without it the pipeline fails before
|
|
77
|
-
// curl is ever reached — which would make these tests pass vacuously.
|
|
78
|
-
// A failing stub drains stdin before exiting, so tar completes normally
|
|
79
|
-
// and the only non-zero status in the pipeline is the one under test.
|
|
80
|
-
writeFileSync(join(bin, 'zstd'), zstdExit === 0
|
|
81
|
-
? '#!/bin/bash\ncat\n'
|
|
82
|
-
: `#!/bin/bash\ncat > /dev/null\nexit ${zstdExit}\n`, 'utf-8');
|
|
83
|
-
chmodSync(join(bin, 'zstd'), 0o755);
|
|
84
|
-
const { script } = await new CachePushStepExecutor().execute({ cache_key: CACHE_KEY, cache_paths: ['Pods'] }, {}, testConfigNoPeer);
|
|
85
|
-
const scriptPath = join(dir, '__cache_push.sh');
|
|
86
|
-
writeFileSync(scriptPath, script, 'utf-8');
|
|
87
|
-
let stdout = '';
|
|
88
|
-
try {
|
|
89
|
-
stdout = execFileSync('bash', [scriptPath], {
|
|
90
|
-
cwd: dir,
|
|
91
|
-
encoding: 'utf-8',
|
|
92
|
-
stdio: ['ignore', 'pipe', 'pipe'],
|
|
93
|
-
env: {
|
|
94
|
-
...process.env,
|
|
95
|
-
PATH: `${bin}:${process.env.PATH}`,
|
|
96
|
-
CIBUILD_CACHE_DAEMON: 'http://daemon.invalid',
|
|
97
|
-
CIBUILD_CACHE_TOKEN: 'tok',
|
|
98
|
-
},
|
|
99
|
-
timeout: 20000,
|
|
100
|
-
});
|
|
101
|
-
}
|
|
102
|
-
catch (e) {
|
|
103
|
-
const err = e;
|
|
104
|
-
stdout = String(err.stdout ?? '') + String(err.stderr ?? '');
|
|
105
|
-
}
|
|
106
|
-
const urls = existsSync(urlLog)
|
|
107
|
-
? readFileSync(urlLog, 'utf-8').split('\n').filter(Boolean)
|
|
108
|
-
: [];
|
|
109
|
-
return { stdout, urls };
|
|
110
|
-
}
|
|
111
|
-
finally {
|
|
112
|
-
rmSync(dir, { recursive: true, force: true });
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
describe('cache-push with an explicit key, over the daemon', () => {
|
|
116
|
-
test('uploads under the key it was given', async () => {
|
|
117
|
-
const { urls } = await runPush();
|
|
118
|
-
expect(urls).toHaveLength(1);
|
|
119
|
-
expect(urls[0]).toBe(`http://daemon.invalid/cache/${SCOPED_CACHE_KEY}.tar.zst`);
|
|
120
|
-
});
|
|
121
|
-
test('never uploads to an empty key', async () => {
|
|
122
|
-
// The defect, named. `<daemon>/cache/.tar.zst` is what an unassigned
|
|
123
|
-
// `$CACHE_KEY` produces, and what the daemon answers 400 to.
|
|
124
|
-
const { urls } = await runPush();
|
|
125
|
-
for (const url of urls) {
|
|
126
|
-
expect(url).not.toMatch(/\/cache\/\.tar\.zst$/);
|
|
127
|
-
}
|
|
128
|
-
});
|
|
129
|
-
test('the step survives a rejection rather than failing the build', async () => {
|
|
130
|
-
// Deliberate: a build that produced good output should not be failed by a
|
|
131
|
-
// cache upload. Whether the STEP should still report success having
|
|
132
|
-
// stored nothing is a separate, open question.
|
|
133
|
-
const { stdout } = await runPush({ curlExit: 22 });
|
|
134
|
-
expect(stdout).toContain('Warning: failed to upload cache to the daemon');
|
|
135
|
-
});
|
|
136
|
-
test('a rejection says why, not just that it happened', async () => {
|
|
137
|
-
// `curl -f` throws the response body away, so the daemon's own reason —
|
|
138
|
-
// `invalid_cache_key`, `cache_busy`, an auth failure — never reached the
|
|
139
|
-
// log. All the reader got was an exit code, which is how a one-line bug
|
|
140
|
-
// stayed open behind a warning that named nothing.
|
|
141
|
-
const { stdout } = await runPush({
|
|
142
|
-
curlExit: 22,
|
|
143
|
-
curlBody: '{"error":"invalid_cache_key"}',
|
|
144
|
-
});
|
|
145
|
-
expect(stdout).toContain('invalid_cache_key');
|
|
146
|
-
});
|
|
147
|
-
test('a failed compressor is not reported as the daemon saying yes', async () => {
|
|
148
|
-
// What a worker image with no zstd binary actually logged:
|
|
149
|
-
//
|
|
150
|
-
// Warning: failed to upload cache to the daemon — {"ok":true}
|
|
151
|
-
//
|
|
152
|
-
// `--fail-with-body` writes the daemon's response body to curl's *stdout*
|
|
153
|
-
// on success as well as on refusal, and the old code captured that as the
|
|
154
|
-
// failure reason. curl is perfectly happy to upload nothing, so the
|
|
155
|
-
// success body is precisely what a broken middle stage produces — the
|
|
156
|
-
// warning blamed the one stage that worked.
|
|
157
|
-
const { stdout } = await runPush({ zstdExit: 127, curlBody: '{"ok":true}' });
|
|
158
|
-
expect(stdout).toContain('Warning: failed to upload cache to the daemon');
|
|
159
|
-
expect(stdout).not.toContain('{"ok":true}');
|
|
160
|
-
expect(stdout).toContain('zstd is not installed');
|
|
161
|
-
});
|
|
162
|
-
test('a middle stage failing for any other reason still names the stage', async () => {
|
|
163
|
-
// 127 is the case that bit us, but the fix is not about 127: the reason is
|
|
164
|
-
// only the daemon's answer when the daemon is what refused.
|
|
165
|
-
const { stdout } = await runPush({ zstdExit: 1, curlBody: '{"ok":true}' });
|
|
166
|
-
expect(stdout).toContain('Warning: failed to upload cache to the daemon');
|
|
167
|
-
expect(stdout).not.toContain('{"ok":true}');
|
|
168
|
-
expect(stdout).toContain('zstd exited 1');
|
|
169
|
-
});
|
|
170
|
-
});
|
|
171
|
-
//# sourceMappingURL=cache-push-daemon.test.js.map
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Cache step implementations (cache-pull and cache-push)
|
|
3
|
-
*/
|
|
4
|
-
import { BaseStepExecutor } from './base.js';
|
|
5
|
-
import type { StepDef, CIConfig } from '../../types.js';
|
|
6
|
-
/**
|
|
7
|
-
* Built-in cache presets per technology.
|
|
8
|
-
* When `technology` is set on a cache step, either the single `lockfile` is
|
|
9
|
-
* checksummed, or the list of `fingerprint` filenames is discovered and
|
|
10
|
-
* content-hashed, to produce the cache key. The listed `paths` are then
|
|
11
|
-
* cached/restored under that key.
|
|
12
|
-
*/
|
|
13
|
-
export interface CachePreset {
|
|
14
|
-
/** Single lockfile path to checksum. Use for toolchains with authoritative lockfiles (Podfile.lock, package-lock.json…). */
|
|
15
|
-
lockfile?: string;
|
|
16
|
-
/** Filenames to discover+hash across the repo. Use when no single file captures the full build graph (Gradle/KMM). */
|
|
17
|
-
fingerprint?: string[];
|
|
18
|
-
keyPrefix: string;
|
|
19
|
-
paths: string[];
|
|
20
|
-
/** Optional fallback preset name: if primary lockfile not found, use this preset's lockfile/key/paths */
|
|
21
|
-
fallback?: string;
|
|
22
|
-
}
|
|
23
|
-
export declare const CACHE_PRESETS: Record<string, CachePreset>;
|
|
24
|
-
/**
|
|
25
|
-
* Inputs for cache-pull step
|
|
26
|
-
*/
|
|
27
|
-
export interface CachePullInputs {
|
|
28
|
-
technology?: string;
|
|
29
|
-
cache_paths?: string[];
|
|
30
|
-
cache_key?: string;
|
|
31
|
-
is_debug_mode?: boolean;
|
|
32
|
-
}
|
|
33
|
-
/**
|
|
34
|
-
* Inputs for cache-push step
|
|
35
|
-
*/
|
|
36
|
-
export interface CachePushInputs {
|
|
37
|
-
technology?: string;
|
|
38
|
-
cache_paths?: string[];
|
|
39
|
-
cache_key?: string;
|
|
40
|
-
is_debug_mode?: boolean;
|
|
41
|
-
ignore_check_on_paths?: boolean;
|
|
42
|
-
}
|
|
43
|
-
/**
|
|
44
|
-
* Cache pull step executor
|
|
45
|
-
* Restores cached files from cache directory
|
|
46
|
-
*/
|
|
47
|
-
export declare class CachePullStepExecutor extends BaseStepExecutor {
|
|
48
|
-
execute(inputs: CachePullInputs, env: Record<string, string>, config: CIConfig): Promise<StepDef>;
|
|
49
|
-
private executeWithPreset;
|
|
50
|
-
}
|
|
51
|
-
/**
|
|
52
|
-
* Cache push step executor
|
|
53
|
-
* Saves files to cache directory
|
|
54
|
-
*/
|
|
55
|
-
export declare class CachePushStepExecutor extends BaseStepExecutor {
|
|
56
|
-
execute(inputs: CachePushInputs, env: Record<string, string>, config: CIConfig): Promise<StepDef>;
|
|
57
|
-
private executeWithPreset;
|
|
58
|
-
}
|
|
59
|
-
//# sourceMappingURL=cache.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../../../src/yaml/steps/cache.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAkBxD;;;;;;GAMG;AACH,MAAM,WAAW,WAAW;IAC1B,4HAA4H;IAC5H,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sHAAsH;IACtH,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,yGAAyG;IACzG,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAUrD,CAAC;AA4bF;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AAED;;;GAGG;AACH,qBAAa,qBAAsB,SAAQ,gBAAgB;IACnD,OAAO,CAAC,MAAM,EAAE,eAAe,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;YAiJzF,iBAAiB;CAkNhC;AAED;;;GAGG;AACH,qBAAa,qBAAsB,SAAQ,gBAAgB;IACnD,OAAO,CAAC,MAAM,EAAE,eAAe,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;YA2KzF,iBAAiB;CAgJhC"}
|