@codiac.io/codiac-cli 1.2.168 → 1.2.169
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 +3328 -47
- 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/api-command-base.d.ts +0 -0
- package/lib/api-command-base.js +52 -0
- package/lib/api-command-base.js.map +1 -0
- 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 -244
- package/lib/apis/codiac-relay/gen/client.js +1862 -1862
- package/lib/apis/codiac-relay/gen/contracts.d.ts +3111 -3111
- package/lib/apis/codiac-relay/gen/contracts.js +434 -434
- package/lib/apis/codiac-relay/index.d.ts +3 -3
- package/lib/apis/codiac-relay/index.js +8 -8
- package/lib/azure-rest-client.d.ts +6 -0
- package/lib/azure-rest-client.js +36 -0
- package/lib/azure-rest-client.js.map +1 -0
- package/lib/cli-common/ImagesList.js +66 -66
- 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/cli-interfaces.js +6 -6
- package/lib/cli-common/command-base.d.ts +72 -72
- package/lib/cli-common/command-base.js +181 -181
- 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 -23
- package/lib/commands/asset/helm.js +152 -152
- package/lib/commands/asset/list.d.ts +28 -28
- package/lib/commands/asset/list.js +171 -171
- package/lib/commands/asset/probe/create.d.ts +38 -38
- package/lib/commands/asset/probe/create.js +186 -186
- 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 -188
- package/lib/commands/asset/view.js +1364 -1364
- package/lib/commands/asset/volume/create.d.ts +23 -23
- package/lib/commands/asset/volume/create.js +175 -175
- 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 -19
- package/lib/commands/asset/volume/list.js +69 -69
- 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.d.ts +12 -12
- package/lib/commands/branch.js +41 -41
- package/lib/commands/build.d.ts +37 -37
- package/lib/commands/build.js +118 -118
- package/lib/commands/cabinet/create.d.ts +21 -21
- package/lib/commands/cabinet/create.js +107 -107
- package/lib/commands/cabinet/list.d.ts +23 -23
- package/lib/commands/cabinet/list.js +133 -133
- package/lib/commands/cabinet/obliterate.d.ts +20 -20
- package/lib/commands/cabinet/obliterate.js +82 -82
- package/lib/commands/cli.d.ts +10 -10
- package/lib/commands/cli.js +99 -99
- package/lib/commands/commit.d.ts +11 -11
- package/lib/commands/commit.js +39 -39
- package/lib/commands/config/add.d.ts +78 -78
- package/lib/commands/config/add.js +559 -559
- package/lib/commands/config/delete.d.ts +18 -18
- package/lib/commands/config/delete.js +118 -118
- 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 -27
- package/lib/commands/config/import.js +195 -195
- package/lib/commands/config/view.d.ts +25 -25
- package/lib/commands/config/view.js +120 -120
- package/lib/commands/csp/login.d.ts +18 -18
- package/lib/commands/csp/login.js +108 -108
- package/lib/commands/csp/logout.d.ts +15 -15
- package/lib/commands/csp/logout.js +73 -73
- package/lib/commands/dep/create.d.ts +13 -13
- package/lib/commands/dep/create.js +40 -40
- 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 -12
- package/lib/commands/dep/remove.js +61 -61
- package/lib/commands/dep/source.d.ts +13 -13
- package/lib/commands/dep/source.js +82 -82
- package/lib/commands/dep/syncup.d.ts +11 -11
- package/lib/commands/dep/syncup.js +53 -53
- package/lib/commands/dep/unsource.d.ts +14 -14
- package/lib/commands/dep/unsource.js +67 -67
- package/lib/commands/dep/upgrade.d.ts +44 -44
- package/lib/commands/dep/upgrade.js +243 -243
- package/lib/commands/dep.d.ts +12 -12
- package/lib/commands/dep.js +50 -50
- package/lib/commands/deploy.d.ts +38 -38
- package/lib/commands/deploy.js +382 -382
- package/lib/commands/enterprise/create.d.ts +20 -20
- package/lib/commands/enterprise/create.js +97 -97
- package/lib/commands/enterprise/list.d.ts +14 -14
- package/lib/commands/enterprise/list.js +83 -83
- package/lib/commands/env/add.d.ts +22 -22
- package/lib/commands/env/add.js +199 -199
- package/lib/commands/environment/create.d.ts +19 -19
- package/lib/commands/environment/create.js +88 -88
- package/lib/commands/environment/list.d.ts +25 -25
- package/lib/commands/environment/list.js +157 -157
- 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 -33
- package/lib/commands/host/map.js +346 -346
- package/lib/commands/identity/delete.d.ts +15 -15
- package/lib/commands/identity/delete.js +82 -82
- package/lib/commands/identity/list.d.ts +11 -11
- package/lib/commands/identity/list.js +42 -42
- package/lib/commands/identity.d.ts +22 -22
- package/lib/commands/identity.js +76 -76
- package/lib/commands/imageRegistry/capture.d.ts +27 -27
- package/lib/commands/imageRegistry/capture.js +159 -159
- 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 -27
- package/lib/commands/imageRegistry/pullSecret/set.js +299 -299
- package/lib/commands/imageRegistry/pullSecret/unset.d.ts +24 -24
- package/lib/commands/imageRegistry/pullSecret/unset.js +242 -242
- package/lib/commands/images/add.d.ts +25 -25
- package/lib/commands/images/add.js +75 -75
- package/lib/commands/images/list.d.ts +14 -14
- package/lib/commands/images/list.js +71 -71
- package/lib/commands/images/patch.d.ts +14 -14
- package/lib/commands/images/patch.js +92 -92
- package/lib/commands/images/remove.d.ts +12 -12
- package/lib/commands/images/remove.js +37 -37
- package/lib/commands/images/version.d.ts +16 -16
- package/lib/commands/images/version.js +64 -64
- package/lib/commands/init.d.ts +17 -17
- package/lib/commands/init.js +130 -130
- package/lib/commands/kit/create.d.ts +25 -25
- package/lib/commands/kit/create.js +141 -141
- 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 -12
- package/lib/commands/merge.js +42 -42
- package/lib/commands/noc/cluster/create.d.ts +28 -28
- package/lib/commands/noc/cluster/create.js +132 -132
- package/lib/commands/noc/cluster/deinit.d.ts +17 -17
- package/lib/commands/noc/cluster/deinit.js +116 -116
- package/lib/commands/noc/cluster/destroy.d.ts +20 -20
- package/lib/commands/noc/cluster/destroy.js +137 -137
- package/lib/commands/noc/cluster/forget.d.ts +16 -16
- package/lib/commands/noc/cluster/forget.js +136 -136
- package/lib/commands/noc/cluster/grant.d.ts +24 -24
- package/lib/commands/noc/cluster/grant.js +159 -159
- package/lib/commands/noc/cluster/init.d.ts +17 -17
- package/lib/commands/noc/cluster/init.js +116 -116
- package/lib/commands/noc/cluster/list.d.ts +21 -21
- package/lib/commands/noc/cluster/list.js +83 -83
- package/lib/commands/noc/cluster/recreate.d.ts +28 -28
- package/lib/commands/noc/cluster/recreate.js +185 -185
- package/lib/commands/pkg/add.d.ts +15 -15
- package/lib/commands/pkg/add.js +42 -42
- package/lib/commands/pkg/list.d.ts +9 -9
- package/lib/commands/pkg/list.js +32 -32
- package/lib/commands/pkg/patch.d.ts +13 -13
- package/lib/commands/pkg/patch.js +78 -78
- package/lib/commands/pkg/remove.d.ts +12 -12
- package/lib/commands/pkg/remove.js +69 -69
- package/lib/commands/portal.d.ts +11 -11
- package/lib/commands/portal.js +81 -81
- package/lib/commands/publish.d.ts +21 -21
- package/lib/commands/publish.js +51 -51
- package/lib/commands/pull.d.ts +13 -13
- package/lib/commands/pull.js +29 -29
- package/lib/commands/push.d.ts +13 -13
- package/lib/commands/push.js +29 -29
- package/lib/commands/run.d.ts +35 -35
- package/lib/commands/run.js +193 -193
- package/lib/commands/secretStore/capture.d.ts +27 -27
- package/lib/commands/secretStore/capture.js +174 -174
- package/lib/commands/secretStore/forget.d.ts +20 -20
- package/lib/commands/secretStore/forget.js +146 -146
- package/lib/commands/stage.d.ts +13 -13
- package/lib/commands/stage.js +64 -64
- package/lib/commands/stash.d.ts +13 -13
- package/lib/commands/stash.js +30 -30
- 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 -11
- package/lib/commands/switch.js +41 -41
- package/lib/commands/sync.d.ts +14 -14
- package/lib/commands/sync.js +20 -20
- package/lib/commands/tenant/create.d.ts +27 -27
- package/lib/commands/tenant/create.js +119 -119
- package/lib/commands/tenant/switch.d.ts +24 -24
- package/lib/commands/tenant/switch.js +108 -108
- package/lib/commands/unstage.d.ts +12 -12
- package/lib/commands/unstage.js +57 -57
- package/lib/commands/view/dashboard.d.ts +17 -0
- package/lib/commands/view/dashboard.js +88 -0
- package/lib/commands/view/dashboard.js.map +1 -0
- package/lib/commands/view/pods.d.ts +14 -0
- package/lib/commands/view/pods.js +88 -0
- package/lib/commands/view/pods.js.map +1 -0
- package/lib/commands/whereami.d.ts +15 -15
- package/lib/commands/whereami.js +122 -122
- package/lib/commands/whoami.d.ts +8 -8
- package/lib/commands/whoami.js +39 -39
- package/lib/deployment.d.ts +2 -0
- package/lib/deployment.js +7 -0
- package/lib/deployment.js.map +1 -0
- 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/k8s-command-base.d.ts +60 -0
- package/lib/k8s-command-base.js +204 -0
- package/lib/k8s-command-base.js.map +1 -0
- 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 -207
- package/lib/relay/contracts/contracts.js +229 -229
- package/lib/relay/data/aws-k8s-versions.d.ts +6 -0
- package/lib/relay/data/aws-k8s-versions.js +16 -0
- package/lib/relay/data/aws-k8s-versions.js.map +1 -0
- package/lib/relay/data/aws-node-types.d.ts +37 -0
- package/lib/relay/data/aws-node-types.js +4246 -0
- package/lib/relay/data/aws-node-types.js.map +1 -0
- package/lib/relay/data/aws-regions.d.ts +6 -0
- package/lib/relay/data/aws-regions.js +34 -0
- package/lib/relay/data/aws-regions.js.map +1 -0
- 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 -157
- package/lib/uilogic/cloud-resource-configurators/aws-k8s-versions.d.ts +11 -0
- package/lib/uilogic/cloud-resource-configurators/aws-k8s-versions.js +16 -0
- package/lib/uilogic/cloud-resource-configurators/aws-k8s-versions.js.map +1 -0
- package/lib/uilogic/cloud-resource-configurators/aws-node-types.d.ts +5 -0
- package/lib/uilogic/cloud-resource-configurators/aws-node-types.js +536 -0
- package/lib/uilogic/cloud-resource-configurators/aws-node-types.js.map +1 -0
- package/lib/uilogic/cloud-resource-configurators/aws-regions.d.ts +10 -0
- package/lib/uilogic/cloud-resource-configurators/aws-regions.js +34 -0
- package/lib/uilogic/cloud-resource-configurators/aws-regions.js.map +1 -0
- package/lib/uilogic/cloud-resource-configurators/aws-resource-configurator.d.ts +38 -38
- package/lib/uilogic/cloud-resource-configurators/aws-resource-configurator.js +347 -347
- 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 +45 -1
- package/package.json +150 -150
- 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
|
@@ -1,160 +1,160 @@
|
|
|
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 codiac_domain_1 = require("@codiac.io/codiac-domain");
|
|
6
|
-
const command_base_enterprise_1 = require("../../../command-base-enterprise");
|
|
7
|
-
const codiac_ops_common_1 = require("@codiac.io/codiac-ops-common");
|
|
8
|
-
const _ = require("lodash");
|
|
9
|
-
class NocClusterGrant extends command_base_enterprise_1.CommandBaseEnterprise {
|
|
10
|
-
constructor() {
|
|
11
|
-
super(...arguments);
|
|
12
|
-
this.clusterDefs = [];
|
|
13
|
-
}
|
|
14
|
-
run() {
|
|
15
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
16
|
-
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
17
|
-
var _a;
|
|
18
|
-
try {
|
|
19
|
-
this.bootstrap();
|
|
20
|
-
const { args, flags } = yield this.parse(NocClusterGrant);
|
|
21
|
-
(_a = this._relayContainer) === null || _a === void 0 ? void 0 : _a.ready$.subscribe((ready) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
22
|
-
var _b;
|
|
23
|
-
if (flags.silent)
|
|
24
|
-
this.__ui = new codiac_ops_common_1.ThrowingUserInputProvider(this.logger);
|
|
25
|
-
this._userCntx = yield this.establishTenantContext(this._userCntx);
|
|
26
|
-
let grant;
|
|
27
|
-
this.clusterDefs = yield this.loadClusters();
|
|
28
|
-
if (this.clusterDefs.length === 0) {
|
|
29
|
-
this._ui.userMessage("No clusters found");
|
|
30
|
-
}
|
|
31
|
-
else if (flags.silent) {
|
|
32
|
-
// Build candidate silently
|
|
33
|
-
if (flags.user == undefined || flags.user.length === 0)
|
|
34
|
-
throw new Error(`No user provided.`);
|
|
35
|
-
if (_.isEmpty(flags.cluster))
|
|
36
|
-
throw new Error(`No cluster provided.`);
|
|
37
|
-
let found = this.clusterDefs.find(c => c.name === flags.cluster);
|
|
38
|
-
if (!found)
|
|
39
|
-
throw new Error(`Given cluster does not exist in this tenant.`);
|
|
40
|
-
grant = { cluster: found, user: flags.user };
|
|
41
|
-
}
|
|
42
|
-
else {
|
|
43
|
-
// Build candidate interactively
|
|
44
|
-
let candidate = {};
|
|
45
|
-
if (flags.cluster) {
|
|
46
|
-
let found = this.clusterDefs.find(c => c.name === flags.cluster);
|
|
47
|
-
if (found)
|
|
48
|
-
candidate.cluster = found;
|
|
49
|
-
}
|
|
50
|
-
if (flags.user && !_.isEmpty(flags.user))
|
|
51
|
-
candidate.user = flags.user;
|
|
52
|
-
let confirm = false;
|
|
53
|
-
do {
|
|
54
|
-
candidate.cluster = yield this.promptForCluster((_b = candidate.cluster) === null || _b === void 0 ? void 0 : _b.name);
|
|
55
|
-
candidate.user = yield this.promptForUser(candidate.user);
|
|
56
|
-
this._ui.userMessage(`Granting cluster access on [${this._styler.hilite(candidate.cluster.name)}] to user [${this._styler.hilite(candidate.user)}]`);
|
|
57
|
-
confirm = yield this._ui.promptConfirm("confirmGrant", `Continue? (Ctrl-C to cancel)`, false);
|
|
58
|
-
} while (confirm !== true);
|
|
59
|
-
grant = candidate;
|
|
60
|
-
}
|
|
61
|
-
if (grant) {
|
|
62
|
-
if (!flags.silent) {
|
|
63
|
-
yield this.cspContextualizer.promptForCloudProviderCreds(this.ioc, grant.cluster.provider);
|
|
64
|
-
}
|
|
65
|
-
this._ui.startSpinner(`Granting access...`);
|
|
66
|
-
let result = yield this.genRelayClient.Call.grantClusterAccess({ clusterName: grant.cluster.name, users: [grant.user] });
|
|
67
|
-
this._ui.stopSpinner(result.success ? "SUCCESS" : "FAILED");
|
|
68
|
-
let msg = `Access grant ${result.success ? this._styler.colorGood("SUCCEEDED") : this._styler.colorCritical("FAILED")}: ${result.message || ""}`;
|
|
69
|
-
this.logger.debug(msg, result);
|
|
70
|
-
this._ui.userMessage(msg);
|
|
71
|
-
}
|
|
72
|
-
else {
|
|
73
|
-
this._ui.userMessage("Operation cancelled. No work was done.");
|
|
74
|
-
}
|
|
75
|
-
resolve();
|
|
76
|
-
}));
|
|
77
|
-
}
|
|
78
|
-
catch (err) {
|
|
79
|
-
reject(err);
|
|
80
|
-
}
|
|
81
|
-
}));
|
|
82
|
-
});
|
|
83
|
-
}
|
|
84
|
-
/** Renders a user-friendly cluster description. */
|
|
85
|
-
describe(cluster) {
|
|
86
|
-
return `${cluster.name} ${this._styler.dim("(" + cluster.provider + (cluster.locationName ? ", " + cluster.locationName : "") + ")")}`;
|
|
87
|
-
}
|
|
88
|
-
/** Retrieve the list of available clusters for the current tenant. */
|
|
89
|
-
loadClusters(csp) {
|
|
90
|
-
var _a, _b, _c, _d;
|
|
91
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
92
|
-
try {
|
|
93
|
-
let crit = { privateOwner: (_a = this._userCntx) === null || _a === void 0 ? void 0 : _a.currentTenantCode };
|
|
94
|
-
let projection = { pathsIncluded: ["id", "name", "provider", "locationName", "privateOwner", "instance"], pathsExcluded: [] };
|
|
95
|
-
let readResult = yield this._codiacApi.ClusterDef.tryReadMany(crit, { projection: projection });
|
|
96
|
-
let clusterDefs = (_b = readResult.output) !== null && _b !== void 0 ? _b : []; // we can only deinit clusters that have an instance
|
|
97
|
-
if (csp && Object.keys(codiac_domain_1.CloudProviderEnum).indexOf(csp) >= 0) {
|
|
98
|
-
clusterDefs = clusterDefs.filter(c => c.provider == csp);
|
|
99
|
-
}
|
|
100
|
-
clusterDefs = clusterDefs.filter(c => c.instance != undefined);
|
|
101
|
-
clusterDefs = _.orderBy(clusterDefs, c => c.name);
|
|
102
|
-
return clusterDefs;
|
|
103
|
-
}
|
|
104
|
-
catch (err) {
|
|
105
|
-
throw new Error(`Error loading clusters: ${(_c = err.name) !== null && _c !== void 0 ? _c : ""} ${(_d = err.message) !== null && _d !== void 0 ? _d : ""}`);
|
|
106
|
-
}
|
|
107
|
-
});
|
|
108
|
-
}
|
|
109
|
-
/** Returns the name of the selected cluster.
|
|
110
|
-
*/
|
|
111
|
-
promptForCluster(defaultValue) {
|
|
112
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
113
|
-
let output;
|
|
114
|
-
let keep = false;
|
|
115
|
-
if (defaultValue && this.clusterDefs.find(c => c.name === defaultValue)) {
|
|
116
|
-
keep = yield this._ui.promptConfirm("clusterNameConfirm", `Target Cluster: [${this._styler.hilite(defaultValue)}]`, true);
|
|
117
|
-
}
|
|
118
|
-
if (keep === true) {
|
|
119
|
-
output = this.clusterDefs.find(c => c.name === defaultValue);
|
|
120
|
-
}
|
|
121
|
-
else {
|
|
122
|
-
let choices = this.clusterDefs
|
|
123
|
-
.map(c => { return { name: this.describe(c), value: c.name }; });
|
|
124
|
-
let selectedName = (yield this._ui.promptSelect("clusterName", "Select the target cluster:", choices));
|
|
125
|
-
output = this.clusterDefs.find(c => c.name === selectedName);
|
|
126
|
-
}
|
|
127
|
-
return output;
|
|
128
|
-
});
|
|
129
|
-
}
|
|
130
|
-
promptForUser(defaultValue) {
|
|
131
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
132
|
-
let output;
|
|
133
|
-
let keep = false;
|
|
134
|
-
if (defaultValue) {
|
|
135
|
-
keep = yield this._ui.promptConfirm("usernameConfirm", `AWS username: [${this._styler.hilite(defaultValue)}]`, true);
|
|
136
|
-
}
|
|
137
|
-
if (defaultValue != undefined && keep === true) {
|
|
138
|
-
output = defaultValue;
|
|
139
|
-
}
|
|
140
|
-
else {
|
|
141
|
-
output = (yield this._ui.prompt("username", "AWS username (email): ", true, defaultValue));
|
|
142
|
-
}
|
|
143
|
-
return output;
|
|
144
|
-
});
|
|
145
|
-
}
|
|
146
|
-
}
|
|
147
|
-
exports.default = NocClusterGrant;
|
|
148
|
-
NocClusterGrant.description = '(AWS Only) Provides cluster access to the given user.';
|
|
149
|
-
NocClusterGrant.aliases = ["cluster:grant"];
|
|
150
|
-
NocClusterGrant.flags = {
|
|
151
|
-
help: core_1.Flags.help({ char: 'h' }),
|
|
152
|
-
cluster: core_1.Flags.string({ char: 'c', required: false, description: 'Name of the cluster.' }),
|
|
153
|
-
// provider: Flags.custom({ char: 'p', options: Object.keys(CloudProviderEnum), required: false, description: 'Code for the cloud service provider.' }),
|
|
154
|
-
user: core_1.Flags.string({ char: 'u', multiple: false, required: false, description: 'AWS usernames (as email) to add.' }),
|
|
155
|
-
silent: core_1.Flags.boolean({ char: 'y', dependsOn: ["cluster", "user"], required: false, description: `(Optional: defaults to false) Prevents confirmations of user-values.` })
|
|
156
|
-
};
|
|
157
|
-
NocClusterGrant.args = {
|
|
158
|
-
name: core_1.Args.string({ description: 'Proposed name of the cluster' })
|
|
159
|
-
};
|
|
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 codiac_domain_1 = require("@codiac.io/codiac-domain");
|
|
6
|
+
const command_base_enterprise_1 = require("../../../command-base-enterprise");
|
|
7
|
+
const codiac_ops_common_1 = require("@codiac.io/codiac-ops-common");
|
|
8
|
+
const _ = require("lodash");
|
|
9
|
+
class NocClusterGrant extends command_base_enterprise_1.CommandBaseEnterprise {
|
|
10
|
+
constructor() {
|
|
11
|
+
super(...arguments);
|
|
12
|
+
this.clusterDefs = [];
|
|
13
|
+
}
|
|
14
|
+
run() {
|
|
15
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
16
|
+
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
17
|
+
var _a;
|
|
18
|
+
try {
|
|
19
|
+
this.bootstrap();
|
|
20
|
+
const { args, flags } = yield this.parse(NocClusterGrant);
|
|
21
|
+
(_a = this._relayContainer) === null || _a === void 0 ? void 0 : _a.ready$.subscribe((ready) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
22
|
+
var _b;
|
|
23
|
+
if (flags.silent)
|
|
24
|
+
this.__ui = new codiac_ops_common_1.ThrowingUserInputProvider(this.logger);
|
|
25
|
+
this._userCntx = yield this.establishTenantContext(this._userCntx);
|
|
26
|
+
let grant;
|
|
27
|
+
this.clusterDefs = yield this.loadClusters();
|
|
28
|
+
if (this.clusterDefs.length === 0) {
|
|
29
|
+
this._ui.userMessage("No clusters found");
|
|
30
|
+
}
|
|
31
|
+
else if (flags.silent) {
|
|
32
|
+
// Build candidate silently
|
|
33
|
+
if (flags.user == undefined || flags.user.length === 0)
|
|
34
|
+
throw new Error(`No user provided.`);
|
|
35
|
+
if (_.isEmpty(flags.cluster))
|
|
36
|
+
throw new Error(`No cluster provided.`);
|
|
37
|
+
let found = this.clusterDefs.find(c => c.name === flags.cluster);
|
|
38
|
+
if (!found)
|
|
39
|
+
throw new Error(`Given cluster does not exist in this tenant.`);
|
|
40
|
+
grant = { cluster: found, user: flags.user };
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
// Build candidate interactively
|
|
44
|
+
let candidate = {};
|
|
45
|
+
if (flags.cluster) {
|
|
46
|
+
let found = this.clusterDefs.find(c => c.name === flags.cluster);
|
|
47
|
+
if (found)
|
|
48
|
+
candidate.cluster = found;
|
|
49
|
+
}
|
|
50
|
+
if (flags.user && !_.isEmpty(flags.user))
|
|
51
|
+
candidate.user = flags.user;
|
|
52
|
+
let confirm = false;
|
|
53
|
+
do {
|
|
54
|
+
candidate.cluster = yield this.promptForCluster((_b = candidate.cluster) === null || _b === void 0 ? void 0 : _b.name);
|
|
55
|
+
candidate.user = yield this.promptForUser(candidate.user);
|
|
56
|
+
this._ui.userMessage(`Granting cluster access on [${this._styler.hilite(candidate.cluster.name)}] to user [${this._styler.hilite(candidate.user)}]`);
|
|
57
|
+
confirm = yield this._ui.promptConfirm("confirmGrant", `Continue? (Ctrl-C to cancel)`, false);
|
|
58
|
+
} while (confirm !== true);
|
|
59
|
+
grant = candidate;
|
|
60
|
+
}
|
|
61
|
+
if (grant) {
|
|
62
|
+
if (!flags.silent) {
|
|
63
|
+
yield this.cspContextualizer.promptForCloudProviderCreds(this.ioc, grant.cluster.provider);
|
|
64
|
+
}
|
|
65
|
+
this._ui.startSpinner(`Granting access...`);
|
|
66
|
+
let result = yield this.genRelayClient.Call.grantClusterAccess({ clusterName: grant.cluster.name, users: [grant.user] });
|
|
67
|
+
this._ui.stopSpinner(result.success ? "SUCCESS" : "FAILED");
|
|
68
|
+
let msg = `Access grant ${result.success ? this._styler.colorGood("SUCCEEDED") : this._styler.colorCritical("FAILED")}: ${result.message || ""}`;
|
|
69
|
+
this.logger.debug(msg, result);
|
|
70
|
+
this._ui.userMessage(msg);
|
|
71
|
+
}
|
|
72
|
+
else {
|
|
73
|
+
this._ui.userMessage("Operation cancelled. No work was done.");
|
|
74
|
+
}
|
|
75
|
+
resolve();
|
|
76
|
+
}));
|
|
77
|
+
}
|
|
78
|
+
catch (err) {
|
|
79
|
+
reject(err);
|
|
80
|
+
}
|
|
81
|
+
}));
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
/** Renders a user-friendly cluster description. */
|
|
85
|
+
describe(cluster) {
|
|
86
|
+
return `${cluster.name} ${this._styler.dim("(" + cluster.provider + (cluster.locationName ? ", " + cluster.locationName : "") + ")")}`;
|
|
87
|
+
}
|
|
88
|
+
/** Retrieve the list of available clusters for the current tenant. */
|
|
89
|
+
loadClusters(csp) {
|
|
90
|
+
var _a, _b, _c, _d;
|
|
91
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
92
|
+
try {
|
|
93
|
+
let crit = { privateOwner: (_a = this._userCntx) === null || _a === void 0 ? void 0 : _a.currentTenantCode };
|
|
94
|
+
let projection = { pathsIncluded: ["id", "name", "provider", "locationName", "privateOwner", "instance"], pathsExcluded: [] };
|
|
95
|
+
let readResult = yield this._codiacApi.ClusterDef.tryReadMany(crit, { projection: projection });
|
|
96
|
+
let clusterDefs = (_b = readResult.output) !== null && _b !== void 0 ? _b : []; // we can only deinit clusters that have an instance
|
|
97
|
+
if (csp && Object.keys(codiac_domain_1.CloudProviderEnum).indexOf(csp) >= 0) {
|
|
98
|
+
clusterDefs = clusterDefs.filter(c => c.provider == csp);
|
|
99
|
+
}
|
|
100
|
+
clusterDefs = clusterDefs.filter(c => c.instance != undefined);
|
|
101
|
+
clusterDefs = _.orderBy(clusterDefs, c => c.name);
|
|
102
|
+
return clusterDefs;
|
|
103
|
+
}
|
|
104
|
+
catch (err) {
|
|
105
|
+
throw new Error(`Error loading clusters: ${(_c = err.name) !== null && _c !== void 0 ? _c : ""} ${(_d = err.message) !== null && _d !== void 0 ? _d : ""}`);
|
|
106
|
+
}
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
/** Returns the name of the selected cluster.
|
|
110
|
+
*/
|
|
111
|
+
promptForCluster(defaultValue) {
|
|
112
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
113
|
+
let output;
|
|
114
|
+
let keep = false;
|
|
115
|
+
if (defaultValue && this.clusterDefs.find(c => c.name === defaultValue)) {
|
|
116
|
+
keep = yield this._ui.promptConfirm("clusterNameConfirm", `Target Cluster: [${this._styler.hilite(defaultValue)}]`, true);
|
|
117
|
+
}
|
|
118
|
+
if (keep === true) {
|
|
119
|
+
output = this.clusterDefs.find(c => c.name === defaultValue);
|
|
120
|
+
}
|
|
121
|
+
else {
|
|
122
|
+
let choices = this.clusterDefs
|
|
123
|
+
.map(c => { return { name: this.describe(c), value: c.name }; });
|
|
124
|
+
let selectedName = (yield this._ui.promptSelect("clusterName", "Select the target cluster:", choices));
|
|
125
|
+
output = this.clusterDefs.find(c => c.name === selectedName);
|
|
126
|
+
}
|
|
127
|
+
return output;
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
promptForUser(defaultValue) {
|
|
131
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
132
|
+
let output;
|
|
133
|
+
let keep = false;
|
|
134
|
+
if (defaultValue) {
|
|
135
|
+
keep = yield this._ui.promptConfirm("usernameConfirm", `AWS username: [${this._styler.hilite(defaultValue)}]`, true);
|
|
136
|
+
}
|
|
137
|
+
if (defaultValue != undefined && keep === true) {
|
|
138
|
+
output = defaultValue;
|
|
139
|
+
}
|
|
140
|
+
else {
|
|
141
|
+
output = (yield this._ui.prompt("username", "AWS username (email): ", true, defaultValue));
|
|
142
|
+
}
|
|
143
|
+
return output;
|
|
144
|
+
});
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
exports.default = NocClusterGrant;
|
|
148
|
+
NocClusterGrant.description = '(AWS Only) Provides cluster access to the given user.';
|
|
149
|
+
NocClusterGrant.aliases = ["cluster:grant"];
|
|
150
|
+
NocClusterGrant.flags = {
|
|
151
|
+
help: core_1.Flags.help({ char: 'h' }),
|
|
152
|
+
cluster: core_1.Flags.string({ char: 'c', required: false, description: 'Name of the cluster.' }),
|
|
153
|
+
// provider: Flags.custom({ char: 'p', options: Object.keys(CloudProviderEnum), required: false, description: 'Code for the cloud service provider.' }),
|
|
154
|
+
user: core_1.Flags.string({ char: 'u', multiple: false, required: false, description: 'AWS usernames (as email) to add.' }),
|
|
155
|
+
silent: core_1.Flags.boolean({ char: 'y', dependsOn: ["cluster", "user"], required: false, description: `(Optional: defaults to false) Prevents confirmations of user-values.` })
|
|
156
|
+
};
|
|
157
|
+
NocClusterGrant.args = {
|
|
158
|
+
name: core_1.Args.string({ description: 'Proposed name of the cluster' })
|
|
159
|
+
};
|
|
160
160
|
//# sourceMappingURL=grant.js.map
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import { CommandBaseEnterprise } from '../../../command-base-enterprise';
|
|
2
|
-
export default class NocClusterInit extends CommandBaseEnterprise {
|
|
3
|
-
static description: string;
|
|
4
|
-
static aliases: string[];
|
|
5
|
-
static flags: {
|
|
6
|
-
help: import("@oclif/core/lib/interfaces").BooleanFlag<void>;
|
|
7
|
-
name: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
|
|
8
|
-
provider: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
|
|
9
|
-
silent: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
10
|
-
};
|
|
11
|
-
static args: {
|
|
12
|
-
name: import("@oclif/core/lib/interfaces/parser").Arg<string | undefined, Record<string, unknown>>;
|
|
13
|
-
};
|
|
14
|
-
run(): Promise<void>;
|
|
15
|
-
/** Renders a user-friendly cluster description. */
|
|
16
|
-
private describe;
|
|
17
|
-
}
|
|
1
|
+
import { CommandBaseEnterprise } from '../../../command-base-enterprise';
|
|
2
|
+
export default class NocClusterInit extends CommandBaseEnterprise {
|
|
3
|
+
static description: string;
|
|
4
|
+
static aliases: string[];
|
|
5
|
+
static flags: {
|
|
6
|
+
help: import("@oclif/core/lib/interfaces").BooleanFlag<void>;
|
|
7
|
+
name: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
|
|
8
|
+
provider: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
|
|
9
|
+
silent: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
10
|
+
};
|
|
11
|
+
static args: {
|
|
12
|
+
name: import("@oclif/core/lib/interfaces/parser").Arg<string | undefined, Record<string, unknown>>;
|
|
13
|
+
};
|
|
14
|
+
run(): Promise<void>;
|
|
15
|
+
/** Renders a user-friendly cluster description. */
|
|
16
|
+
private describe;
|
|
17
|
+
}
|
|
@@ -1,117 +1,117 @@
|
|
|
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 codiac_domain_1 = require("@codiac.io/codiac-domain");
|
|
6
|
-
const command_base_enterprise_1 = require("../../../command-base-enterprise");
|
|
7
|
-
const codiac_ops_common_1 = require("@codiac.io/codiac-ops-common");
|
|
8
|
-
class NocClusterInit extends command_base_enterprise_1.CommandBaseEnterprise {
|
|
9
|
-
run() {
|
|
10
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
11
|
-
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
12
|
-
var _a;
|
|
13
|
-
try {
|
|
14
|
-
this.bootstrap();
|
|
15
|
-
const { args, flags } = yield this.parse(NocClusterInit);
|
|
16
|
-
(_a = this._relayContainer) === null || _a === void 0 ? void 0 : _a.ready$.subscribe(() => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
17
|
-
var _b;
|
|
18
|
-
try {
|
|
19
|
-
if (flags.silent)
|
|
20
|
-
this.__ui = new codiac_ops_common_1.ThrowingUserInputProvider(this.logger);
|
|
21
|
-
this._userCntx = yield this.establishTenantContext(this._userCntx);
|
|
22
|
-
let provider = (flags.provider) ? codiac_domain_1.CloudProviderEnum[flags.provider] : undefined;
|
|
23
|
-
let cluster;
|
|
24
|
-
let crit = { privateOwner: (_b = this._userCntx) === null || _b === void 0 ? void 0 : _b.currentTenantCode };
|
|
25
|
-
// Ensure that the type alias matches the projection...
|
|
26
|
-
let projection = { pathsIncluded: ["id", "name", "provider", "locationName", "privateOwner", "instance"], pathsExcluded: [] };
|
|
27
|
-
let readResult = yield this._codiacApi.ClusterDef.tryReadMany(crit, { projection: projection });
|
|
28
|
-
let clusterDefs = readResult.output ? readResult.output.map(c => c).filter(c => c.instance != undefined) : []; // we can only deinit clusters that have an instance
|
|
29
|
-
if (provider && Object.keys(codiac_domain_1.CloudProviderEnum).indexOf(provider) >= 0) {
|
|
30
|
-
clusterDefs = clusterDefs.filter(c => c.provider == provider);
|
|
31
|
-
}
|
|
32
|
-
let confirm = false;
|
|
33
|
-
if (readResult.error === undefined && clusterDefs.length === 0) {
|
|
34
|
-
this._ui.userMessage("No clusters exist with instances to initialize");
|
|
35
|
-
}
|
|
36
|
-
else if (flags.silent) {
|
|
37
|
-
cluster = { name: flags.name, provider: (provider) };
|
|
38
|
-
}
|
|
39
|
-
else {
|
|
40
|
-
let candidate = {};
|
|
41
|
-
if (flags.name)
|
|
42
|
-
candidate.name = flags.name;
|
|
43
|
-
do {
|
|
44
|
-
if (readResult.error) {
|
|
45
|
-
// if there is a problem with the cluster record, it may prevent a good read,
|
|
46
|
-
// so we're going to allow the user to invoke the operation nonetheless.
|
|
47
|
-
let allPvds = this.cspUiFactory.getAllProviders(this.ioc);
|
|
48
|
-
const csp = yield this.cspContextualizer.promptForCloudProvider(allPvds, undefined);
|
|
49
|
-
const name = (yield this._ui.prompt("clusterName", "Enter name of the cluster to initialize:", true));
|
|
50
|
-
cluster = { name: name, provider: csp };
|
|
51
|
-
}
|
|
52
|
-
else { // if (readResult.success && readResult.output && readResult.output.length > 0) {
|
|
53
|
-
let found = (candidate.name) ? clusterDefs.find(c => c.name === candidate.name) : undefined;
|
|
54
|
-
if (found) {
|
|
55
|
-
cluster = found;
|
|
56
|
-
}
|
|
57
|
-
else {
|
|
58
|
-
let choices = clusterDefs
|
|
59
|
-
.map(c => { return { name: this.describe(c), value: c.name }; });
|
|
60
|
-
const name = (yield this._ui.promptSelect("clusterName", "Select the cluster to initialize:", choices));
|
|
61
|
-
let def = clusterDefs.find(c => c.name === name);
|
|
62
|
-
cluster = { name: name, provider: def.provider };
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
confirm = yield this._ui.promptConfirm("confirmInit", `Initialize the cluster: ${this._styler.hilite(this.describe(cluster))} ? `, false);
|
|
66
|
-
if (!confirm)
|
|
67
|
-
candidate = {}; // if cluster was set as a cmd flag, but they denied the confirm, this allows selecting a different one.
|
|
68
|
-
} while (confirm !== true);
|
|
69
|
-
}
|
|
70
|
-
if (cluster) {
|
|
71
|
-
if (confirm == true || flags.silent) {
|
|
72
|
-
if (!flags.silent) {
|
|
73
|
-
yield this.cspContextualizer.promptForCloudProviderCreds(this.ioc, cluster.provider);
|
|
74
|
-
}
|
|
75
|
-
this._ui.startSpinner(`Initializing cluster: ${this._styler.hilite(cluster.name)}`);
|
|
76
|
-
let resultIngress = yield this.relayClient.clusterIngressCreate(cluster.name);
|
|
77
|
-
this._ui.stopSpinner(resultIngress.success ? "SUCCESS" : "FAILED");
|
|
78
|
-
let msg = `Cluster Initialize ${resultIngress.success ? this._styler.colorGood("SUCCESS") : this._styler.colorCritical("FAILED")}: ${resultIngress.message || ""}`;
|
|
79
|
-
this.logger.debug(msg, resultIngress);
|
|
80
|
-
this._ui.userMessage(msg);
|
|
81
|
-
}
|
|
82
|
-
else {
|
|
83
|
-
this._ui.userMessage("Operation cancelled. No work was done.");
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
resolve();
|
|
87
|
-
}
|
|
88
|
-
catch (err) {
|
|
89
|
-
this.handleError(err);
|
|
90
|
-
reject(err); // why not just resolve at this point?
|
|
91
|
-
}
|
|
92
|
-
}));
|
|
93
|
-
}
|
|
94
|
-
catch (err) {
|
|
95
|
-
reject(err);
|
|
96
|
-
}
|
|
97
|
-
}));
|
|
98
|
-
});
|
|
99
|
-
}
|
|
100
|
-
/** Renders a user-friendly cluster description. */
|
|
101
|
-
describe(cluster) {
|
|
102
|
-
return `${cluster.name} ${this._styler.dim("(" + cluster.provider + (cluster.locationName ? ", " + cluster.locationName : "") + ")")}`;
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
exports.default = NocClusterInit;
|
|
106
|
-
NocClusterInit.description = 'Post-create initialization for the cluster (installs the ingress controller service)';
|
|
107
|
-
NocClusterInit.aliases = ["cluster:init"];
|
|
108
|
-
NocClusterInit.flags = {
|
|
109
|
-
help: core_1.Flags.help({ char: 'h' }),
|
|
110
|
-
name: core_1.Flags.string({ char: 'n', required: false, description: 'Name of the cluster.' }),
|
|
111
|
-
provider: core_1.Flags.string({ char: 'p', options: Object.keys(codiac_domain_1.CloudProviderEnum), required: false, description: 'Code for the cloud service provider.' }),
|
|
112
|
-
silent: core_1.Flags.boolean({ char: 'y', dependsOn: ["name"], required: false, description: `(Optional: defaults to false) Prevents interactive user-interface and throws if interaction is needed. Requires arguments: [--name -n]` })
|
|
113
|
-
};
|
|
114
|
-
NocClusterInit.args = {
|
|
115
|
-
name: core_1.Args.string({ description: 'Name of existing cluster to initialize.' })
|
|
116
|
-
};
|
|
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 codiac_domain_1 = require("@codiac.io/codiac-domain");
|
|
6
|
+
const command_base_enterprise_1 = require("../../../command-base-enterprise");
|
|
7
|
+
const codiac_ops_common_1 = require("@codiac.io/codiac-ops-common");
|
|
8
|
+
class NocClusterInit extends command_base_enterprise_1.CommandBaseEnterprise {
|
|
9
|
+
run() {
|
|
10
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
11
|
+
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
12
|
+
var _a;
|
|
13
|
+
try {
|
|
14
|
+
this.bootstrap();
|
|
15
|
+
const { args, flags } = yield this.parse(NocClusterInit);
|
|
16
|
+
(_a = this._relayContainer) === null || _a === void 0 ? void 0 : _a.ready$.subscribe(() => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
17
|
+
var _b;
|
|
18
|
+
try {
|
|
19
|
+
if (flags.silent)
|
|
20
|
+
this.__ui = new codiac_ops_common_1.ThrowingUserInputProvider(this.logger);
|
|
21
|
+
this._userCntx = yield this.establishTenantContext(this._userCntx);
|
|
22
|
+
let provider = (flags.provider) ? codiac_domain_1.CloudProviderEnum[flags.provider] : undefined;
|
|
23
|
+
let cluster;
|
|
24
|
+
let crit = { privateOwner: (_b = this._userCntx) === null || _b === void 0 ? void 0 : _b.currentTenantCode };
|
|
25
|
+
// Ensure that the type alias matches the projection...
|
|
26
|
+
let projection = { pathsIncluded: ["id", "name", "provider", "locationName", "privateOwner", "instance"], pathsExcluded: [] };
|
|
27
|
+
let readResult = yield this._codiacApi.ClusterDef.tryReadMany(crit, { projection: projection });
|
|
28
|
+
let clusterDefs = readResult.output ? readResult.output.map(c => c).filter(c => c.instance != undefined) : []; // we can only deinit clusters that have an instance
|
|
29
|
+
if (provider && Object.keys(codiac_domain_1.CloudProviderEnum).indexOf(provider) >= 0) {
|
|
30
|
+
clusterDefs = clusterDefs.filter(c => c.provider == provider);
|
|
31
|
+
}
|
|
32
|
+
let confirm = false;
|
|
33
|
+
if (readResult.error === undefined && clusterDefs.length === 0) {
|
|
34
|
+
this._ui.userMessage("No clusters exist with instances to initialize");
|
|
35
|
+
}
|
|
36
|
+
else if (flags.silent) {
|
|
37
|
+
cluster = { name: flags.name, provider: (provider) };
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
let candidate = {};
|
|
41
|
+
if (flags.name)
|
|
42
|
+
candidate.name = flags.name;
|
|
43
|
+
do {
|
|
44
|
+
if (readResult.error) {
|
|
45
|
+
// if there is a problem with the cluster record, it may prevent a good read,
|
|
46
|
+
// so we're going to allow the user to invoke the operation nonetheless.
|
|
47
|
+
let allPvds = this.cspUiFactory.getAllProviders(this.ioc);
|
|
48
|
+
const csp = yield this.cspContextualizer.promptForCloudProvider(allPvds, undefined);
|
|
49
|
+
const name = (yield this._ui.prompt("clusterName", "Enter name of the cluster to initialize:", true));
|
|
50
|
+
cluster = { name: name, provider: csp };
|
|
51
|
+
}
|
|
52
|
+
else { // if (readResult.success && readResult.output && readResult.output.length > 0) {
|
|
53
|
+
let found = (candidate.name) ? clusterDefs.find(c => c.name === candidate.name) : undefined;
|
|
54
|
+
if (found) {
|
|
55
|
+
cluster = found;
|
|
56
|
+
}
|
|
57
|
+
else {
|
|
58
|
+
let choices = clusterDefs
|
|
59
|
+
.map(c => { return { name: this.describe(c), value: c.name }; });
|
|
60
|
+
const name = (yield this._ui.promptSelect("clusterName", "Select the cluster to initialize:", choices));
|
|
61
|
+
let def = clusterDefs.find(c => c.name === name);
|
|
62
|
+
cluster = { name: name, provider: def.provider };
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
confirm = yield this._ui.promptConfirm("confirmInit", `Initialize the cluster: ${this._styler.hilite(this.describe(cluster))} ? `, false);
|
|
66
|
+
if (!confirm)
|
|
67
|
+
candidate = {}; // if cluster was set as a cmd flag, but they denied the confirm, this allows selecting a different one.
|
|
68
|
+
} while (confirm !== true);
|
|
69
|
+
}
|
|
70
|
+
if (cluster) {
|
|
71
|
+
if (confirm == true || flags.silent) {
|
|
72
|
+
if (!flags.silent) {
|
|
73
|
+
yield this.cspContextualizer.promptForCloudProviderCreds(this.ioc, cluster.provider);
|
|
74
|
+
}
|
|
75
|
+
this._ui.startSpinner(`Initializing cluster: ${this._styler.hilite(cluster.name)}`);
|
|
76
|
+
let resultIngress = yield this.relayClient.clusterIngressCreate(cluster.name);
|
|
77
|
+
this._ui.stopSpinner(resultIngress.success ? "SUCCESS" : "FAILED");
|
|
78
|
+
let msg = `Cluster Initialize ${resultIngress.success ? this._styler.colorGood("SUCCESS") : this._styler.colorCritical("FAILED")}: ${resultIngress.message || ""}`;
|
|
79
|
+
this.logger.debug(msg, resultIngress);
|
|
80
|
+
this._ui.userMessage(msg);
|
|
81
|
+
}
|
|
82
|
+
else {
|
|
83
|
+
this._ui.userMessage("Operation cancelled. No work was done.");
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
resolve();
|
|
87
|
+
}
|
|
88
|
+
catch (err) {
|
|
89
|
+
this.handleError(err);
|
|
90
|
+
reject(err); // why not just resolve at this point?
|
|
91
|
+
}
|
|
92
|
+
}));
|
|
93
|
+
}
|
|
94
|
+
catch (err) {
|
|
95
|
+
reject(err);
|
|
96
|
+
}
|
|
97
|
+
}));
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
/** Renders a user-friendly cluster description. */
|
|
101
|
+
describe(cluster) {
|
|
102
|
+
return `${cluster.name} ${this._styler.dim("(" + cluster.provider + (cluster.locationName ? ", " + cluster.locationName : "") + ")")}`;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
exports.default = NocClusterInit;
|
|
106
|
+
NocClusterInit.description = 'Post-create initialization for the cluster (installs the ingress controller service)';
|
|
107
|
+
NocClusterInit.aliases = ["cluster:init"];
|
|
108
|
+
NocClusterInit.flags = {
|
|
109
|
+
help: core_1.Flags.help({ char: 'h' }),
|
|
110
|
+
name: core_1.Flags.string({ char: 'n', required: false, description: 'Name of the cluster.' }),
|
|
111
|
+
provider: core_1.Flags.string({ char: 'p', options: Object.keys(codiac_domain_1.CloudProviderEnum), required: false, description: 'Code for the cloud service provider.' }),
|
|
112
|
+
silent: core_1.Flags.boolean({ char: 'y', dependsOn: ["name"], required: false, description: `(Optional: defaults to false) Prevents interactive user-interface and throws if interaction is needed. Requires arguments: [--name -n]` })
|
|
113
|
+
};
|
|
114
|
+
NocClusterInit.args = {
|
|
115
|
+
name: core_1.Args.string({ description: 'Name of existing cluster to initialize.' })
|
|
116
|
+
};
|
|
117
117
|
//# sourceMappingURL=init.js.map
|