@codiac.io/codiac-cli 1.2.157 → 1.2.164
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/README.md +4481 -36
- package/bin/dev +16 -16
- package/bin/dev.cmd +2 -2
- package/bin/run +3 -3
- package/bin/run.cmd +3 -3
- package/codiac.json +9 -9
- package/lib/apis/codiac-api/common/api-client-base.d.ts +165 -165
- package/lib/apis/codiac-api/common/api-client-base.js +547 -547
- package/lib/apis/codiac-api/common/api-user-creds.d.ts +7 -7
- package/lib/apis/codiac-api/common/api-user-creds.js +18 -18
- package/lib/apis/codiac-api/common/config-loader.d.ts +6 -6
- package/lib/apis/codiac-api/common/config-loader.js +18 -18
- package/lib/apis/codiac-api/common/endpoint-spec.d.ts +17 -17
- package/lib/apis/codiac-api/common/endpoint-spec.js +27 -27
- package/lib/apis/codiac-api/common/security/api-auth-methods-legacy.d.ts +87 -87
- package/lib/apis/codiac-api/common/security/api-auth-methods-legacy.js +367 -367
- package/lib/apis/codiac-api/common/security/auth-constants.d.ts +15 -15
- package/lib/apis/codiac-api/common/security/auth-constants.js +21 -21
- package/lib/apis/codiac-api/common/security/i-auth-client.d.ts +44 -44
- package/lib/apis/codiac-api/common/security/i-auth-client.js +2 -2
- package/lib/apis/codiac-api/common/security/token-holder.d.ts +13 -13
- package/lib/apis/codiac-api/common/security/token-holder.js +17 -17
- package/lib/apis/codiac-api/common/utils.d.ts +23 -23
- package/lib/apis/codiac-api/common/utils.js +82 -82
- package/lib/apis/codiac-api/contracts/index.d.ts +1 -1
- package/lib/apis/codiac-api/contracts/index.js +4 -4
- package/lib/apis/codiac-api/gen/client-config.d.ts +10 -10
- package/lib/apis/codiac-api/gen/client-config.js +28 -28
- package/lib/apis/codiac-api/gen/client.d.ts +1663 -1663
- package/lib/apis/codiac-api/gen/client.js +15629 -15629
- package/lib/apis/codiac-api/gen/contracts.d.ts +2722 -2722
- package/lib/apis/codiac-api/gen/contracts.js +402 -402
- package/lib/apis/codiac-api/index.d.ts +3 -3
- package/lib/apis/codiac-api/index.js +8 -8
- package/lib/apis/codiac-relay/common/api-client-base.d.ts +165 -165
- package/lib/apis/codiac-relay/common/api-client-base.js +547 -547
- package/lib/apis/codiac-relay/common/api-user-creds.d.ts +7 -7
- package/lib/apis/codiac-relay/common/api-user-creds.js +18 -18
- package/lib/apis/codiac-relay/common/config-loader.d.ts +6 -6
- package/lib/apis/codiac-relay/common/config-loader.js +18 -18
- package/lib/apis/codiac-relay/common/endpoint-spec.d.ts +17 -17
- package/lib/apis/codiac-relay/common/endpoint-spec.js +27 -27
- package/lib/apis/codiac-relay/common/security/api-auth-methods-legacy.d.ts +87 -87
- package/lib/apis/codiac-relay/common/security/api-auth-methods-legacy.js +367 -367
- package/lib/apis/codiac-relay/common/security/auth-constants.d.ts +15 -15
- package/lib/apis/codiac-relay/common/security/auth-constants.js +21 -21
- package/lib/apis/codiac-relay/common/security/i-auth-client.d.ts +44 -44
- package/lib/apis/codiac-relay/common/security/i-auth-client.js +2 -2
- package/lib/apis/codiac-relay/common/security/token-holder.d.ts +13 -13
- package/lib/apis/codiac-relay/common/security/token-holder.js +17 -17
- package/lib/apis/codiac-relay/common/utils.d.ts +23 -23
- package/lib/apis/codiac-relay/common/utils.js +82 -82
- package/lib/apis/codiac-relay/contracts/index.d.ts +1 -1
- package/lib/apis/codiac-relay/contracts/index.js +4 -4
- package/lib/apis/codiac-relay/gen/client-config.d.ts +10 -10
- package/lib/apis/codiac-relay/gen/client-config.js +28 -28
- package/lib/apis/codiac-relay/gen/client.d.ts +244 -242
- package/lib/apis/codiac-relay/gen/client.js +1862 -1848
- package/lib/apis/codiac-relay/gen/client.js.map +1 -1
- package/lib/apis/codiac-relay/gen/contracts.d.ts +3108 -3097
- package/lib/apis/codiac-relay/gen/contracts.js +434 -431
- package/lib/apis/codiac-relay/gen/contracts.js.map +1 -1
- package/lib/apis/codiac-relay/index.d.ts +3 -3
- package/lib/apis/codiac-relay/index.js +8 -8
- package/lib/cli-common/ImagesList.js +66 -66
- package/lib/cli-common/ImagesList.js.map +1 -1
- package/lib/cli-common/argument-manager.d.ts +28 -28
- package/lib/cli-common/argument-manager.js +194 -194
- package/lib/cli-common/built-in-cli-user-input.d.ts +18 -18
- package/lib/cli-common/built-in-cli-user-input.js +309 -309
- package/lib/cli-common/built-in-cli-user-input.js.map +1 -1
- package/lib/cli-common/cli-interfaces.js +6 -6
- package/lib/cli-common/command-base.d.ts +72 -74
- package/lib/cli-common/command-base.js +181 -179
- package/lib/cli-common/command-base.js.map +1 -1
- package/lib/cli-common/entities/index.d.ts +1 -1
- package/lib/cli-common/entities/index.js +4 -4
- package/lib/cli-common/entities/prompt-choice.d.ts +7 -7
- package/lib/cli-common/entities/prompt-choice.js +2 -2
- package/lib/cli-common/file-selector.d.ts +48 -48
- package/lib/cli-common/file-selector.js +186 -186
- package/lib/cli-common/i-user-input-provider.js +18 -18
- package/lib/cli-common/index.d.ts +4 -4
- package/lib/cli-common/index.js +10 -10
- package/lib/cli-common/mock-ui.d.ts +27 -27
- package/lib/cli-common/mock-ui.js +82 -82
- package/lib/cli-common/prompt-select-fuzzy.d.ts +19 -19
- package/lib/cli-common/prompt-select-fuzzy.js +118 -118
- package/lib/cli-common/tenant-contextualizer.js +435 -435
- package/lib/cli-common/test/tenant-contextualizer.spec.js +142 -142
- package/lib/cli-entities/output-format-enum.d.ts +7 -7
- package/lib/cli-entities/output-format-enum.js +11 -11
- package/lib/cli-entities/prompt-choice.js +5 -5
- package/lib/codiac-constants.d.ts +35 -35
- package/lib/codiac-constants.js +40 -40
- package/lib/codiac-entities/asset-binding.d.ts +12 -12
- package/lib/codiac-entities/asset-binding.js +17 -17
- package/lib/codiac-entities/azure-container-registry.d.ts +4 -4
- package/lib/codiac-entities/azure-container-registry.js +2 -2
- package/lib/codiac-entities/azure-service-principal.d.ts +23 -23
- package/lib/codiac-entities/azure-service-principal.js +23 -23
- package/lib/codiac-entities/cloud-account-ref.d.ts +28 -28
- package/lib/codiac-entities/cloud-account-ref.js +36 -36
- package/lib/codiac-entities/deployment-temp.js +132 -132
- package/lib/codiac-entities/i-cloud-account-ref.d.ts +5 -5
- package/lib/codiac-entities/i-cloud-account-ref.js +2 -2
- package/lib/command-base-enterprise.d.ts +121 -121
- package/lib/command-base-enterprise.js +523 -523
- package/lib/command-base-tenantless.d.ts +44 -44
- package/lib/command-base-tenantless.js +172 -172
- package/lib/commands/asset/create.d.ts +42 -42
- package/lib/commands/asset/create.js +466 -466
- package/lib/commands/asset/destroy.d.ts +20 -20
- package/lib/commands/asset/destroy.js +128 -128
- package/lib/commands/asset/helm.d.ts +23 -24
- package/lib/commands/asset/helm.js +152 -150
- package/lib/commands/asset/helm.js.map +1 -1
- package/lib/commands/asset/list.d.ts +28 -29
- package/lib/commands/asset/list.js +171 -170
- package/lib/commands/asset/list.js.map +1 -1
- package/lib/commands/asset/probe/create.d.ts +38 -41
- package/lib/commands/asset/probe/create.js +186 -181
- package/lib/commands/asset/probe/create.js.map +1 -1
- package/lib/commands/asset/recycle.d.ts +23 -23
- package/lib/commands/asset/recycle.js +174 -174
- package/lib/commands/asset/view.d.ts +188 -189
- package/lib/commands/asset/view.js +1364 -1360
- package/lib/commands/asset/view.js.map +1 -1
- package/lib/commands/asset/volume/create.d.ts +23 -25
- package/lib/commands/asset/volume/create.js +175 -173
- package/lib/commands/asset/volume/create.js.map +1 -1
- package/lib/commands/asset/volume/delete.d.ts +19 -19
- package/lib/commands/asset/volume/delete.js +111 -111
- package/lib/commands/asset/volume/list.d.ts +19 -20
- package/lib/commands/asset/volume/list.js +69 -68
- package/lib/commands/asset/volume/list.js.map +1 -1
- package/lib/commands/branch/current.d.ts +10 -10
- package/lib/commands/branch/current.js +33 -33
- package/lib/commands/branch/list.d.ts +15 -15
- package/lib/commands/branch/list.js +55 -55
- package/lib/commands/branch/list.js.map +1 -1
- package/lib/commands/branch.d.ts +12 -13
- package/lib/commands/branch.js +41 -39
- package/lib/commands/branch.js.map +1 -1
- package/lib/commands/build.d.ts +37 -37
- package/lib/commands/build.js +118 -115
- package/lib/commands/build.js.map +1 -1
- package/lib/commands/cabinet/create.d.ts +21 -23
- package/lib/commands/cabinet/create.js +107 -105
- package/lib/commands/cabinet/create.js.map +1 -1
- package/lib/commands/cabinet/list.d.ts +23 -24
- package/lib/commands/cabinet/list.js +133 -131
- package/lib/commands/cabinet/list.js.map +1 -1
- package/lib/commands/cabinet/obliterate.d.ts +20 -22
- package/lib/commands/cabinet/obliterate.js +82 -80
- package/lib/commands/cabinet/obliterate.js.map +1 -1
- package/lib/commands/cli.d.ts +10 -10
- package/lib/commands/cli.js +99 -99
- package/lib/commands/cli.js.map +1 -1
- package/lib/commands/commit.d.ts +11 -13
- package/lib/commands/commit.js +39 -37
- package/lib/commands/commit.js.map +1 -1
- package/lib/commands/config/add.d.ts +78 -79
- package/lib/commands/config/add.js +559 -557
- package/lib/commands/config/add.js.map +1 -1
- package/lib/commands/config/delete.d.ts +18 -19
- package/lib/commands/config/delete.js +118 -113
- package/lib/commands/config/delete.js.map +1 -1
- package/lib/commands/config/deploy.d.ts +22 -22
- package/lib/commands/config/deploy.js +124 -124
- package/lib/commands/config/import.d.ts +27 -28
- package/lib/commands/config/import.js +195 -193
- package/lib/commands/config/import.js.map +1 -1
- package/lib/commands/config/view.d.ts +25 -28
- package/lib/commands/config/view.js +120 -117
- package/lib/commands/config/view.js.map +1 -1
- package/lib/commands/csp/login.d.ts +18 -22
- package/lib/commands/csp/login.js +108 -106
- package/lib/commands/csp/login.js.map +1 -1
- package/lib/commands/csp/logout.d.ts +15 -19
- package/lib/commands/csp/logout.js +73 -71
- package/lib/commands/csp/logout.js.map +1 -1
- package/lib/commands/dep/create.d.ts +13 -14
- package/lib/commands/dep/create.js +40 -35
- package/lib/commands/dep/create.js.map +1 -1
- package/lib/commands/dep/install.d.ts +9 -9
- package/lib/commands/dep/install.js +29 -29
- package/lib/commands/dep/list.d.ts +55 -55
- package/lib/commands/dep/list.js +97 -97
- package/lib/commands/dep/remove.d.ts +12 -13
- package/lib/commands/dep/remove.js +61 -59
- package/lib/commands/dep/remove.js.map +1 -1
- package/lib/commands/dep/source.d.ts +13 -14
- package/lib/commands/dep/source.js +82 -80
- package/lib/commands/dep/source.js.map +1 -1
- package/lib/commands/dep/syncup.d.ts +11 -12
- package/lib/commands/dep/syncup.js +53 -51
- package/lib/commands/dep/syncup.js.map +1 -1
- package/lib/commands/dep/unsource.d.ts +14 -15
- package/lib/commands/dep/unsource.js +67 -60
- package/lib/commands/dep/unsource.js.map +1 -1
- package/lib/commands/dep/upgrade.d.ts +44 -45
- package/lib/commands/dep/upgrade.js +243 -241
- package/lib/commands/dep/upgrade.js.map +1 -1
- package/lib/commands/dep.d.ts +12 -13
- package/lib/commands/dep.js +50 -48
- package/lib/commands/dep.js.map +1 -1
- package/lib/commands/deploy.d.ts +38 -31
- package/lib/commands/deploy.js +382 -357
- package/lib/commands/deploy.js.map +1 -1
- package/lib/commands/enterprise/create.d.ts +20 -22
- package/lib/commands/enterprise/create.js +97 -95
- package/lib/commands/enterprise/create.js.map +1 -1
- package/lib/commands/enterprise/list.d.ts +14 -15
- package/lib/commands/enterprise/list.js +83 -82
- package/lib/commands/enterprise/list.js.map +1 -1
- package/lib/commands/env/add.d.ts +22 -23
- package/lib/commands/env/add.js +199 -196
- package/lib/commands/env/add.js.map +1 -1
- package/lib/commands/environment/create.d.ts +19 -21
- package/lib/commands/environment/create.js +88 -86
- package/lib/commands/environment/create.js.map +1 -1
- package/lib/commands/environment/list.d.ts +25 -26
- package/lib/commands/environment/list.js +157 -155
- package/lib/commands/environment/list.js.map +1 -1
- package/lib/commands/filestore/capture.d.ts +31 -31
- package/lib/commands/filestore/capture.js +341 -341
- package/lib/commands/host/map.d.ts +33 -35
- package/lib/commands/host/map.js +346 -344
- package/lib/commands/host/map.js.map +1 -1
- package/lib/commands/identity/delete.d.ts +15 -16
- package/lib/commands/identity/delete.js +82 -78
- package/lib/commands/identity/delete.js.map +1 -1
- package/lib/commands/identity/list.d.ts +11 -11
- package/lib/commands/identity/list.js +42 -42
- package/lib/commands/identity/list.js.map +1 -1
- package/lib/commands/identity.d.ts +22 -24
- package/lib/commands/identity.js +76 -74
- package/lib/commands/identity.js.map +1 -1
- package/lib/commands/imageRegistry/capture.d.ts +27 -28
- package/lib/commands/imageRegistry/capture.js +159 -159
- package/lib/commands/imageRegistry/capture.js.map +1 -1
- package/lib/commands/imageRegistry/forget.d.ts +23 -23
- package/lib/commands/imageRegistry/forget.js +160 -160
- package/lib/commands/imageRegistry/pullSecret/set.d.ts +27 -28
- package/lib/commands/imageRegistry/pullSecret/set.js +299 -299
- package/lib/commands/imageRegistry/pullSecret/set.js.map +1 -1
- package/lib/commands/imageRegistry/pullSecret/unset.d.ts +24 -24
- package/lib/commands/imageRegistry/pullSecret/unset.js +242 -242
- package/lib/commands/imageRegistry/pullSecret/unset.js.map +1 -1
- package/lib/commands/images/add.d.ts +25 -27
- package/lib/commands/images/add.js +75 -70
- package/lib/commands/images/add.js.map +1 -1
- package/lib/commands/images/list.d.ts +14 -16
- package/lib/commands/images/list.js +71 -71
- package/lib/commands/images/list.js.map +1 -1
- package/lib/commands/images/patch.d.ts +14 -16
- package/lib/commands/images/patch.js +92 -90
- package/lib/commands/images/patch.js.map +1 -1
- package/lib/commands/images/remove.d.ts +12 -14
- package/lib/commands/images/remove.js +37 -35
- package/lib/commands/images/remove.js.map +1 -1
- package/lib/commands/images/version.d.ts +16 -16
- package/lib/commands/images/version.js +64 -62
- package/lib/commands/images/version.js.map +1 -1
- package/lib/commands/init.d.ts +17 -19
- package/lib/commands/init.js +130 -130
- package/lib/commands/init.js.map +1 -1
- package/lib/commands/kit/create.d.ts +25 -26
- package/lib/commands/kit/create.js +141 -139
- package/lib/commands/kit/create.js.map +1 -1
- package/lib/commands/login.d.ts +22 -22
- package/lib/commands/login.js +92 -92
- package/lib/commands/logout.d.ts +8 -8
- package/lib/commands/logout.js +36 -36
- package/lib/commands/merge.d.ts +12 -14
- package/lib/commands/merge.js +42 -40
- package/lib/commands/merge.js.map +1 -1
- package/lib/commands/noc/cluster/create.d.ts +28 -29
- package/lib/commands/noc/cluster/create.js +132 -130
- package/lib/commands/noc/cluster/create.js.map +1 -1
- package/lib/commands/noc/cluster/deinit.d.ts +17 -18
- package/lib/commands/noc/cluster/deinit.js +116 -113
- package/lib/commands/noc/cluster/deinit.js.map +1 -1
- package/lib/commands/noc/cluster/destroy.d.ts +20 -21
- package/lib/commands/noc/cluster/destroy.js +137 -134
- package/lib/commands/noc/cluster/destroy.js.map +1 -1
- package/lib/commands/noc/cluster/grant.d.ts +24 -0
- package/lib/commands/noc/cluster/grant.js +160 -0
- package/lib/commands/noc/cluster/grant.js.map +1 -0
- package/lib/commands/noc/cluster/init.d.ts +17 -18
- package/lib/commands/noc/cluster/init.js +116 -113
- package/lib/commands/noc/cluster/init.js.map +1 -1
- package/lib/commands/noc/cluster/list.d.ts +21 -22
- package/lib/commands/noc/cluster/list.js +83 -82
- package/lib/commands/noc/cluster/list.js.map +1 -1
- package/lib/commands/noc/cluster/recreate.d.ts +28 -31
- package/lib/commands/noc/cluster/recreate.js +185 -182
- package/lib/commands/noc/cluster/recreate.js.map +1 -1
- package/lib/commands/pkg/add.d.ts +15 -17
- package/lib/commands/pkg/add.js +42 -40
- package/lib/commands/pkg/add.js.map +1 -1
- package/lib/commands/pkg/list.d.ts +9 -11
- package/lib/commands/pkg/list.js +32 -32
- package/lib/commands/pkg/list.js.map +1 -1
- package/lib/commands/pkg/patch.d.ts +13 -15
- package/lib/commands/pkg/patch.js +78 -76
- package/lib/commands/pkg/patch.js.map +1 -1
- package/lib/commands/pkg/remove.d.ts +12 -14
- package/lib/commands/pkg/remove.js +69 -67
- package/lib/commands/pkg/remove.js.map +1 -1
- package/lib/commands/portal.d.ts +11 -11
- package/lib/commands/portal.js +81 -81
- package/lib/commands/publish.d.ts +21 -23
- package/lib/commands/publish.js +51 -51
- package/lib/commands/publish.js.map +1 -1
- package/lib/commands/pull.d.ts +13 -15
- package/lib/commands/pull.js +29 -29
- package/lib/commands/pull.js.map +1 -1
- package/lib/commands/push.d.ts +13 -15
- package/lib/commands/push.js +29 -29
- package/lib/commands/push.js.map +1 -1
- package/lib/commands/run.d.ts +35 -35
- package/lib/commands/run.js +193 -193
- package/lib/commands/secretStore/capture.d.ts +27 -28
- package/lib/commands/secretStore/capture.js +174 -173
- package/lib/commands/secretStore/capture.js.map +1 -1
- package/lib/commands/secretStore/forget.d.ts +20 -20
- package/lib/commands/secretStore/forget.js +146 -146
- package/lib/commands/stage.d.ts +13 -15
- package/lib/commands/stage.js +64 -62
- package/lib/commands/stage.js.map +1 -1
- package/lib/commands/stash.d.ts +13 -13
- package/lib/commands/stash.js +30 -28
- package/lib/commands/stash.js.map +1 -1
- package/lib/commands/status.d.ts +12 -12
- package/lib/commands/status.js +48 -48
- package/lib/commands/stop.d.ts +10 -10
- package/lib/commands/stop.js +51 -51
- package/lib/commands/switch.d.ts +11 -12
- package/lib/commands/switch.js +41 -36
- package/lib/commands/switch.js.map +1 -1
- package/lib/commands/sync.d.ts +14 -16
- package/lib/commands/sync.js +20 -20
- package/lib/commands/sync.js.map +1 -1
- package/lib/commands/tenant/create.d.ts +27 -29
- package/lib/commands/tenant/create.js +119 -117
- package/lib/commands/tenant/create.js.map +1 -1
- package/lib/commands/tenant/switch.d.ts +24 -26
- package/lib/commands/tenant/switch.js +108 -106
- package/lib/commands/tenant/switch.js.map +1 -1
- package/lib/commands/unstage.d.ts +12 -14
- package/lib/commands/unstage.js +57 -55
- package/lib/commands/unstage.js.map +1 -1
- package/lib/commands/whereami.d.ts +15 -17
- package/lib/commands/whereami.js +122 -122
- package/lib/commands/whereami.js.map +1 -1
- package/lib/commands/whoami.d.ts +8 -11
- package/lib/commands/whoami.js +39 -40
- package/lib/commands/whoami.js.map +1 -1
- package/lib/errors/NoMembershipError.d.ts +8 -8
- package/lib/errors/NoMembershipError.js +14 -14
- package/lib/index.d.ts +1 -1
- package/lib/index.js +16 -16
- package/lib/log-update-wrapper.d.ts +24 -24
- package/lib/log-update-wrapper.js +28 -28
- package/lib/log4js-logger.d.ts +26 -26
- package/lib/log4js-logger.js +137 -137
- package/lib/ops/INTERFACES_CLI.d.ts +3 -3
- package/lib/ops/INTERFACES_CLI.js +7 -7
- package/lib/ops/LocalOps.d.ts +444 -444
- package/lib/ops/LocalOps.js +3183 -3183
- package/lib/ops/azure-container-registry-client/azure-container-registry-client.js +147 -147
- package/lib/ops/cli-path-walker.js +54 -54
- package/lib/ops/codiac-entities/dependency.d.ts +5 -5
- package/lib/ops/codiac-entities/dependency.js +10 -10
- package/lib/ops/codiac-entities/index.d.ts +1 -1
- package/lib/ops/codiac-entities/index.js +4 -4
- package/lib/ops/composite-image-registry-client.js +73 -73
- package/lib/ops/data/cli-context-repo.d.ts +61 -61
- package/lib/ops/data/cli-context-repo.js +269 -269
- package/lib/ops/data/index.d.ts +2 -2
- package/lib/ops/data/index.js +5 -5
- package/lib/ops/data/npm-config-repo.d.ts +13 -13
- package/lib/ops/data/npm-config-repo.js +64 -64
- package/lib/ops/docker-config.js +130 -130
- package/lib/ops/docker-constants.js +21 -21
- package/lib/ops/docker-credentials-store.js +237 -237
- package/lib/ops/docker-registry-api-client/docker-registry-api-client.js +288 -288
- package/lib/ops/docker-registry-api-client/entities/blob-sum.d.ts +7 -7
- package/lib/ops/docker-registry-api-client/entities/blob-sum.js +12 -12
- package/lib/ops/docker-registry-api-client/entities/docker-access-actions-enum.d.ts +5 -5
- package/lib/ops/docker-registry-api-client/entities/docker-access-actions-enum.js +9 -9
- package/lib/ops/docker-registry-api-client/entities/docker-auth-token-criteria.d.ts +30 -30
- package/lib/ops/docker-registry-api-client/entities/docker-auth-token-criteria.js +35 -35
- package/lib/ops/docker-registry-api-client/entities/i-docker-error-response.d.ts +55 -55
- package/lib/ops/docker-registry-api-client/entities/i-docker-error-response.js +51 -51
- package/lib/ops/docker-registry-api-client/entities/i-docker-list-response.d.ts +7 -7
- package/lib/ops/docker-registry-api-client/entities/i-docker-list-response.js +2 -2
- package/lib/ops/docker-registry-api-client/entities/image-repository.d.ts +31 -31
- package/lib/ops/docker-registry-api-client/entities/image-repository.js +29 -29
- package/lib/ops/docker-registry-api-client/entities/image-tag-criteria.d.ts +8 -8
- package/lib/ops/docker-registry-api-client/entities/image-tag-criteria.js +13 -13
- package/lib/ops/docker-registry-api-client/entities/image-tag-list.d.ts +7 -7
- package/lib/ops/docker-registry-api-client/entities/image-tag-list.js +12 -12
- package/lib/ops/docker-registry-api-client/entities/manifest-criteria.d.ts +9 -9
- package/lib/ops/docker-registry-api-client/entities/manifest-criteria.js +14 -14
- package/lib/ops/docker-registry-api-client/entities/manifest.d.ts +15 -15
- package/lib/ops/docker-registry-api-client/entities/manifest.js +20 -20
- package/lib/ops/docker-registry-api-client/entities/repository-criteria.d.ts +16 -16
- package/lib/ops/docker-registry-api-client/entities/repository-criteria.js +23 -23
- package/lib/ops/docker-registry-api-client/entities/token-response.d.ts +15 -15
- package/lib/ops/docker-registry-api-client/entities/token-response.js +14 -14
- package/lib/ops/docker-registry-api-client/entities/token.d.ts +17 -17
- package/lib/ops/docker-registry-api-client/entities/token.js +21 -21
- package/lib/ops/docker-registry-api-client/entities/version-check-criteria.d.ts +4 -4
- package/lib/ops/docker-registry-api-client/entities/version-check-criteria.js +9 -9
- package/lib/ops/dx-constants.d.ts +26 -26
- package/lib/ops/dx-constants.js +42 -42
- package/lib/ops/entities/ImageBuildContext.d.ts +12 -12
- package/lib/ops/entities/ImageBuildContext.js +18 -18
- package/lib/ops/entities/PipelineContext.d.ts +21 -21
- package/lib/ops/entities/PipelineContext.js +22 -22
- package/lib/ops/entities/TenantContext.d.ts +10 -10
- package/lib/ops/entities/TenantContext.js +15 -15
- package/lib/ops/entities/ThaulConfig.js +29 -29
- package/lib/ops/entities/azure-service-principal.d.ts +23 -23
- package/lib/ops/entities/azure-service-principal.js +23 -23
- package/lib/ops/entities/better-logger.js +1 -1
- package/lib/ops/entities/branch.d.ts +13 -13
- package/lib/ops/entities/branch.js +15 -15
- package/lib/ops/entities/cli-config.d.ts +48 -48
- package/lib/ops/entities/cli-config.js +60 -60
- package/lib/ops/entities/docker-image.d.ts +60 -60
- package/lib/ops/entities/docker-image.js +2 -2
- package/lib/ops/entities/helm-spec.d.ts +15 -15
- package/lib/ops/entities/helm-spec.js +22 -22
- package/lib/ops/entities/index.d.ts +4 -4
- package/lib/ops/entities/index.js +11 -11
- package/lib/ops/entities/operation-meta.d.ts +8 -8
- package/lib/ops/entities/operation-meta.js +18 -18
- package/lib/ops/entities/scaffolding.d.ts +19 -19
- package/lib/ops/entities/scaffolding.js +20 -20
- package/lib/ops/extensions/azart-identity-adapter.d.ts +19 -19
- package/lib/ops/extensions/azart-identity-adapter.js +96 -96
- package/lib/ops/extensions/npm-identity-adapter-base.d.ts +13 -13
- package/lib/ops/extensions/npm-identity-adapter-base.js +2 -2
- package/lib/ops/extensions/npmjs-identity-adapter.d.ts +13 -13
- package/lib/ops/extensions/npmjs-identity-adapter.js +63 -63
- package/lib/ops/git-ops.d.ts +8 -8
- package/lib/ops/git-ops.js +13 -13
- package/lib/ops/i-client-for-image-registry.js +16 -16
- package/lib/ops/i-identity-handler.d.ts +33 -33
- package/lib/ops/i-identity-handler.js +164 -164
- package/lib/ops/i-output-styler.js +16 -16
- package/lib/ops/index.d.ts +12 -12
- package/lib/ops/index.js +14 -14
- package/lib/ops/json-utils.js +58 -58
- package/lib/ops/no-style-output-styler.js +29 -29
- package/lib/ops/oauth2-client.ts/oauth2-client.d.ts +23 -23
- package/lib/ops/oauth2-client.ts/oauth2-client.js +63 -63
- package/lib/ops/project-initializer.d.ts +36 -36
- package/lib/ops/project-initializer.js +218 -218
- package/lib/ops/scaffolding/base-scaffolding.d.ts +7 -7
- package/lib/ops/scaffolding/base-scaffolding.js +20 -20
- package/lib/ops/scaffolding/codiac-api-scaffolding.d.ts +7 -7
- package/lib/ops/scaffolding/codiac-api-scaffolding.js +63 -63
- package/lib/ops/scaffolding/typescript-scaffolding.d.ts +15 -15
- package/lib/ops/scaffolding/typescript-scaffolding.js +162 -162
- package/lib/ops/test/mock-ui.d.ts +26 -26
- package/lib/ops/test/mock-ui.js +87 -87
- package/lib/ops/test/test-extensions.d.ts +13 -13
- package/lib/ops/test/test-extensions.js +70 -70
- package/lib/ops/test/when-a-recursive-file-search-is-run.spec.d.ts +2 -2
- package/lib/ops/test/when-a-recursive-file-search-is-run.spec.js +54 -54
- package/lib/ops/test/when-git-branchline-is-attempted.spec.d.ts +2 -2
- package/lib/ops/test/when-git-branchline-is-attempted.spec.js +37 -37
- package/lib/ops/test/when-versions-are-parsed.spec.d.ts +2 -2
- package/lib/ops/test/when-versions-are-parsed.spec.js +59 -59
- package/lib/ops/throwing-user-input-provider.js +36 -36
- package/lib/prettify.d.ts +7 -7
- package/lib/prettify.js +23 -23
- package/lib/read-stdin.d.ts +2 -2
- package/lib/read-stdin.js +28 -28
- package/lib/relay/contracts/contracts.d.ts +207 -196
- package/lib/relay/contracts/contracts.js +229 -212
- package/lib/relay/contracts/contracts.js.map +1 -1
- package/lib/relay/extended-relay-client.d.ts +27 -27
- package/lib/relay/extended-relay-client.js +27 -27
- package/lib/relay/relay-container.d.ts +41 -41
- package/lib/relay/relay-container.js +297 -297
- package/lib/relay/wsclient/relay-socket-listener.d.ts +68 -68
- package/lib/relay/wsclient/relay-socket-listener.js +164 -164
- package/lib/relay/wsclient/relay-websocket-client.d.ts +33 -33
- package/lib/relay/wsclient/relay-websocket-client.js +178 -178
- package/lib/relay/wsclient/rx-websocket-subject.d.ts +25 -25
- package/lib/relay/wsclient/rx-websocket-subject.js +133 -133
- package/lib/relay/wsclient/socket-contracts.d.ts +22 -22
- package/lib/relay/wsclient/socket-contracts.js +2 -2
- package/lib/standard-probes.d.ts +5 -5
- package/lib/standard-probes.js +21 -21
- package/lib/uilogic/build-configurator.d.ts +21 -21
- package/lib/uilogic/build-configurator.js +110 -110
- package/lib/uilogic/cloud-provider-contextualizer.d.ts +46 -46
- package/lib/uilogic/cloud-provider-contextualizer.js +193 -193
- package/lib/uilogic/cloud-resource-configurator-factory.d.ts +41 -41
- package/lib/uilogic/cloud-resource-configurator-factory.js +157 -158
- package/lib/uilogic/cloud-resource-configurator-factory.js.map +1 -1
- package/lib/uilogic/cloud-resource-configurators/aws-resource-configurator.d.ts +38 -33
- package/lib/uilogic/cloud-resource-configurators/aws-resource-configurator.js +347 -296
- package/lib/uilogic/cloud-resource-configurators/aws-resource-configurator.js.map +1 -1
- package/lib/uilogic/cloud-resource-configurators/az-acr-cli-authenticator.js +77 -77
- package/lib/uilogic/cloud-resource-configurators/az-interactive-login-configurator.d.ts +42 -42
- package/lib/uilogic/cloud-resource-configurators/az-interactive-login-configurator.js +247 -247
- package/lib/uilogic/cloud-resource-configurators/azure-resource-configurator.d.ts +110 -110
- package/lib/uilogic/cloud-resource-configurators/azure-resource-configurator.js +781 -781
- package/lib/uilogic/cloud-resource-configurators/azure-types.js +9 -9
- package/lib/uilogic/cloud-resource-configurators/docker-hub-resource-configurator.d.ts +24 -24
- package/lib/uilogic/cloud-resource-configurators/docker-hub-resource-configurator.js +105 -105
- package/lib/uilogic/cloud-resource-configurators/helm-resource-configurator.d.ts +16 -16
- package/lib/uilogic/cloud-resource-configurators/helm-resource-configurator.js +44 -44
- package/lib/uilogic/cloud-resource-configurators/unsupported-resource-configurator.d.ts +18 -18
- package/lib/uilogic/cloud-resource-configurators/unsupported-resource-configurator.js +61 -61
- package/lib/uilogic/enterprise-contextualizer.d.ts +76 -76
- package/lib/uilogic/enterprise-contextualizer.js +670 -670
- package/lib/uilogic/environment-contextualizer.d.ts +15 -15
- package/lib/uilogic/environment-contextualizer.js +42 -42
- package/lib/uilogic/i-cluster-configurator.d.ts +9 -9
- package/lib/uilogic/i-cluster-configurator.js +2 -2
- package/lib/uilogic/i-login-configurator.d.ts +6 -6
- package/lib/uilogic/i-login-configurator.js +2 -2
- package/lib/uilogic/i-registry-configurator.d.ts +6 -6
- package/lib/uilogic/i-registry-configurator.js +2 -2
- package/lib/uilogic/i-secret-store-configurator.d.ts +7 -7
- package/lib/uilogic/i-secret-store-configurator.js +2 -2
- package/lib/uilogic/image-configurator.d.ts +133 -133
- package/lib/uilogic/image-configurator.js +577 -577
- package/lib/uilogic/image-contextualizer.d.ts +24 -24
- package/lib/uilogic/image-contextualizer.js +89 -89
- package/lib/uilogic/image-registry-contextualizer.d.ts +28 -28
- package/lib/uilogic/image-registry-contextualizer.js +126 -126
- package/lib/uilogic/index.d.ts +9 -9
- package/lib/uilogic/index.js +13 -13
- package/lib/uilogic/prompt-select-fuzzy.js +138 -138
- package/lib/uilogic/render-methods.d.ts +12 -12
- package/lib/uilogic/render-methods.js +64 -64
- package/lib/uilogic/tenant-contextualizer.d.ts +79 -79
- package/lib/uilogic/tenant-contextualizer.js +573 -573
- package/lib/user-context-loader.d.ts +60 -60
- package/lib/user-context-loader.js +183 -183
- package/oclif.manifest.json +221 -3309
- package/package.json +150 -151
- package/scaffolding/api/.gitignore-scaffolding +68 -68
- package/scaffolding/api/.vscode/launch.json +16 -16
- package/scaffolding/api/.vscode/settings.json +7 -7
- package/scaffolding/api/.vscode/tasks.json +15 -15
- package/scaffolding/api/src/app-config.json +2 -2
- package/scaffolding/api/src/index.ts-scaffolding +13 -13
- package/scaffolding/api/src/myApiDef.ts-scaffolding +25 -25
- package/scaffolding/default/.gitignore-scaffolding +2 -2
- package/scaffolding/typescript/.gitignore-scaffolding +69 -69
- package/scaffolding/typescript/.vscode/launch.json +16 -16
- package/scaffolding/typescript/.vscode/settings.json +7 -7
- package/scaffolding/typescript/.vscode/tasks.json +15 -15
- package/lib/api-command-base.d.ts +0 -0
- package/lib/api-command-base.js +0 -52
- package/lib/api-command-base.js.map +0 -1
- package/lib/azure-rest-client.d.ts +0 -6
- package/lib/azure-rest-client.js +0 -36
- package/lib/azure-rest-client.js.map +0 -1
- package/lib/commands/view/dashboard.d.ts +0 -17
- package/lib/commands/view/dashboard.js +0 -88
- package/lib/commands/view/dashboard.js.map +0 -1
- package/lib/commands/view/pods.d.ts +0 -14
- package/lib/commands/view/pods.js +0 -88
- package/lib/commands/view/pods.js.map +0 -1
- package/lib/deployment.d.ts +0 -2
- package/lib/deployment.js +0 -7
- package/lib/deployment.js.map +0 -1
- package/lib/k8s-command-base.d.ts +0 -60
- package/lib/k8s-command-base.js +0 -204
- package/lib/k8s-command-base.js.map +0 -1
- package/lib/relay/data/aws-k8s-versions.d.ts +0 -6
- package/lib/relay/data/aws-k8s-versions.js +0 -16
- package/lib/relay/data/aws-k8s-versions.js.map +0 -1
- package/lib/relay/data/aws-node-types.d.ts +0 -37
- package/lib/relay/data/aws-node-types.js +0 -4246
- package/lib/relay/data/aws-node-types.js.map +0 -1
- package/lib/relay/data/aws-regions.d.ts +0 -6
- package/lib/relay/data/aws-regions.js +0 -34
- package/lib/relay/data/aws-regions.js.map +0 -1
- package/lib/uilogic/cloud-resource-configurators/aws-k8s-versions.d.ts +0 -11
- package/lib/uilogic/cloud-resource-configurators/aws-k8s-versions.js +0 -16
- package/lib/uilogic/cloud-resource-configurators/aws-k8s-versions.js.map +0 -1
- package/lib/uilogic/cloud-resource-configurators/aws-node-types.d.ts +0 -5
- package/lib/uilogic/cloud-resource-configurators/aws-node-types.js +0 -536
- package/lib/uilogic/cloud-resource-configurators/aws-node-types.js.map +0 -1
- package/lib/uilogic/cloud-resource-configurators/aws-regions.d.ts +0 -10
- package/lib/uilogic/cloud-resource-configurators/aws-regions.js +0 -34
- package/lib/uilogic/cloud-resource-configurators/aws-regions.js.map +0 -1
package/lib/commands/init.js
CHANGED
|
@@ -1,131 +1,131 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const tslib_1 = require("tslib");
|
|
4
|
-
const core_1 = require("@oclif/core");
|
|
5
|
-
const path = require("path");
|
|
6
|
-
const codiac_common_1 = require("@codiac.io/codiac-common");
|
|
7
|
-
const ops_1 = require("../ops");
|
|
8
|
-
const codiac_ops_common_1 = require("@codiac.io/codiac-ops-common");
|
|
9
|
-
const ops_2 = require("../ops");
|
|
10
|
-
const command_base_tenantless_1 = require("../command-base-tenantless");
|
|
11
|
-
class Init extends command_base_tenantless_1.CommandBaseTenantless {
|
|
12
|
-
/** Hydrates the main components used for this command. */
|
|
13
|
-
initializeCommandState() {
|
|
14
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
15
|
-
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
16
|
-
try {
|
|
17
|
-
// Set up loggers
|
|
18
|
-
// let settings = new LoggerSettings([LogLevel.notice, LogLevel.warn, LogLevel.error, LogLevel.fatal]);
|
|
19
|
-
// let cliCfgRepo = new cliGlobalConfigRepo({ cliConfigDir: this.config.configDir, version: this.config.version });
|
|
20
|
-
// let cliCfg = await cliCfgRepo.read();
|
|
21
|
-
// if (cliCfg && cliCfg.verbosity) {
|
|
22
|
-
// switch (cliCfg.verbosity) {
|
|
23
|
-
// case Verbosity.detail:
|
|
24
|
-
// settings.LogLevelsToShow.push(LogLevel.detail);
|
|
25
|
-
// break;
|
|
26
|
-
// case Verbosity.debug:
|
|
27
|
-
// settings.LogLevelsToShow.push(LogLevel.detail);
|
|
28
|
-
// settings.LogLevelsToShow.push(LogLevel.debug);
|
|
29
|
-
// settings.LogLevelsToShow.push(LogLevel.trace);
|
|
30
|
-
// break;
|
|
31
|
-
// }
|
|
32
|
-
// }
|
|
33
|
-
// this.ioc.bind<LoggerSettings>(LoggerSettings).toConstantValue(settings);
|
|
34
|
-
// this.ioc.bind<IBetterLogger>(INTERFACES.IBetterLogger).to(BetterConsoleLogger);
|
|
35
|
-
this.state = {
|
|
36
|
-
logger: this.ioc.get(codiac_common_1.INTERFACES.IBetterLogger)
|
|
37
|
-
};
|
|
38
|
-
resolve(this.state);
|
|
39
|
-
}
|
|
40
|
-
catch (err) {
|
|
41
|
-
reject(err);
|
|
42
|
-
}
|
|
43
|
-
}));
|
|
44
|
-
});
|
|
45
|
-
}
|
|
46
|
-
run() {
|
|
47
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
48
|
-
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
49
|
-
try {
|
|
50
|
-
this.bootstrap();
|
|
51
|
-
let comp = yield this.initializeCommandState();
|
|
52
|
-
const { args, flags } = yield this.parse(Init); // this needs to happen first so help can override
|
|
53
|
-
// ----------------------------------------------------------
|
|
54
|
-
// STEP 1) USER DIALOGUE. ACQUIRE VALID CLONE URL AND DESTINATION FOLDER
|
|
55
|
-
// ----------------------------------------------------------
|
|
56
|
-
let directory = args.directory;
|
|
57
|
-
let cloneUrl = flags.clone;
|
|
58
|
-
let projectType = flags.projectType;
|
|
59
|
-
// see if they provided a valid url with init call
|
|
60
|
-
if (flags.clone) {
|
|
61
|
-
let isValidClone = this.validateUrl(flags.clone);
|
|
62
|
-
if (isValidClone) {
|
|
63
|
-
cloneUrl = flags.clone;
|
|
64
|
-
}
|
|
65
|
-
else {
|
|
66
|
-
while (!isValidClone) {
|
|
67
|
-
cloneUrl = yield this._ui.prompt("cloneUrl", 'Please enter a valid clone url for your repo');
|
|
68
|
-
isValidClone = this.validateUrl(cloneUrl);
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
this._ui.userMessage(`Initializing project folder: ${directory}`);
|
|
73
|
-
if (codiac_ops_common_1.CliPathWalker.isConfigRoot(directory)) {
|
|
74
|
-
let redo = yield this._ui.promptConfirm("reinit", this._styler.colorWarning('This folder is already a project root! Re-initialize? ') + "(y/n)");
|
|
75
|
-
if (!redo) {
|
|
76
|
-
this.log('Operation cancelled. No work was done.');
|
|
77
|
-
this.exit(0);
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
try {
|
|
81
|
-
// ----------------------------------------------------------
|
|
82
|
-
// STEP 2) PROCESSING. PERFORM THE ACTUAL INIT WORK
|
|
83
|
-
// ----------------------------------------------------------
|
|
84
|
-
comp.logger.detail(`Target folder for project root: ${directory}`);
|
|
85
|
-
let projectRoot = (path.isAbsolute(directory)) ? directory : path.join(process.cwd(), directory);
|
|
86
|
-
let projCfgRepo = new ops_1.ProjectContextRepo({ projectRoot: projectRoot });
|
|
87
|
-
// { cliConfigDir: this.config.configDir, version: this.config.version },
|
|
88
|
-
let initializer = new ops_2.ProjectInitializer(this.config.root, this._ops, projCfgRepo, comp.logger);
|
|
89
|
-
let result = yield initializer.init(directory, projectType, cloneUrl);
|
|
90
|
-
if (result.success) {
|
|
91
|
-
this._ops.renderTitleBlock();
|
|
92
|
-
this.logger.notice(this._styler.colorGood("Init complete!!"));
|
|
93
|
-
this._ui.userMessage(this._styler.colorGood("Init complete!!"));
|
|
94
|
-
}
|
|
95
|
-
else if (result.error) {
|
|
96
|
-
this.logger.error(`Error initializing project: ${result.message}, ${result.error.message || ""}.`, result.error);
|
|
97
|
-
this._ui.userMessage(`Error initializing project: ${result.message}, ${result.error.message || ""}.`);
|
|
98
|
-
}
|
|
99
|
-
else {
|
|
100
|
-
this.logger.error(`Project initialization failed but without any error: ${result.message}.`);
|
|
101
|
-
this._ui.userMessage(`Project initialization failed but without any error: ${result.message}.`);
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
catch (err) {
|
|
105
|
-
comp.logger.error(`Error during init: ${err.message || ""}`, err);
|
|
106
|
-
}
|
|
107
|
-
resolve();
|
|
108
|
-
}
|
|
109
|
-
catch (err) {
|
|
110
|
-
reject(err);
|
|
111
|
-
}
|
|
112
|
-
}));
|
|
113
|
-
});
|
|
114
|
-
}
|
|
115
|
-
validateUrl(value) {
|
|
116
|
-
const clone = (value) ? value : '';
|
|
117
|
-
return clone.startsWith('git@') || clone.includes('https://') || clone.includes('http://') || clone.includes('ssh://') || clone.includes('git://') || clone.includes('gits://') || clone.includes('ftp://') || clone.includes('ftps://');
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
exports.default = Init;
|
|
121
|
-
Init.description = 'Declares the given folder as a project root';
|
|
122
|
-
Init.flags = {
|
|
123
|
-
help: core_1.Flags.help({ char: 'h' }),
|
|
124
|
-
clone: core_1.Flags.string({ char: 'c', required: false, description: '(Optional) The git repo from which to hydrate the project folder.' }),
|
|
125
|
-
projectType: core_1.Flags.string({ char: 't', required: false, description: '(Optional) The type of Codiac project to scaffold.' })
|
|
126
|
-
// verbose: flags.boolean({ char: 'v', description: 'render stdout for each command' })
|
|
127
|
-
};
|
|
128
|
-
Init.args =
|
|
129
|
-
|
|
130
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
const core_1 = require("@oclif/core");
|
|
5
|
+
const path = require("path");
|
|
6
|
+
const codiac_common_1 = require("@codiac.io/codiac-common");
|
|
7
|
+
const ops_1 = require("../ops");
|
|
8
|
+
const codiac_ops_common_1 = require("@codiac.io/codiac-ops-common");
|
|
9
|
+
const ops_2 = require("../ops");
|
|
10
|
+
const command_base_tenantless_1 = require("../command-base-tenantless");
|
|
11
|
+
class Init extends command_base_tenantless_1.CommandBaseTenantless {
|
|
12
|
+
/** Hydrates the main components used for this command. */
|
|
13
|
+
initializeCommandState() {
|
|
14
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
15
|
+
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
16
|
+
try {
|
|
17
|
+
// Set up loggers
|
|
18
|
+
// let settings = new LoggerSettings([LogLevel.notice, LogLevel.warn, LogLevel.error, LogLevel.fatal]);
|
|
19
|
+
// let cliCfgRepo = new cliGlobalConfigRepo({ cliConfigDir: this.config.configDir, version: this.config.version });
|
|
20
|
+
// let cliCfg = await cliCfgRepo.read();
|
|
21
|
+
// if (cliCfg && cliCfg.verbosity) {
|
|
22
|
+
// switch (cliCfg.verbosity) {
|
|
23
|
+
// case Verbosity.detail:
|
|
24
|
+
// settings.LogLevelsToShow.push(LogLevel.detail);
|
|
25
|
+
// break;
|
|
26
|
+
// case Verbosity.debug:
|
|
27
|
+
// settings.LogLevelsToShow.push(LogLevel.detail);
|
|
28
|
+
// settings.LogLevelsToShow.push(LogLevel.debug);
|
|
29
|
+
// settings.LogLevelsToShow.push(LogLevel.trace);
|
|
30
|
+
// break;
|
|
31
|
+
// }
|
|
32
|
+
// }
|
|
33
|
+
// this.ioc.bind<LoggerSettings>(LoggerSettings).toConstantValue(settings);
|
|
34
|
+
// this.ioc.bind<IBetterLogger>(INTERFACES.IBetterLogger).to(BetterConsoleLogger);
|
|
35
|
+
this.state = {
|
|
36
|
+
logger: this.ioc.get(codiac_common_1.INTERFACES.IBetterLogger)
|
|
37
|
+
};
|
|
38
|
+
resolve(this.state);
|
|
39
|
+
}
|
|
40
|
+
catch (err) {
|
|
41
|
+
reject(err);
|
|
42
|
+
}
|
|
43
|
+
}));
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
run() {
|
|
47
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
48
|
+
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
49
|
+
try {
|
|
50
|
+
this.bootstrap();
|
|
51
|
+
let comp = yield this.initializeCommandState();
|
|
52
|
+
const { args, flags } = yield this.parse(Init); // this needs to happen first so help can override
|
|
53
|
+
// ----------------------------------------------------------
|
|
54
|
+
// STEP 1) USER DIALOGUE. ACQUIRE VALID CLONE URL AND DESTINATION FOLDER
|
|
55
|
+
// ----------------------------------------------------------
|
|
56
|
+
let directory = args.directory;
|
|
57
|
+
let cloneUrl = flags.clone;
|
|
58
|
+
let projectType = flags.projectType;
|
|
59
|
+
// see if they provided a valid url with init call
|
|
60
|
+
if (flags.clone) {
|
|
61
|
+
let isValidClone = this.validateUrl(flags.clone);
|
|
62
|
+
if (isValidClone) {
|
|
63
|
+
cloneUrl = flags.clone;
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
while (!isValidClone) {
|
|
67
|
+
cloneUrl = yield this._ui.prompt("cloneUrl", 'Please enter a valid clone url for your repo');
|
|
68
|
+
isValidClone = this.validateUrl(cloneUrl);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
this._ui.userMessage(`Initializing project folder: ${directory}`);
|
|
73
|
+
if (codiac_ops_common_1.CliPathWalker.isConfigRoot(directory)) {
|
|
74
|
+
let redo = yield this._ui.promptConfirm("reinit", this._styler.colorWarning('This folder is already a project root! Re-initialize? ') + "(y/n)");
|
|
75
|
+
if (!redo) {
|
|
76
|
+
this.log('Operation cancelled. No work was done.');
|
|
77
|
+
this.exit(0);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
try {
|
|
81
|
+
// ----------------------------------------------------------
|
|
82
|
+
// STEP 2) PROCESSING. PERFORM THE ACTUAL INIT WORK
|
|
83
|
+
// ----------------------------------------------------------
|
|
84
|
+
comp.logger.detail(`Target folder for project root: ${directory}`);
|
|
85
|
+
let projectRoot = (path.isAbsolute(directory)) ? directory : path.join(process.cwd(), directory);
|
|
86
|
+
let projCfgRepo = new ops_1.ProjectContextRepo({ projectRoot: projectRoot });
|
|
87
|
+
// { cliConfigDir: this.config.configDir, version: this.config.version },
|
|
88
|
+
let initializer = new ops_2.ProjectInitializer(this.config.root, this._ops, projCfgRepo, comp.logger);
|
|
89
|
+
let result = yield initializer.init(directory, projectType, cloneUrl);
|
|
90
|
+
if (result.success) {
|
|
91
|
+
this._ops.renderTitleBlock();
|
|
92
|
+
this.logger.notice(this._styler.colorGood("Init complete!!"));
|
|
93
|
+
this._ui.userMessage(this._styler.colorGood("Init complete!!"));
|
|
94
|
+
}
|
|
95
|
+
else if (result.error) {
|
|
96
|
+
this.logger.error(`Error initializing project: ${result.message}, ${result.error.message || ""}.`, result.error);
|
|
97
|
+
this._ui.userMessage(`Error initializing project: ${result.message}, ${result.error.message || ""}.`);
|
|
98
|
+
}
|
|
99
|
+
else {
|
|
100
|
+
this.logger.error(`Project initialization failed but without any error: ${result.message}.`);
|
|
101
|
+
this._ui.userMessage(`Project initialization failed but without any error: ${result.message}.`);
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
catch (err) {
|
|
105
|
+
comp.logger.error(`Error during init: ${err.message || ""}`, err);
|
|
106
|
+
}
|
|
107
|
+
resolve();
|
|
108
|
+
}
|
|
109
|
+
catch (err) {
|
|
110
|
+
reject(err);
|
|
111
|
+
}
|
|
112
|
+
}));
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
validateUrl(value) {
|
|
116
|
+
const clone = (value) ? value : '';
|
|
117
|
+
return clone.startsWith('git@') || clone.includes('https://') || clone.includes('http://') || clone.includes('ssh://') || clone.includes('git://') || clone.includes('gits://') || clone.includes('ftp://') || clone.includes('ftps://');
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
exports.default = Init;
|
|
121
|
+
Init.description = 'Declares the given folder as a project root';
|
|
122
|
+
Init.flags = {
|
|
123
|
+
help: core_1.Flags.help({ char: 'h' }),
|
|
124
|
+
clone: core_1.Flags.string({ char: 'c', required: false, description: '(Optional) The git repo from which to hydrate the project folder.' }),
|
|
125
|
+
projectType: core_1.Flags.string({ char: 't', required: false, description: '(Optional) The type of Codiac project to scaffold.' })
|
|
126
|
+
// verbose: flags.boolean({ char: 'v', description: 'render stdout for each command' })
|
|
127
|
+
};
|
|
128
|
+
Init.args = {
|
|
129
|
+
directory: core_1.Args.string({ required: true, description: 'Path to the desired project root, relative to current directory.' })
|
|
130
|
+
};
|
|
131
131
|
//# sourceMappingURL=init.js.map
|
package/lib/commands/init.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,26 +1,25 @@
|
|
|
1
|
-
import { Asset } from '../../apis/codiac-api/contracts';
|
|
2
|
-
import { CommandBaseEnterprise } from '../../command-base-enterprise';
|
|
3
|
-
/** The value provided as input that indicates
|
|
4
|
-
* a user's desire to be prompted with a list from which choose the value(s),
|
|
5
|
-
* instead of entering them manually or taking a default. */
|
|
6
|
-
export declare const PROMPT_ME_DESIGNATOR = "?";
|
|
7
|
-
export default class KitCreate extends CommandBaseEnterprise {
|
|
8
|
-
static description: string;
|
|
9
|
-
static aliases: never[];
|
|
10
|
-
static dependsOn: string[];
|
|
11
|
-
static flags: {
|
|
12
|
-
help: import("@oclif/core/lib/interfaces").BooleanFlag<void>;
|
|
13
|
-
asset: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined>;
|
|
14
|
-
enterprise: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined>;
|
|
15
|
-
name: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined>;
|
|
16
|
-
scope: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined>;
|
|
17
|
-
silent: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
18
|
-
};
|
|
19
|
-
static args: {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
}
|
|
1
|
+
import { Asset } from '../../apis/codiac-api/contracts';
|
|
2
|
+
import { CommandBaseEnterprise } from '../../command-base-enterprise';
|
|
3
|
+
/** The value provided as input that indicates
|
|
4
|
+
* a user's desire to be prompted with a list from which choose the value(s),
|
|
5
|
+
* instead of entering them manually or taking a default. */
|
|
6
|
+
export declare const PROMPT_ME_DESIGNATOR = "?";
|
|
7
|
+
export default class KitCreate extends CommandBaseEnterprise {
|
|
8
|
+
static description: string;
|
|
9
|
+
static aliases: never[];
|
|
10
|
+
static dependsOn: string[];
|
|
11
|
+
static flags: {
|
|
12
|
+
help: import("@oclif/core/lib/interfaces").BooleanFlag<void>;
|
|
13
|
+
asset: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
|
|
14
|
+
enterprise: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
|
|
15
|
+
name: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
|
|
16
|
+
scope: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
|
|
17
|
+
silent: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
18
|
+
};
|
|
19
|
+
static args: {
|
|
20
|
+
setting: import("@oclif/core/lib/interfaces/parser").Arg<string | undefined, Record<string, unknown>>;
|
|
21
|
+
};
|
|
22
|
+
run(): Promise<void>;
|
|
23
|
+
promptForAsset(enterprise: string, assetSearch?: string): Promise<Asset>;
|
|
24
|
+
private createKit;
|
|
25
|
+
}
|
|
@@ -1,140 +1,142 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.PROMPT_ME_DESIGNATOR = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
|
-
const core_1 = require("@oclif/core");
|
|
6
|
-
const inquirer = require("inquirer");
|
|
7
|
-
// import { Asset, EnterpriseCriteria, Kit, KitAccessibilityEnum } from '@codiac.io/codiac-domain';
|
|
8
|
-
const contracts_1 = require("../../apis/codiac-api/contracts");
|
|
9
|
-
const command_base_enterprise_1 = require("../../command-base-enterprise");
|
|
10
|
-
const prettify_1 = require("../../prettify");
|
|
11
|
-
/** The value provided as input that indicates
|
|
12
|
-
* a user's desire to be prompted with a list from which choose the value(s),
|
|
13
|
-
* instead of entering them manually or taking a default. */
|
|
14
|
-
exports.PROMPT_ME_DESIGNATOR = "?";
|
|
15
|
-
class KitCreate extends command_base_enterprise_1.CommandBaseEnterprise {
|
|
16
|
-
run() {
|
|
17
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
18
|
-
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
19
|
-
try {
|
|
20
|
-
this.bootstrap();
|
|
21
|
-
const { args, flags } = yield this.parse(KitCreate);
|
|
22
|
-
this._userCntx = yield this.establishTenantContext(this._userCntx);
|
|
23
|
-
let currentEnterprise = (yield this.establishEnterpriseContext(flags.enterprise)).enterprise;
|
|
24
|
-
let enterpriseCode = currentEnterprise.code;
|
|
25
|
-
// 1) Get the asset record
|
|
26
|
-
let asset;
|
|
27
|
-
if (!flags.asset || flags.asset == exports.PROMPT_ME_DESIGNATOR) {
|
|
28
|
-
asset = yield this.promptForAsset(enterpriseCode);
|
|
29
|
-
}
|
|
30
|
-
else /* if (flags.asset) */ {
|
|
31
|
-
asset = yield this.promptForAsset(enterpriseCode, flags.asset);
|
|
32
|
-
}
|
|
33
|
-
// 2) Generate the kit
|
|
34
|
-
let kitRes = yield this.relayClient.generateKit(asset.name, asset.enterprise);
|
|
35
|
-
if (kitRes.success && kitRes.output) {
|
|
36
|
-
let candidate = kitRes.output;
|
|
37
|
-
// Loop thru the kit properties and allow the user to override.
|
|
38
|
-
let confirmed = false;
|
|
39
|
-
while (!confirmed) {
|
|
40
|
-
console.clear();
|
|
41
|
-
this._ui.userMessage(this._styler.bold("New Kit:"));
|
|
42
|
-
candidate.name = (yield this._ui.prompt("name", "Name: ", true, candidate.name));
|
|
43
|
-
candidate.library = (yield this._ui.prompt("library", "Library: ", true, candidate.library));
|
|
44
|
-
candidate.description = (yield this._ui.prompt("description", "Description: ", true, candidate.description));
|
|
45
|
-
let choices = [contracts_1.KitAccessibilityEnum.private, contracts_1.KitAccessibilityEnum.friends, contracts_1.KitAccessibilityEnum.public];
|
|
46
|
-
candidate.accessibleBy = (yield this._ui.promptSelect("accessibleBy", "AccessibleBy: ", choices, false));
|
|
47
|
-
console.clear();
|
|
48
|
-
let msg = (0, prettify_1.prettify)(candidate);
|
|
49
|
-
this._ui.userMessage(msg);
|
|
50
|
-
this._ui.userMessage(`You are about to create this kit. Continue?`);
|
|
51
|
-
confirmed = yield this._ui.promptConfirm("confirmCreate", `(hit 'N' to edit your input)`, false);
|
|
52
|
-
if (confirmed == true) {
|
|
53
|
-
yield this.createKit(candidate);
|
|
54
|
-
}
|
|
55
|
-
else {
|
|
56
|
-
this.logger.notice(`Operation cancelled. No work was done.`);
|
|
57
|
-
this._ui.userMessage(`Operation cancelled. No work was done.`);
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
else if (kitRes.error) {
|
|
62
|
-
throw kitRes.error;
|
|
63
|
-
}
|
|
64
|
-
resolve();
|
|
65
|
-
}
|
|
66
|
-
catch (err) {
|
|
67
|
-
this.logger.error(err);
|
|
68
|
-
// reject(err);
|
|
69
|
-
resolve();
|
|
70
|
-
}
|
|
71
|
-
}));
|
|
72
|
-
});
|
|
73
|
-
}
|
|
74
|
-
promptForAsset(enterprise, assetSearch) {
|
|
75
|
-
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
76
|
-
try {
|
|
77
|
-
// let ecrit = new EnterpriseCriteria();
|
|
78
|
-
// ecrit.code = new StringFilter();
|
|
79
|
-
// ecrit.code.$eq = enterprise;
|
|
80
|
-
let ecrit = { code: enterprise };
|
|
81
|
-
let readResult = yield this._codiacApi.Enterprise.tryReadMany(ecrit /* { code: { $eq: enterprise } } */);
|
|
82
|
-
if (!readResult.output || readResult.output.length == 0) {
|
|
83
|
-
throw new Error(`Could not find enterprise [${enterprise}].`);
|
|
84
|
-
}
|
|
85
|
-
else if (!readResult.output[0].assets || readResult.output[0].assets.length == 0) {
|
|
86
|
-
throw new Error(`The current enterprise [${enterprise}] has no assets defined.`);
|
|
87
|
-
}
|
|
88
|
-
// console.log(`${readResult.output[0].assets.length} assets found`)
|
|
89
|
-
// Select from assets in the current enterprise
|
|
90
|
-
let assets = readResult.output[0].assets;
|
|
91
|
-
if (assetSearch && assetSearch != exports.PROMPT_ME_DESIGNATOR) {
|
|
92
|
-
assets = assets.filter(a => a.name.startsWith(assetSearch));
|
|
93
|
-
}
|
|
94
|
-
// console.log(`${assets.length} assets found`)
|
|
95
|
-
let assSelect = yield inquirer.prompt({ type: 'list', name: 'asset', message: 'Select an Asset:', choices: assets.map(a => a.name).sort() });
|
|
96
|
-
let selected = assets.find(a => a.name == assSelect.asset);
|
|
97
|
-
if (!selected)
|
|
98
|
-
throw new Error(`User failed to select a valid asset to deploy.`);
|
|
99
|
-
resolve(selected);
|
|
100
|
-
}
|
|
101
|
-
catch (err) {
|
|
102
|
-
reject(err);
|
|
103
|
-
}
|
|
104
|
-
}));
|
|
105
|
-
}
|
|
106
|
-
createKit(kit) {
|
|
107
|
-
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
108
|
-
try {
|
|
109
|
-
let result = yield this._codiacApi.Kit.tryCreate(kit);
|
|
110
|
-
if (result.error)
|
|
111
|
-
throw result.error;
|
|
112
|
-
let kitFqn = `${kit.library}/${kit.name}`;
|
|
113
|
-
if (!result.success || !result.output)
|
|
114
|
-
throw new Error(`Failed without error creating kit [${kitFqn}]: ${result.message}.`);
|
|
115
|
-
this.logger.notice(`${this._styler.colorGood("SUCCESS!")} Created new kit ${this._styler.bold(this._styler.hilite(kitFqn))}.`, result.output);
|
|
116
|
-
this._ui.userMessage(`${this._styler.colorGood("SUCCESS!")} Created new kit ${this._styler.bold(this._styler.hilite(kitFqn))}.`);
|
|
117
|
-
resolve();
|
|
118
|
-
}
|
|
119
|
-
catch (err) {
|
|
120
|
-
this.logger.error(err, kit);
|
|
121
|
-
resolve();
|
|
122
|
-
// reject(err);
|
|
123
|
-
}
|
|
124
|
-
}));
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
exports.default = KitCreate;
|
|
128
|
-
KitCreate.description = 'Creates a new kit from an existing asset.';
|
|
129
|
-
KitCreate.aliases = [];
|
|
130
|
-
KitCreate.dependsOn = ["asset", "enterprise", "name", "code", "enterprise", "port", "hasIngress", "routedWithoutName"];
|
|
131
|
-
KitCreate.flags = {
|
|
132
|
-
help: core_1.Flags.help({ char: 'h' }),
|
|
133
|
-
asset: core_1.Flags.string({ char: 'a', required: false, description: "The enterprise asset from which to create the kit." }),
|
|
134
|
-
enterprise: core_1.Flags.string({ char: 'e', required: false, description: 'The name of the enterprise containing the given asset. (defaults to the current enterprise context)' }),
|
|
135
|
-
name: core_1.Flags.string({ char: 'n', required: false, description: "Override for the name to give the new kit (Optional: defaults to the asset name)." }),
|
|
136
|
-
scope: core_1.Flags.string({ char: 's', required: false, description: "The globally unique name for the directory in which to register the kit. This value prefixes the kit name to ensure global uniqueness (Optional: defaults to the public shared library)." }),
|
|
137
|
-
silent: core_1.Flags.boolean({ char: 'y', dependsOn: KitCreate.dependsOn, required: false, description: `(Optional: defaults to false) Prevents confirmations of user-values that are remembered from prior runs. Requires: ${KitCreate.dependsOn}` })
|
|
138
|
-
};
|
|
139
|
-
KitCreate.args =
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PROMPT_ME_DESIGNATOR = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const core_1 = require("@oclif/core");
|
|
6
|
+
const inquirer = require("inquirer");
|
|
7
|
+
// import { Asset, EnterpriseCriteria, Kit, KitAccessibilityEnum } from '@codiac.io/codiac-domain';
|
|
8
|
+
const contracts_1 = require("../../apis/codiac-api/contracts");
|
|
9
|
+
const command_base_enterprise_1 = require("../../command-base-enterprise");
|
|
10
|
+
const prettify_1 = require("../../prettify");
|
|
11
|
+
/** The value provided as input that indicates
|
|
12
|
+
* a user's desire to be prompted with a list from which choose the value(s),
|
|
13
|
+
* instead of entering them manually or taking a default. */
|
|
14
|
+
exports.PROMPT_ME_DESIGNATOR = "?";
|
|
15
|
+
class KitCreate extends command_base_enterprise_1.CommandBaseEnterprise {
|
|
16
|
+
run() {
|
|
17
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
18
|
+
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
19
|
+
try {
|
|
20
|
+
this.bootstrap();
|
|
21
|
+
const { args, flags } = yield this.parse(KitCreate);
|
|
22
|
+
this._userCntx = yield this.establishTenantContext(this._userCntx);
|
|
23
|
+
let currentEnterprise = (yield this.establishEnterpriseContext(flags.enterprise)).enterprise;
|
|
24
|
+
let enterpriseCode = currentEnterprise.code;
|
|
25
|
+
// 1) Get the asset record
|
|
26
|
+
let asset;
|
|
27
|
+
if (!flags.asset || flags.asset == exports.PROMPT_ME_DESIGNATOR) {
|
|
28
|
+
asset = yield this.promptForAsset(enterpriseCode);
|
|
29
|
+
}
|
|
30
|
+
else /* if (flags.asset) */ {
|
|
31
|
+
asset = yield this.promptForAsset(enterpriseCode, flags.asset);
|
|
32
|
+
}
|
|
33
|
+
// 2) Generate the kit
|
|
34
|
+
let kitRes = yield this.relayClient.generateKit(asset.name, asset.enterprise);
|
|
35
|
+
if (kitRes.success && kitRes.output) {
|
|
36
|
+
let candidate = kitRes.output;
|
|
37
|
+
// Loop thru the kit properties and allow the user to override.
|
|
38
|
+
let confirmed = false;
|
|
39
|
+
while (!confirmed) {
|
|
40
|
+
console.clear();
|
|
41
|
+
this._ui.userMessage(this._styler.bold("New Kit:"));
|
|
42
|
+
candidate.name = (yield this._ui.prompt("name", "Name: ", true, candidate.name));
|
|
43
|
+
candidate.library = (yield this._ui.prompt("library", "Library: ", true, candidate.library));
|
|
44
|
+
candidate.description = (yield this._ui.prompt("description", "Description: ", true, candidate.description));
|
|
45
|
+
let choices = [contracts_1.KitAccessibilityEnum.private, contracts_1.KitAccessibilityEnum.friends, contracts_1.KitAccessibilityEnum.public];
|
|
46
|
+
candidate.accessibleBy = (yield this._ui.promptSelect("accessibleBy", "AccessibleBy: ", choices, false));
|
|
47
|
+
console.clear();
|
|
48
|
+
let msg = (0, prettify_1.prettify)(candidate);
|
|
49
|
+
this._ui.userMessage(msg);
|
|
50
|
+
this._ui.userMessage(`You are about to create this kit. Continue?`);
|
|
51
|
+
confirmed = yield this._ui.promptConfirm("confirmCreate", `(hit 'N' to edit your input)`, false);
|
|
52
|
+
if (confirmed == true) {
|
|
53
|
+
yield this.createKit(candidate);
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
this.logger.notice(`Operation cancelled. No work was done.`);
|
|
57
|
+
this._ui.userMessage(`Operation cancelled. No work was done.`);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
else if (kitRes.error) {
|
|
62
|
+
throw kitRes.error;
|
|
63
|
+
}
|
|
64
|
+
resolve();
|
|
65
|
+
}
|
|
66
|
+
catch (err) {
|
|
67
|
+
this.logger.error(err);
|
|
68
|
+
// reject(err);
|
|
69
|
+
resolve();
|
|
70
|
+
}
|
|
71
|
+
}));
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
promptForAsset(enterprise, assetSearch) {
|
|
75
|
+
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
76
|
+
try {
|
|
77
|
+
// let ecrit = new EnterpriseCriteria();
|
|
78
|
+
// ecrit.code = new StringFilter();
|
|
79
|
+
// ecrit.code.$eq = enterprise;
|
|
80
|
+
let ecrit = { code: enterprise };
|
|
81
|
+
let readResult = yield this._codiacApi.Enterprise.tryReadMany(ecrit /* { code: { $eq: enterprise } } */);
|
|
82
|
+
if (!readResult.output || readResult.output.length == 0) {
|
|
83
|
+
throw new Error(`Could not find enterprise [${enterprise}].`);
|
|
84
|
+
}
|
|
85
|
+
else if (!readResult.output[0].assets || readResult.output[0].assets.length == 0) {
|
|
86
|
+
throw new Error(`The current enterprise [${enterprise}] has no assets defined.`);
|
|
87
|
+
}
|
|
88
|
+
// console.log(`${readResult.output[0].assets.length} assets found`)
|
|
89
|
+
// Select from assets in the current enterprise
|
|
90
|
+
let assets = readResult.output[0].assets;
|
|
91
|
+
if (assetSearch && assetSearch != exports.PROMPT_ME_DESIGNATOR) {
|
|
92
|
+
assets = assets.filter(a => a.name.startsWith(assetSearch));
|
|
93
|
+
}
|
|
94
|
+
// console.log(`${assets.length} assets found`)
|
|
95
|
+
let assSelect = yield inquirer.prompt({ type: 'list', name: 'asset', message: 'Select an Asset:', choices: assets.map(a => a.name).sort() });
|
|
96
|
+
let selected = assets.find(a => a.name == assSelect.asset);
|
|
97
|
+
if (!selected)
|
|
98
|
+
throw new Error(`User failed to select a valid asset to deploy.`);
|
|
99
|
+
resolve(selected);
|
|
100
|
+
}
|
|
101
|
+
catch (err) {
|
|
102
|
+
reject(err);
|
|
103
|
+
}
|
|
104
|
+
}));
|
|
105
|
+
}
|
|
106
|
+
createKit(kit) {
|
|
107
|
+
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
108
|
+
try {
|
|
109
|
+
let result = yield this._codiacApi.Kit.tryCreate(kit);
|
|
110
|
+
if (result.error)
|
|
111
|
+
throw result.error;
|
|
112
|
+
let kitFqn = `${kit.library}/${kit.name}`;
|
|
113
|
+
if (!result.success || !result.output)
|
|
114
|
+
throw new Error(`Failed without error creating kit [${kitFqn}]: ${result.message}.`);
|
|
115
|
+
this.logger.notice(`${this._styler.colorGood("SUCCESS!")} Created new kit ${this._styler.bold(this._styler.hilite(kitFqn))}.`, result.output);
|
|
116
|
+
this._ui.userMessage(`${this._styler.colorGood("SUCCESS!")} Created new kit ${this._styler.bold(this._styler.hilite(kitFqn))}.`);
|
|
117
|
+
resolve();
|
|
118
|
+
}
|
|
119
|
+
catch (err) {
|
|
120
|
+
this.logger.error(err, kit);
|
|
121
|
+
resolve();
|
|
122
|
+
// reject(err);
|
|
123
|
+
}
|
|
124
|
+
}));
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
exports.default = KitCreate;
|
|
128
|
+
KitCreate.description = 'Creates a new kit from an existing asset.';
|
|
129
|
+
KitCreate.aliases = [];
|
|
130
|
+
KitCreate.dependsOn = ["asset", "enterprise", "name", "code", "enterprise", "port", "hasIngress", "routedWithoutName"];
|
|
131
|
+
KitCreate.flags = {
|
|
132
|
+
help: core_1.Flags.help({ char: 'h' }),
|
|
133
|
+
asset: core_1.Flags.string({ char: 'a', required: false, description: "The enterprise asset from which to create the kit." }),
|
|
134
|
+
enterprise: core_1.Flags.string({ char: 'e', required: false, description: 'The name of the enterprise containing the given asset. (defaults to the current enterprise context)' }),
|
|
135
|
+
name: core_1.Flags.string({ char: 'n', required: false, description: "Override for the name to give the new kit (Optional: defaults to the asset name)." }),
|
|
136
|
+
scope: core_1.Flags.string({ char: 's', required: false, description: "The globally unique name for the directory in which to register the kit. This value prefixes the kit name to ensure global uniqueness (Optional: defaults to the public shared library)." }),
|
|
137
|
+
silent: core_1.Flags.boolean({ char: 'y', dependsOn: KitCreate.dependsOn, required: false, description: `(Optional: defaults to false) Prevents confirmations of user-values that are remembered from prior runs. Requires: ${KitCreate.dependsOn}` })
|
|
138
|
+
};
|
|
139
|
+
KitCreate.args = {
|
|
140
|
+
setting: core_1.Args.string({ description: 'The key for the config setting to add' })
|
|
141
|
+
};
|
|
140
142
|
//# sourceMappingURL=create.js.map
|