@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
package/lib/commands/unstage.js
CHANGED
|
@@ -1,58 +1,58 @@
|
|
|
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 inquirer = require("inquirer");
|
|
6
|
-
const command_base_tenantless_1 = require("../command-base-tenantless");
|
|
7
|
-
class Unstage extends command_base_tenantless_1.CommandBaseTenantless {
|
|
8
|
-
run() {
|
|
9
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
10
|
-
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
11
|
-
try {
|
|
12
|
-
this.bootstrap();
|
|
13
|
-
const { args, flags } = yield this.parse(Unstage);
|
|
14
|
-
let skip = false;
|
|
15
|
-
let files;
|
|
16
|
-
if (!args.files && !flags.all) {
|
|
17
|
-
// throw new Error("Operation cancelled: You must either specify files or set the 'all' flag (--all or -A).");
|
|
18
|
-
let unstaged = yield this._ops.gitListChanges("staged");
|
|
19
|
-
if (unstaged.length > 0) {
|
|
20
|
-
let result = yield inquirer.prompt({
|
|
21
|
-
type: 'checkbox',
|
|
22
|
-
name: 'files',
|
|
23
|
-
message: 'Changes to unstage: (ctrl-c to cancel) ',
|
|
24
|
-
choices: unstaged
|
|
25
|
-
});
|
|
26
|
-
files = result.files;
|
|
27
|
-
}
|
|
28
|
-
else {
|
|
29
|
-
this._ui.userMessage("Nothing to unstage.");
|
|
30
|
-
skip = true;
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
else {
|
|
34
|
-
// NOTE: We're gonna leave it to git to validate the given file list
|
|
35
|
-
files = (args.files) ? args.files.split(" ") : undefined;
|
|
36
|
-
}
|
|
37
|
-
if (!skip)
|
|
38
|
-
yield this._ops.gitUnstage(files);
|
|
39
|
-
resolve();
|
|
40
|
-
}
|
|
41
|
-
catch (err) {
|
|
42
|
-
this.handleError(err);
|
|
43
|
-
reject(err);
|
|
44
|
-
}
|
|
45
|
-
}));
|
|
46
|
-
});
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
exports.default = Unstage;
|
|
50
|
-
Unstage.description = 'Flags files to be included in the next commit.';
|
|
51
|
-
Unstage.flags = {
|
|
52
|
-
help: core_1.Flags.help({ char: 'h' }),
|
|
53
|
-
all: core_1.Flags.boolean({ char: 'A', description: 'Include all modified files.' })
|
|
54
|
-
};
|
|
55
|
-
Unstage.args = {
|
|
56
|
-
files: core_1.Args.string({ description: 'Space-separated list of files to stage. Paths are relative to the main project root.', require: false })
|
|
57
|
-
};
|
|
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 inquirer = require("inquirer");
|
|
6
|
+
const command_base_tenantless_1 = require("../command-base-tenantless");
|
|
7
|
+
class Unstage extends command_base_tenantless_1.CommandBaseTenantless {
|
|
8
|
+
run() {
|
|
9
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
10
|
+
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
11
|
+
try {
|
|
12
|
+
this.bootstrap();
|
|
13
|
+
const { args, flags } = yield this.parse(Unstage);
|
|
14
|
+
let skip = false;
|
|
15
|
+
let files;
|
|
16
|
+
if (!args.files && !flags.all) {
|
|
17
|
+
// throw new Error("Operation cancelled: You must either specify files or set the 'all' flag (--all or -A).");
|
|
18
|
+
let unstaged = yield this._ops.gitListChanges("staged");
|
|
19
|
+
if (unstaged.length > 0) {
|
|
20
|
+
let result = yield inquirer.prompt({
|
|
21
|
+
type: 'checkbox',
|
|
22
|
+
name: 'files',
|
|
23
|
+
message: 'Changes to unstage: (ctrl-c to cancel) ',
|
|
24
|
+
choices: unstaged
|
|
25
|
+
});
|
|
26
|
+
files = result.files;
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
this._ui.userMessage("Nothing to unstage.");
|
|
30
|
+
skip = true;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
// NOTE: We're gonna leave it to git to validate the given file list
|
|
35
|
+
files = (args.files) ? args.files.split(" ") : undefined;
|
|
36
|
+
}
|
|
37
|
+
if (!skip)
|
|
38
|
+
yield this._ops.gitUnstage(files);
|
|
39
|
+
resolve();
|
|
40
|
+
}
|
|
41
|
+
catch (err) {
|
|
42
|
+
this.handleError(err);
|
|
43
|
+
reject(err);
|
|
44
|
+
}
|
|
45
|
+
}));
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
exports.default = Unstage;
|
|
50
|
+
Unstage.description = 'Flags files to be included in the next commit.';
|
|
51
|
+
Unstage.flags = {
|
|
52
|
+
help: core_1.Flags.help({ char: 'h' }),
|
|
53
|
+
all: core_1.Flags.boolean({ char: 'A', description: 'Include all modified files.' })
|
|
54
|
+
};
|
|
55
|
+
Unstage.args = {
|
|
56
|
+
files: core_1.Args.string({ description: 'Space-separated list of files to stage. Paths are relative to the main project root.', require: false })
|
|
57
|
+
};
|
|
58
58
|
//# sourceMappingURL=unstage.js.map
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import "reflect-metadata";
|
|
2
|
+
import { CommandBaseEnterprise } from '../../command-base-enterprise';
|
|
3
|
+
export default class ViewDashboard extends CommandBaseEnterprise {
|
|
4
|
+
static description: string;
|
|
5
|
+
static aliases: string[];
|
|
6
|
+
static flags: {
|
|
7
|
+
help: import("@oclif/core/lib/interfaces").BooleanFlag<void>;
|
|
8
|
+
};
|
|
9
|
+
static args: never[];
|
|
10
|
+
private get cliExec();
|
|
11
|
+
private __cliExec;
|
|
12
|
+
run(): Promise<void>;
|
|
13
|
+
/** NOTE: Requires k8sSetKubeContext() to be run first.
|
|
14
|
+
* The local dashboard runs off of kubectl proxy,
|
|
15
|
+
* which is bound to the singleton kubectl current context on the local machine. */
|
|
16
|
+
k8sRunDashboard(namespace?: string): Promise<void>;
|
|
17
|
+
}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
require("reflect-metadata");
|
|
5
|
+
const path = require("path");
|
|
6
|
+
const core_1 = require("@oclif/core");
|
|
7
|
+
const command_base_enterprise_1 = require("../../command-base-enterprise");
|
|
8
|
+
const codiac_ops_common_1 = require("@codiac.io/codiac-ops-common");
|
|
9
|
+
class ViewDashboard extends command_base_enterprise_1.CommandBaseEnterprise {
|
|
10
|
+
get cliExec() {
|
|
11
|
+
if (this.__cliExec === undefined) {
|
|
12
|
+
// this.__cliExec = this.ioc.get(CliExec);
|
|
13
|
+
this.__cliExec = new codiac_ops_common_1.CliExec(this.logger);
|
|
14
|
+
}
|
|
15
|
+
return this.__cliExec;
|
|
16
|
+
}
|
|
17
|
+
run() {
|
|
18
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
19
|
+
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
20
|
+
try {
|
|
21
|
+
this.bootstrap();
|
|
22
|
+
this._userCntx = yield this.establishTenantContext(this._userCntx);
|
|
23
|
+
yield this.establishEnterpriseContext();
|
|
24
|
+
let cabinet = yield this.establishCabinet();
|
|
25
|
+
if (!cabinet.cluster)
|
|
26
|
+
throw new Error(`The current cabinet record [${cabinet.name}] does not have a cluster reference.`);
|
|
27
|
+
let kubeCntx = yield this.establishK8sContext(cabinet.cluster);
|
|
28
|
+
// TODO: Get this from codiacApi: cabinet.infrx.namespace
|
|
29
|
+
if (!cabinet.infrx)
|
|
30
|
+
throw new Error(`The current cabinet record [${cabinet.name}] does not have infrx details (perhaps it has not been provisioned yet).`);
|
|
31
|
+
let namespace = `${cabinet.infrx.namespace}`;
|
|
32
|
+
yield this.k8sSetKubeContext(kubeCntx.currentContext);
|
|
33
|
+
yield this.k8sRunDashboard(namespace);
|
|
34
|
+
// let k8sProxyPort = 9090;
|
|
35
|
+
// let baseUrl = `https://localhost:${k8sProxyPort}/`;
|
|
36
|
+
// let dashPath = `api/v1/namespaces/kube-system/services/kubernetes-dashboard/proxy/#!/overview?namespace=${cabCntx.ca}`;
|
|
37
|
+
// let url = path.join(baseUrl, dashPath);
|
|
38
|
+
// let cmd = `kubectl proxy --port ${k8sProxyPort}`;
|
|
39
|
+
// this._ops.runDashboard(cabCntx.cabinet)
|
|
40
|
+
// // process.execute(cmd);
|
|
41
|
+
// // Open this url in a browser
|
|
42
|
+
// await this._ui.open(url);
|
|
43
|
+
// await this.relayClient.deployAssets(cabCntx, assetVersions);
|
|
44
|
+
resolve();
|
|
45
|
+
}
|
|
46
|
+
catch (err) {
|
|
47
|
+
this.handleError(err);
|
|
48
|
+
reject(err);
|
|
49
|
+
}
|
|
50
|
+
}));
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
/** NOTE: Requires k8sSetKubeContext() to be run first.
|
|
54
|
+
* The local dashboard runs off of kubectl proxy,
|
|
55
|
+
* which is bound to the singleton kubectl current context on the local machine. */
|
|
56
|
+
k8sRunDashboard(namespace) {
|
|
57
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
58
|
+
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
59
|
+
try {
|
|
60
|
+
let k8sProxyPort = 9090;
|
|
61
|
+
let baseUrl = `http://localhost:${k8sProxyPort}/`;
|
|
62
|
+
let dashPath = `/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/#/login`;
|
|
63
|
+
// BYG: removed below b/c k8s we lose it on k8s login redir anyway
|
|
64
|
+
// if (namespace) dashPath = dashPath.concat(`?namespace=${namespace}`)
|
|
65
|
+
let url = path.join(baseUrl, dashPath);
|
|
66
|
+
// We're going to fire this off async and open the browser while its running.
|
|
67
|
+
let cmd2 = `kubectl proxy --port ${k8sProxyPort}`;
|
|
68
|
+
this.cliExec.spawnAndLog(cmd2, process.cwd());
|
|
69
|
+
yield this._ui.openUrl(url);
|
|
70
|
+
resolve();
|
|
71
|
+
}
|
|
72
|
+
catch (err) {
|
|
73
|
+
reject(err);
|
|
74
|
+
}
|
|
75
|
+
}));
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
exports.default = ViewDashboard;
|
|
80
|
+
ViewDashboard.description = 'Spins up the dashboard for a given cabinet';
|
|
81
|
+
ViewDashboard.aliases = ["view:dash", "dash"];
|
|
82
|
+
ViewDashboard.flags = {
|
|
83
|
+
help: core_1.Flags.help({ char: 'h' }),
|
|
84
|
+
// enterprise: flags.string({char:'n', exclusive: ["environment", "cabinet"], description: 'The name of the enterprise for the cabinet.'}),
|
|
85
|
+
// cabinet: flags.string({char:'c', exclusive: ["enterprise", "environment"], description: 'The name of the cabinet for which to show the dashboard.'})
|
|
86
|
+
};
|
|
87
|
+
ViewDashboard.args = [];
|
|
88
|
+
//# sourceMappingURL=dashboard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dashboard.js","sourceRoot":"","sources":["../../../src/commands/view/dashboard.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import "reflect-metadata";
|
|
2
|
+
import { CommandBaseEnterprise } from '../../command-base-enterprise';
|
|
3
|
+
export default class ViewPods extends CommandBaseEnterprise {
|
|
4
|
+
static description: string;
|
|
5
|
+
static aliases: string[];
|
|
6
|
+
static flags: {
|
|
7
|
+
help: import("@oclif/core/lib/interfaces").BooleanFlag<void>;
|
|
8
|
+
};
|
|
9
|
+
static args: never[];
|
|
10
|
+
private get cliExec();
|
|
11
|
+
private __cliExec;
|
|
12
|
+
run(): Promise<void>;
|
|
13
|
+
k9sRun(namespace: string): Promise<void>;
|
|
14
|
+
}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
require("reflect-metadata");
|
|
5
|
+
//import * as path from 'path';
|
|
6
|
+
const core_1 = require("@oclif/core");
|
|
7
|
+
//import * as lib from '@codiac.io/codiac-ops-tenantless';
|
|
8
|
+
//import { CabinetScope } from '@codiac.io/codiac-relay-contracts';
|
|
9
|
+
const command_base_enterprise_1 = require("../../command-base-enterprise");
|
|
10
|
+
const codiac_ops_common_1 = require("@codiac.io/codiac-ops-common");
|
|
11
|
+
class ViewPods extends command_base_enterprise_1.CommandBaseEnterprise {
|
|
12
|
+
get cliExec() {
|
|
13
|
+
if (this.__cliExec === undefined) {
|
|
14
|
+
// this.__cliExec = this.ioc.get(CliExec);
|
|
15
|
+
this.__cliExec = new codiac_ops_common_1.CliExec(this.logger);
|
|
16
|
+
}
|
|
17
|
+
return this.__cliExec;
|
|
18
|
+
}
|
|
19
|
+
run() {
|
|
20
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
21
|
+
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
22
|
+
try {
|
|
23
|
+
this.bootstrap();
|
|
24
|
+
this._userCntx = yield this.establishTenantContext(this._userCntx);
|
|
25
|
+
yield this.establishEnterpriseContext();
|
|
26
|
+
let cabinet = yield this.establishCabinet();
|
|
27
|
+
// let cabCntx = new CabinetScope(cabinet.enterpriseCode, cabinet.environment, cabinet.name);
|
|
28
|
+
if (!cabinet.cluster)
|
|
29
|
+
throw new Error(`The current cabinet record [${cabinet.name}] does not have a cluster reference.`);
|
|
30
|
+
let kubeCntx = yield this.establishK8sContext(cabinet.cluster);
|
|
31
|
+
yield this.k8sSetKubeContext(kubeCntx.currentContext);
|
|
32
|
+
// TODO: Get this from codiacApi: cabinet.infrx.namespace
|
|
33
|
+
if (!cabinet.infrx)
|
|
34
|
+
throw new Error(`The current cabinet record [${cabinet.name}] does not have infrx details (perhaps it has not been provisioned yet).`);
|
|
35
|
+
let namespace = `${cabinet.infrx.namespace}`;
|
|
36
|
+
yield this.k9sRun(namespace);
|
|
37
|
+
// let k8sProxyPort = 9090;
|
|
38
|
+
// let baseUrl = `https://localhost:${k8sProxyPort}/`;
|
|
39
|
+
// let dashPath = `api/v1/namespaces/kube-system/services/kubernetes-dashboard/proxy/#!/overview?namespace=${cabCntx.ca}`;
|
|
40
|
+
// let url = path.join(baseUrl, dashPath);
|
|
41
|
+
// let cmd = `kubectl proxy --port ${k8sProxyPort}`;
|
|
42
|
+
// this._ops.runDashboard(cabCntx.cabinet)
|
|
43
|
+
// // process.execute(cmd);
|
|
44
|
+
// // Open this url in a browser
|
|
45
|
+
// await this._ui.open(url);
|
|
46
|
+
// await this.relayClient.deployAssets(cabCntx, assetVersions);
|
|
47
|
+
resolve();
|
|
48
|
+
}
|
|
49
|
+
catch (err) {
|
|
50
|
+
this.handleError(err);
|
|
51
|
+
reject(err);
|
|
52
|
+
}
|
|
53
|
+
}));
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
k9sRun(namespace) {
|
|
57
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
58
|
+
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
59
|
+
try {
|
|
60
|
+
// TODO: Auto-activate the right cluster context - gotta read that from the api cabinet.cluster.
|
|
61
|
+
// let contextName = "get-cluster-name-from-context";
|
|
62
|
+
// let contextCmd = `kubectl config use-context ${contextName}`;
|
|
63
|
+
// this._cliExec.spawnAndLog(contextCmd, this._projectRoot);
|
|
64
|
+
// fire off this command in a separate cli window.
|
|
65
|
+
let innerCmd = `k9s -n ${namespace}`;
|
|
66
|
+
let cmd = `docker exec -it k8s-cmd ${innerCmd}`;
|
|
67
|
+
// We're going to fire this off async and leave it running.
|
|
68
|
+
// How do we open it into a new cli window?
|
|
69
|
+
this.cliExec.spawnAndLog(cmd, process.cwd());
|
|
70
|
+
resolve();
|
|
71
|
+
}
|
|
72
|
+
catch (err) {
|
|
73
|
+
reject(err);
|
|
74
|
+
}
|
|
75
|
+
}));
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
exports.default = ViewPods;
|
|
80
|
+
ViewPods.description = 'Spins up the k9s cli pod viewer';
|
|
81
|
+
ViewPods.aliases = ["view:k9s", "k9s"];
|
|
82
|
+
ViewPods.flags = {
|
|
83
|
+
help: core_1.Flags.help({ char: 'h' }),
|
|
84
|
+
// enterprise: flags.string({char:'n', exclusive: ["environment", "cabinet"], description: 'The name of the enterprise for the cabinet.'}),
|
|
85
|
+
// cabinet: flags.string({char:'c', exclusive: ["enterprise", "environment"], description: 'The name of the cabinet for which to show the dashboard.'})
|
|
86
|
+
};
|
|
87
|
+
ViewPods.args = [];
|
|
88
|
+
//# sourceMappingURL=pods.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pods.js","sourceRoot":"","sources":["../../../src/commands/view/pods.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { CommandBaseEnterprise } from '../command-base-enterprise';
|
|
2
|
-
export default class Whereami extends CommandBaseEnterprise {
|
|
3
|
-
static description: string;
|
|
4
|
-
static flags: {
|
|
5
|
-
help: import("@oclif/core/lib/interfaces").BooleanFlag<void>;
|
|
6
|
-
name: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
|
|
7
|
-
force: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
8
|
-
};
|
|
9
|
-
static args: {};
|
|
10
|
-
run(): Promise<void>;
|
|
11
|
-
/** Returns undefined if the cabinet has no environment
|
|
12
|
-
* (undefined should never happen but if such a data issue existed, it would be VERY helpful to know about it here).
|
|
13
|
-
* On error, this method logs the error and returns ERROR_INDICATOR as output. */
|
|
14
|
-
private getEnvironmentFor;
|
|
15
|
-
}
|
|
1
|
+
import { CommandBaseEnterprise } from '../command-base-enterprise';
|
|
2
|
+
export default class Whereami extends CommandBaseEnterprise {
|
|
3
|
+
static description: string;
|
|
4
|
+
static flags: {
|
|
5
|
+
help: import("@oclif/core/lib/interfaces").BooleanFlag<void>;
|
|
6
|
+
name: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
|
|
7
|
+
force: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
8
|
+
};
|
|
9
|
+
static args: {};
|
|
10
|
+
run(): Promise<void>;
|
|
11
|
+
/** Returns undefined if the cabinet has no environment
|
|
12
|
+
* (undefined should never happen but if such a data issue existed, it would be VERY helpful to know about it here).
|
|
13
|
+
* On error, this method logs the error and returns ERROR_INDICATOR as output. */
|
|
14
|
+
private getEnvironmentFor;
|
|
15
|
+
}
|
package/lib/commands/whereami.js
CHANGED
|
@@ -1,123 +1,123 @@
|
|
|
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 command_base_enterprise_1 = require("../command-base-enterprise");
|
|
6
|
-
const codiac_constants_1 = require("../codiac-constants");
|
|
7
|
-
const prettify_1 = require("../prettify");
|
|
8
|
-
class Whereami 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, _b, _c;
|
|
13
|
-
try {
|
|
14
|
-
this.bootstrap();
|
|
15
|
-
const { args, flags } = yield this.parse(Whereami);
|
|
16
|
-
let bindings = {
|
|
17
|
-
tenant: (_b = (_a = this._projCfg) === null || _a === void 0 ? void 0 : _a.tenantCode) !== null && _b !== void 0 ? _b : this._userCntx.currentTenantCode
|
|
18
|
-
// , currentBranch: await this._ops.gitCurrentBranchNameFor(this._projectRoot)
|
|
19
|
-
};
|
|
20
|
-
if ((_c = this._projUserCfg) === null || _c === void 0 ? void 0 : _c.enterprise) {
|
|
21
|
-
bindings.enterprise = this._projUserCfg.enterprise.enterpriseCode;
|
|
22
|
-
if (this._projUserCfg.enterprise.cabinet) {
|
|
23
|
-
let environment = yield this.getEnvironmentFor(this._projUserCfg.enterprise.cabinet.cabinet);
|
|
24
|
-
bindings.environment = environment || "[unassigned]";
|
|
25
|
-
bindings.cabinet = this._projUserCfg.enterprise.cabinet.cabinet;
|
|
26
|
-
// bindings.cabinetBranch = this._projUserCfg.enterprise.cabinet.branch; // Support was never built for cabinet branch bindings, and now it's in the way (#wannabeagile).
|
|
27
|
-
}
|
|
28
|
-
if (this._projUserCfg.enterprise.assetBindings && this._projUserCfg.enterprise.assetBindings.length > 0) {
|
|
29
|
-
bindings.assets = [];
|
|
30
|
-
for (let assetBinding of this._projUserCfg.enterprise.assetBindings) {
|
|
31
|
-
bindings.assets.push({
|
|
32
|
-
asset: assetBinding.incarnation.assetName,
|
|
33
|
-
image: assetBinding.image.name
|
|
34
|
-
});
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
this._ui.userMessage((0, prettify_1.prettify)(bindings));
|
|
39
|
-
/* Cheap-ass requirement doc below:
|
|
40
|
-
|
|
41
|
-
Jun 4, 2020
|
|
42
|
-
Ben 11:17 AM
|
|
43
|
-
i need to know which enviroment im in
|
|
44
|
-
or at least, which environment you built against
|
|
45
|
-
|
|
46
|
-
Mark Freydl 11:18 AM
|
|
47
|
-
there’s an enterprise context that gets stored in the project-user config file (edited)
|
|
48
|
-
that states the current enterprise, cabinet and asset bindings that the user is pointing the project to (all that is based on gthe branch and cabinet-to-bramch binding, so it’s not source code 0- it’s local state)
|
|
49
|
-
|
|
50
|
-
Ben 11:20 AM
|
|
51
|
-
yeah, that works
|
|
52
|
-
forgot we have in the domain
|
|
53
|
-
that'd be a fun whoami
|
|
54
|
-
|
|
55
|
-
Mark Freydl 11:21 AM
|
|
56
|
-
Every time I work with Environment, I keep thinking that it doesnt have any real purpose other than being a tag
|
|
57
|
-
good idea
|
|
58
|
-
maybe a “whereami”
|
|
59
|
-
|
|
60
|
-
Ben 11:21 AM
|
|
61
|
-
fuck yes dude
|
|
62
|
-
|
|
63
|
-
Mark Freydl 11:21 AM
|
|
64
|
-
returns your enteprise context
|
|
65
|
-
and branch maybe
|
|
66
|
-
|
|
67
|
-
Ben 11:22 AM
|
|
68
|
-
always right, easy to access, i like it
|
|
69
|
-
|
|
70
|
-
Mark Freydl 11:27 AM
|
|
71
|
-
You should write that one.
|
|
72
|
-
it shd be easy - just need to use the cfgRepo to load the projectUser config and prob localOps to get the current branch info
|
|
73
|
-
|
|
74
|
-
Ben 11:30 AM
|
|
75
|
-
i'd be happy to.
|
|
76
|
-
|
|
77
|
-
*/
|
|
78
|
-
resolve();
|
|
79
|
-
}
|
|
80
|
-
catch (err) {
|
|
81
|
-
reject(err);
|
|
82
|
-
}
|
|
83
|
-
}));
|
|
84
|
-
});
|
|
85
|
-
}
|
|
86
|
-
/** Returns undefined if the cabinet has no environment
|
|
87
|
-
* (undefined should never happen but if such a data issue existed, it would be VERY helpful to know about it here).
|
|
88
|
-
* On error, this method logs the error and returns ERROR_INDICATOR as output. */
|
|
89
|
-
getEnvironmentFor(cabinet) {
|
|
90
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
91
|
-
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
92
|
-
let environment;
|
|
93
|
-
try {
|
|
94
|
-
let result = yield this._codiacApi.Cabinet.tryReadMany({ name: { $eq: cabinet } });
|
|
95
|
-
if (result.error)
|
|
96
|
-
throw result.error;
|
|
97
|
-
else if (result.output && result.output.length > 0) {
|
|
98
|
-
environment = result.output[0].environment;
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
catch (err) {
|
|
102
|
-
this.logger.debug(`Error retrieving environment for cabinet [${cabinet}, tenant: ${this._userCntx.currentTenantCode}]: ${err.name || ""} ${err.message || ""}`, err);
|
|
103
|
-
environment = codiac_constants_1.ERROR_INDICATOR;
|
|
104
|
-
}
|
|
105
|
-
finally {
|
|
106
|
-
// HACK: idkwtf we have to bam this from one TS version to another
|
|
107
|
-
resolve(environment);
|
|
108
|
-
}
|
|
109
|
-
}));
|
|
110
|
-
});
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
exports.default = Whereami;
|
|
114
|
-
Whereami.description = 'Renders the current cabinet context the image project is pointed to. ie: Tenant, Enterprise, Environment, Cabinet.';
|
|
115
|
-
Whereami.flags = {
|
|
116
|
-
help: core_1.Flags.help({ char: 'h' }),
|
|
117
|
-
// flag with a value (-n, --name=VALUE)
|
|
118
|
-
name: core_1.Flags.string({ char: 'n', description: 'name to print' }),
|
|
119
|
-
// flag with no value (-f, --force)
|
|
120
|
-
force: core_1.Flags.boolean({ char: 'f' }),
|
|
121
|
-
};
|
|
122
|
-
Whereami.args = {};
|
|
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 command_base_enterprise_1 = require("../command-base-enterprise");
|
|
6
|
+
const codiac_constants_1 = require("../codiac-constants");
|
|
7
|
+
const prettify_1 = require("../prettify");
|
|
8
|
+
class Whereami 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, _b, _c;
|
|
13
|
+
try {
|
|
14
|
+
this.bootstrap();
|
|
15
|
+
const { args, flags } = yield this.parse(Whereami);
|
|
16
|
+
let bindings = {
|
|
17
|
+
tenant: (_b = (_a = this._projCfg) === null || _a === void 0 ? void 0 : _a.tenantCode) !== null && _b !== void 0 ? _b : this._userCntx.currentTenantCode
|
|
18
|
+
// , currentBranch: await this._ops.gitCurrentBranchNameFor(this._projectRoot)
|
|
19
|
+
};
|
|
20
|
+
if ((_c = this._projUserCfg) === null || _c === void 0 ? void 0 : _c.enterprise) {
|
|
21
|
+
bindings.enterprise = this._projUserCfg.enterprise.enterpriseCode;
|
|
22
|
+
if (this._projUserCfg.enterprise.cabinet) {
|
|
23
|
+
let environment = yield this.getEnvironmentFor(this._projUserCfg.enterprise.cabinet.cabinet);
|
|
24
|
+
bindings.environment = environment || "[unassigned]";
|
|
25
|
+
bindings.cabinet = this._projUserCfg.enterprise.cabinet.cabinet;
|
|
26
|
+
// bindings.cabinetBranch = this._projUserCfg.enterprise.cabinet.branch; // Support was never built for cabinet branch bindings, and now it's in the way (#wannabeagile).
|
|
27
|
+
}
|
|
28
|
+
if (this._projUserCfg.enterprise.assetBindings && this._projUserCfg.enterprise.assetBindings.length > 0) {
|
|
29
|
+
bindings.assets = [];
|
|
30
|
+
for (let assetBinding of this._projUserCfg.enterprise.assetBindings) {
|
|
31
|
+
bindings.assets.push({
|
|
32
|
+
asset: assetBinding.incarnation.assetName,
|
|
33
|
+
image: assetBinding.image.name
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
this._ui.userMessage((0, prettify_1.prettify)(bindings));
|
|
39
|
+
/* Cheap-ass requirement doc below:
|
|
40
|
+
|
|
41
|
+
Jun 4, 2020
|
|
42
|
+
Ben 11:17 AM
|
|
43
|
+
i need to know which enviroment im in
|
|
44
|
+
or at least, which environment you built against
|
|
45
|
+
|
|
46
|
+
Mark Freydl 11:18 AM
|
|
47
|
+
there’s an enterprise context that gets stored in the project-user config file (edited)
|
|
48
|
+
that states the current enterprise, cabinet and asset bindings that the user is pointing the project to (all that is based on gthe branch and cabinet-to-bramch binding, so it’s not source code 0- it’s local state)
|
|
49
|
+
|
|
50
|
+
Ben 11:20 AM
|
|
51
|
+
yeah, that works
|
|
52
|
+
forgot we have in the domain
|
|
53
|
+
that'd be a fun whoami
|
|
54
|
+
|
|
55
|
+
Mark Freydl 11:21 AM
|
|
56
|
+
Every time I work with Environment, I keep thinking that it doesnt have any real purpose other than being a tag
|
|
57
|
+
good idea
|
|
58
|
+
maybe a “whereami”
|
|
59
|
+
|
|
60
|
+
Ben 11:21 AM
|
|
61
|
+
fuck yes dude
|
|
62
|
+
|
|
63
|
+
Mark Freydl 11:21 AM
|
|
64
|
+
returns your enteprise context
|
|
65
|
+
and branch maybe
|
|
66
|
+
|
|
67
|
+
Ben 11:22 AM
|
|
68
|
+
always right, easy to access, i like it
|
|
69
|
+
|
|
70
|
+
Mark Freydl 11:27 AM
|
|
71
|
+
You should write that one.
|
|
72
|
+
it shd be easy - just need to use the cfgRepo to load the projectUser config and prob localOps to get the current branch info
|
|
73
|
+
|
|
74
|
+
Ben 11:30 AM
|
|
75
|
+
i'd be happy to.
|
|
76
|
+
|
|
77
|
+
*/
|
|
78
|
+
resolve();
|
|
79
|
+
}
|
|
80
|
+
catch (err) {
|
|
81
|
+
reject(err);
|
|
82
|
+
}
|
|
83
|
+
}));
|
|
84
|
+
});
|
|
85
|
+
}
|
|
86
|
+
/** Returns undefined if the cabinet has no environment
|
|
87
|
+
* (undefined should never happen but if such a data issue existed, it would be VERY helpful to know about it here).
|
|
88
|
+
* On error, this method logs the error and returns ERROR_INDICATOR as output. */
|
|
89
|
+
getEnvironmentFor(cabinet) {
|
|
90
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
91
|
+
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
92
|
+
let environment;
|
|
93
|
+
try {
|
|
94
|
+
let result = yield this._codiacApi.Cabinet.tryReadMany({ name: { $eq: cabinet } });
|
|
95
|
+
if (result.error)
|
|
96
|
+
throw result.error;
|
|
97
|
+
else if (result.output && result.output.length > 0) {
|
|
98
|
+
environment = result.output[0].environment;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
catch (err) {
|
|
102
|
+
this.logger.debug(`Error retrieving environment for cabinet [${cabinet}, tenant: ${this._userCntx.currentTenantCode}]: ${err.name || ""} ${err.message || ""}`, err);
|
|
103
|
+
environment = codiac_constants_1.ERROR_INDICATOR;
|
|
104
|
+
}
|
|
105
|
+
finally {
|
|
106
|
+
// HACK: idkwtf we have to bam this from one TS version to another
|
|
107
|
+
resolve(environment);
|
|
108
|
+
}
|
|
109
|
+
}));
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
exports.default = Whereami;
|
|
114
|
+
Whereami.description = 'Renders the current cabinet context the image project is pointed to. ie: Tenant, Enterprise, Environment, Cabinet.';
|
|
115
|
+
Whereami.flags = {
|
|
116
|
+
help: core_1.Flags.help({ char: 'h' }),
|
|
117
|
+
// flag with a value (-n, --name=VALUE)
|
|
118
|
+
name: core_1.Flags.string({ char: 'n', description: 'name to print' }),
|
|
119
|
+
// flag with no value (-f, --force)
|
|
120
|
+
force: core_1.Flags.boolean({ char: 'f' }),
|
|
121
|
+
};
|
|
122
|
+
Whereami.args = {};
|
|
123
123
|
//# sourceMappingURL=whereami.js.map
|
package/lib/commands/whoami.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { CommandBaseEnterprise } from '../command-base-enterprise';
|
|
2
|
-
export default class Whoami extends CommandBaseEnterprise {
|
|
3
|
-
static description: string;
|
|
4
|
-
static aliases: string[];
|
|
5
|
-
static flags: {};
|
|
6
|
-
static args: {};
|
|
7
|
-
run(): Promise<void>;
|
|
8
|
-
}
|
|
1
|
+
import { CommandBaseEnterprise } from '../command-base-enterprise';
|
|
2
|
+
export default class Whoami extends CommandBaseEnterprise {
|
|
3
|
+
static description: string;
|
|
4
|
+
static aliases: string[];
|
|
5
|
+
static flags: {};
|
|
6
|
+
static args: {};
|
|
7
|
+
run(): Promise<void>;
|
|
8
|
+
}
|