@codiac.io/codiac-cli 1.2.127 → 1.2.129
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/lib/apis/codiac-relay/gen/client.d.ts +1 -1
- package/lib/apis/codiac-relay/gen/client.js +13 -13
- package/lib/apis/codiac-relay/gen/client.js.map +1 -1
- package/lib/cli-common/ImagesList.d.ts +0 -0
- package/lib/cli-common/ImagesList.js +67 -0
- package/lib/cli-common/ImagesList.js.map +1 -0
- package/lib/cli-common/argument-manager.d.ts +28 -0
- package/lib/cli-common/argument-manager.js +195 -0
- package/lib/cli-common/argument-manager.js.map +1 -0
- package/lib/cli-common/built-in-cli-user-input.d.ts +18 -0
- package/lib/cli-common/built-in-cli-user-input.js +310 -0
- package/lib/cli-common/built-in-cli-user-input.js.map +1 -0
- package/lib/cli-common/cli-interfaces.d.ts +0 -0
- package/lib/cli-common/cli-interfaces.js +7 -0
- package/lib/cli-common/cli-interfaces.js.map +1 -0
- package/lib/cli-common/command-base.d.ts +74 -0
- package/lib/cli-common/command-base.js +173 -0
- package/lib/cli-common/command-base.js.map +1 -0
- package/lib/cli-common/entities/index.d.ts +1 -0
- package/lib/cli-common/entities/index.js +5 -0
- package/lib/cli-common/entities/index.js.map +1 -0
- package/lib/cli-common/entities/prompt-choice.d.ts +7 -0
- package/lib/cli-common/entities/prompt-choice.js +3 -0
- package/lib/cli-common/entities/prompt-choice.js.map +1 -0
- package/lib/cli-common/file-selector.d.ts +48 -0
- package/lib/cli-common/file-selector.js +187 -0
- package/lib/cli-common/file-selector.js.map +1 -0
- package/lib/cli-common/i-user-input-provider.d.ts +0 -0
- package/lib/cli-common/i-user-input-provider.js +19 -0
- package/lib/cli-common/i-user-input-provider.js.map +1 -0
- package/lib/cli-common/index.d.ts +4 -0
- package/lib/cli-common/index.js +11 -0
- package/lib/cli-common/index.js.map +1 -0
- package/lib/cli-common/mock-ui.d.ts +27 -0
- package/lib/cli-common/mock-ui.js +83 -0
- package/lib/cli-common/mock-ui.js.map +1 -0
- package/lib/cli-common/prompt-select-fuzzy.d.ts +19 -0
- package/lib/cli-common/prompt-select-fuzzy.js +119 -0
- package/lib/cli-common/prompt-select-fuzzy.js.map +1 -0
- package/lib/cli-common/tenant-contextualizer.d.ts +0 -0
- package/lib/cli-common/tenant-contextualizer.js +436 -0
- package/lib/cli-common/tenant-contextualizer.js.map +1 -0
- package/lib/cli-common/test/tenant-contextualizer.spec.d.ts +0 -0
- package/lib/cli-common/test/tenant-contextualizer.spec.js +143 -0
- package/lib/cli-common/test/tenant-contextualizer.spec.js.map +1 -0
- package/lib/command-base-enterprise.d.ts +3 -18
- package/lib/command-base-enterprise.js +8 -69
- package/lib/command-base-enterprise.js.map +1 -1
- package/lib/command-base-tenantless.d.ts +3 -3
- package/lib/command-base-tenantless.js +16 -16
- package/lib/command-base-tenantless.js.map +1 -1
- package/lib/commands/asset/create.js +2 -2
- package/lib/commands/asset/create.js.map +1 -1
- package/lib/commands/build.js +2 -2
- package/lib/commands/build.js.map +1 -1
- package/lib/commands/cabinet/create.js +2 -2
- package/lib/commands/cabinet/create.js.map +1 -1
- package/lib/commands/cabinet/obliterate.js +1 -1
- package/lib/commands/cabinet/obliterate.js.map +1 -1
- package/lib/commands/commit.js +1 -1
- package/lib/commands/commit.js.map +1 -1
- package/lib/commands/enterprise/create.js +2 -2
- package/lib/commands/enterprise/create.js.map +1 -1
- package/lib/commands/environment/create.js +2 -2
- package/lib/commands/environment/create.js.map +1 -1
- package/lib/commands/filestore/capture.d.ts +0 -2
- package/lib/commands/filestore/capture.js +34 -31
- package/lib/commands/filestore/capture.js.map +1 -1
- package/lib/commands/identity/delete.js +2 -2
- package/lib/commands/identity/delete.js.map +1 -1
- package/lib/commands/identity.js +3 -3
- package/lib/commands/identity.js.map +1 -1
- package/lib/commands/init.js +4 -4
- package/lib/commands/init.js.map +1 -1
- package/lib/commands/login.js +1 -1
- package/lib/commands/login.js.map +1 -1
- package/lib/commands/publish.d.ts +3 -0
- package/lib/commands/publish.js +7 -3
- package/lib/commands/publish.js.map +1 -1
- package/lib/commands/pull.js +1 -1
- package/lib/commands/pull.js.map +1 -1
- package/lib/commands/push.js +1 -1
- package/lib/commands/push.js.map +1 -1
- package/lib/commands/run.js +6 -6
- package/lib/commands/run.js.map +1 -1
- package/lib/commands/sync.js +1 -1
- package/lib/commands/sync.js.map +1 -1
- package/lib/commands/tenant/create.js +4 -4
- package/lib/commands/tenant/create.js.map +1 -1
- package/lib/commands/tenant/switch.js +4 -4
- package/lib/commands/tenant/switch.js.map +1 -1
- package/lib/ops/INTERFACES_CLI.d.ts +3 -0
- package/lib/ops/INTERFACES_CLI.js +8 -0
- package/lib/ops/INTERFACES_CLI.js.map +1 -0
- package/lib/ops/LocalOps.d.ts +444 -0
- package/lib/ops/LocalOps.js +3184 -0
- package/lib/ops/LocalOps.js.map +1 -0
- package/lib/ops/azure-container-registry-client/azure-container-registry-client.d.ts +0 -0
- package/lib/ops/azure-container-registry-client/azure-container-registry-client.js +148 -0
- package/lib/ops/azure-container-registry-client/azure-container-registry-client.js.map +1 -0
- package/lib/ops/cli-path-walker.d.ts +0 -0
- package/lib/ops/cli-path-walker.js +55 -0
- package/lib/ops/cli-path-walker.js.map +1 -0
- package/lib/ops/codiac-entities/dependency.d.ts +5 -0
- package/lib/ops/codiac-entities/dependency.js +11 -0
- package/lib/ops/codiac-entities/dependency.js.map +1 -0
- package/lib/ops/codiac-entities/index.d.ts +1 -0
- package/lib/ops/codiac-entities/index.js +5 -0
- package/lib/ops/codiac-entities/index.js.map +1 -0
- package/lib/ops/composite-image-registry-client.d.ts +0 -0
- package/lib/ops/composite-image-registry-client.js +74 -0
- package/lib/ops/composite-image-registry-client.js.map +1 -0
- package/lib/ops/data/cli-context-repo.d.ts +61 -0
- package/lib/ops/data/cli-context-repo.js +270 -0
- package/lib/ops/data/cli-context-repo.js.map +1 -0
- package/lib/ops/data/index.d.ts +2 -0
- package/lib/ops/data/index.js +6 -0
- package/lib/ops/data/index.js.map +1 -0
- package/lib/ops/data/npm-config-repo.d.ts +13 -0
- package/lib/ops/data/npm-config-repo.js +65 -0
- package/lib/ops/data/npm-config-repo.js.map +1 -0
- package/lib/ops/docker-config.d.ts +0 -0
- package/lib/ops/docker-config.js +131 -0
- package/lib/ops/docker-config.js.map +1 -0
- package/lib/ops/docker-constants.d.ts +0 -0
- package/lib/ops/docker-constants.js +22 -0
- package/lib/ops/docker-constants.js.map +1 -0
- package/lib/ops/docker-credentials-store.d.ts +0 -0
- package/lib/ops/docker-credentials-store.js +238 -0
- package/lib/ops/docker-credentials-store.js.map +1 -0
- package/lib/ops/docker-registry-api-client/docker-registry-api-client.d.ts +0 -0
- package/lib/ops/docker-registry-api-client/docker-registry-api-client.js +289 -0
- package/lib/ops/docker-registry-api-client/docker-registry-api-client.js.map +1 -0
- package/lib/ops/docker-registry-api-client/entities/blob-sum.d.ts +7 -0
- package/lib/ops/docker-registry-api-client/entities/blob-sum.js +13 -0
- package/lib/ops/docker-registry-api-client/entities/blob-sum.js.map +1 -0
- package/lib/ops/docker-registry-api-client/entities/docker-access-actions-enum.d.ts +5 -0
- package/lib/ops/docker-registry-api-client/entities/docker-access-actions-enum.js +10 -0
- package/lib/ops/docker-registry-api-client/entities/docker-access-actions-enum.js.map +1 -0
- package/lib/ops/docker-registry-api-client/entities/docker-auth-token-criteria.d.ts +30 -0
- package/lib/ops/docker-registry-api-client/entities/docker-auth-token-criteria.js +36 -0
- package/lib/ops/docker-registry-api-client/entities/docker-auth-token-criteria.js.map +1 -0
- package/lib/ops/docker-registry-api-client/entities/i-docker-error-response.d.ts +55 -0
- package/lib/ops/docker-registry-api-client/entities/i-docker-error-response.js +52 -0
- package/lib/ops/docker-registry-api-client/entities/i-docker-error-response.js.map +1 -0
- package/lib/ops/docker-registry-api-client/entities/i-docker-list-response.d.ts +7 -0
- package/lib/ops/docker-registry-api-client/entities/i-docker-list-response.js +3 -0
- package/lib/ops/docker-registry-api-client/entities/i-docker-list-response.js.map +1 -0
- package/lib/ops/docker-registry-api-client/entities/image-repository.d.ts +31 -0
- package/lib/ops/docker-registry-api-client/entities/image-repository.js +30 -0
- package/lib/ops/docker-registry-api-client/entities/image-repository.js.map +1 -0
- package/lib/ops/docker-registry-api-client/entities/image-tag-criteria.d.ts +8 -0
- package/lib/ops/docker-registry-api-client/entities/image-tag-criteria.js +14 -0
- package/lib/ops/docker-registry-api-client/entities/image-tag-criteria.js.map +1 -0
- package/lib/ops/docker-registry-api-client/entities/image-tag-list.d.ts +7 -0
- package/lib/ops/docker-registry-api-client/entities/image-tag-list.js +13 -0
- package/lib/ops/docker-registry-api-client/entities/image-tag-list.js.map +1 -0
- package/lib/ops/docker-registry-api-client/entities/manifest-criteria.d.ts +9 -0
- package/lib/ops/docker-registry-api-client/entities/manifest-criteria.js +15 -0
- package/lib/ops/docker-registry-api-client/entities/manifest-criteria.js.map +1 -0
- package/lib/ops/docker-registry-api-client/entities/manifest.d.ts +15 -0
- package/lib/ops/docker-registry-api-client/entities/manifest.js +21 -0
- package/lib/ops/docker-registry-api-client/entities/manifest.js.map +1 -0
- package/lib/ops/docker-registry-api-client/entities/repository-criteria.d.ts +16 -0
- package/lib/ops/docker-registry-api-client/entities/repository-criteria.js +24 -0
- package/lib/ops/docker-registry-api-client/entities/repository-criteria.js.map +1 -0
- package/lib/ops/docker-registry-api-client/entities/token-response.d.ts +15 -0
- package/lib/ops/docker-registry-api-client/entities/token-response.js +15 -0
- package/lib/ops/docker-registry-api-client/entities/token-response.js.map +1 -0
- package/lib/ops/docker-registry-api-client/entities/token.d.ts +17 -0
- package/lib/ops/docker-registry-api-client/entities/token.js +22 -0
- package/lib/ops/docker-registry-api-client/entities/token.js.map +1 -0
- package/lib/ops/docker-registry-api-client/entities/version-check-criteria.d.ts +4 -0
- package/lib/ops/docker-registry-api-client/entities/version-check-criteria.js +10 -0
- package/lib/ops/docker-registry-api-client/entities/version-check-criteria.js.map +1 -0
- package/lib/ops/dx-constants.d.ts +26 -0
- package/lib/ops/dx-constants.js +43 -0
- package/lib/ops/dx-constants.js.map +1 -0
- package/lib/ops/entities/ImageBuildContext.d.ts +12 -0
- package/lib/ops/entities/ImageBuildContext.js +19 -0
- package/lib/ops/entities/ImageBuildContext.js.map +1 -0
- package/lib/ops/entities/PipelineContext.d.ts +21 -0
- package/lib/ops/entities/PipelineContext.js +23 -0
- package/lib/ops/entities/PipelineContext.js.map +1 -0
- package/lib/ops/entities/TenantContext.d.ts +10 -0
- package/lib/ops/entities/TenantContext.js +16 -0
- package/lib/ops/entities/TenantContext.js.map +1 -0
- package/lib/ops/entities/ThaulConfig.d.ts +0 -0
- package/lib/ops/entities/ThaulConfig.js +30 -0
- package/lib/ops/entities/ThaulConfig.js.map +1 -0
- package/lib/ops/entities/azure-service-principal.d.ts +23 -0
- package/lib/ops/entities/azure-service-principal.js +24 -0
- package/lib/ops/entities/azure-service-principal.js.map +1 -0
- package/lib/ops/entities/better-logger.d.ts +0 -0
- package/lib/ops/entities/better-logger.js +2 -0
- package/lib/ops/entities/better-logger.js.map +1 -0
- package/lib/ops/entities/branch.d.ts +13 -0
- package/lib/ops/entities/branch.js +16 -0
- package/lib/ops/entities/branch.js.map +1 -0
- package/lib/ops/entities/cli-config.d.ts +48 -0
- package/lib/ops/entities/cli-config.js +61 -0
- package/lib/ops/entities/cli-config.js.map +1 -0
- package/lib/ops/entities/docker-image.d.ts +60 -0
- package/lib/ops/entities/docker-image.js +3 -0
- package/lib/ops/entities/docker-image.js.map +1 -0
- package/lib/ops/entities/helm-spec.d.ts +15 -0
- package/lib/ops/entities/helm-spec.js +23 -0
- package/lib/ops/entities/helm-spec.js.map +1 -0
- package/lib/ops/entities/index.d.ts +3 -0
- package/lib/ops/entities/index.js +11 -0
- package/lib/ops/entities/index.js.map +1 -0
- package/lib/ops/entities/scaffolding.d.ts +19 -0
- package/lib/ops/entities/scaffolding.js +21 -0
- package/lib/ops/entities/scaffolding.js.map +1 -0
- package/lib/ops/extensions/azart-identity-adapter.d.ts +19 -0
- package/lib/ops/extensions/azart-identity-adapter.js +97 -0
- package/lib/ops/extensions/azart-identity-adapter.js.map +1 -0
- package/lib/ops/extensions/npm-identity-adapter-base.d.ts +13 -0
- package/lib/ops/extensions/npm-identity-adapter-base.js +3 -0
- package/lib/ops/extensions/npm-identity-adapter-base.js.map +1 -0
- package/lib/ops/extensions/npmjs-identity-adapter.d.ts +13 -0
- package/lib/ops/extensions/npmjs-identity-adapter.js +64 -0
- package/lib/ops/extensions/npmjs-identity-adapter.js.map +1 -0
- package/lib/ops/git-ops.d.ts +8 -0
- package/lib/ops/git-ops.js +14 -0
- package/lib/ops/git-ops.js.map +1 -0
- package/lib/ops/i-client-for-image-registry.d.ts +0 -0
- package/lib/ops/i-client-for-image-registry.js +17 -0
- package/lib/ops/i-client-for-image-registry.js.map +1 -0
- package/lib/ops/i-identity-handler.d.ts +33 -0
- package/lib/ops/i-identity-handler.js +165 -0
- package/lib/ops/i-identity-handler.js.map +1 -0
- package/lib/ops/i-output-styler.d.ts +0 -0
- package/lib/ops/i-output-styler.js +17 -0
- package/lib/ops/i-output-styler.js.map +1 -0
- package/lib/ops/index.d.ts +12 -0
- package/lib/ops/index.js +15 -0
- package/lib/ops/index.js.map +1 -0
- package/lib/ops/json-utils.d.ts +0 -0
- package/lib/ops/json-utils.js +59 -0
- package/lib/ops/json-utils.js.map +1 -0
- package/lib/ops/no-style-output-styler.d.ts +0 -0
- package/lib/ops/no-style-output-styler.js +30 -0
- package/lib/ops/no-style-output-styler.js.map +1 -0
- package/lib/ops/oauth2-client.ts/oauth2-client.d.ts +23 -0
- package/lib/ops/oauth2-client.ts/oauth2-client.js +64 -0
- package/lib/ops/oauth2-client.ts/oauth2-client.js.map +1 -0
- package/lib/ops/project-initializer.d.ts +36 -0
- package/lib/ops/project-initializer.js +219 -0
- package/lib/ops/project-initializer.js.map +1 -0
- package/lib/ops/scaffolding/base-scaffolding.d.ts +7 -0
- package/lib/ops/scaffolding/base-scaffolding.js +21 -0
- package/lib/ops/scaffolding/base-scaffolding.js.map +1 -0
- package/lib/ops/scaffolding/codiac-api-scaffolding.d.ts +7 -0
- package/lib/ops/scaffolding/codiac-api-scaffolding.js +64 -0
- package/lib/ops/scaffolding/codiac-api-scaffolding.js.map +1 -0
- package/lib/ops/scaffolding/typescript-scaffolding.d.ts +15 -0
- package/lib/ops/scaffolding/typescript-scaffolding.js +163 -0
- package/lib/ops/scaffolding/typescript-scaffolding.js.map +1 -0
- package/lib/ops/test/mock-ui.d.ts +26 -0
- package/lib/ops/test/mock-ui.js +88 -0
- package/lib/ops/test/mock-ui.js.map +1 -0
- package/lib/ops/test/test-extensions.d.ts +13 -0
- package/lib/ops/test/test-extensions.js +71 -0
- package/lib/ops/test/test-extensions.js.map +1 -0
- package/lib/ops/test/when-a-recursive-file-search-is-run.spec.d.ts +2 -0
- package/lib/ops/test/when-a-recursive-file-search-is-run.spec.js +55 -0
- package/lib/ops/test/when-a-recursive-file-search-is-run.spec.js.map +1 -0
- package/lib/ops/test/when-git-branchline-is-attempted.spec.d.ts +2 -0
- package/lib/ops/test/when-git-branchline-is-attempted.spec.js +38 -0
- package/lib/ops/test/when-git-branchline-is-attempted.spec.js.map +1 -0
- package/lib/ops/test/when-versions-are-parsed.spec.d.ts +2 -0
- package/lib/ops/test/when-versions-are-parsed.spec.js +60 -0
- package/lib/ops/test/when-versions-are-parsed.spec.js.map +1 -0
- package/lib/ops/throwing-user-input-provider.d.ts +0 -0
- package/lib/ops/throwing-user-input-provider.js +37 -0
- package/lib/ops/throwing-user-input-provider.js.map +1 -0
- package/lib/relay/relay-container.js +1 -1
- package/lib/uilogic/build-configurator.d.ts +1 -1
- package/lib/uilogic/build-configurator.js +2 -2
- package/lib/uilogic/build-configurator.js.map +1 -1
- package/lib/uilogic/cloud-provider-contextualizer.d.ts +2 -1
- package/lib/uilogic/cloud-provider-contextualizer.js +8 -4
- package/lib/uilogic/cloud-provider-contextualizer.js.map +1 -1
- package/lib/uilogic/cloud-resource-configurators/aws-resource-configurator.d.ts +1 -1
- package/lib/uilogic/cloud-resource-configurators/aws-resource-configurator.js +1 -1
- package/lib/uilogic/cloud-resource-configurators/aws-resource-configurator.js.map +1 -1
- package/lib/uilogic/cloud-resource-configurators/az-acr-cli-authenticator.d.ts +0 -16
- package/lib/uilogic/cloud-resource-configurators/az-acr-cli-authenticator.js +76 -83
- package/lib/uilogic/cloud-resource-configurators/az-acr-cli-authenticator.js.map +1 -1
- package/lib/uilogic/cloud-resource-configurators/azure-resource-configurator.d.ts +1 -1
- package/lib/uilogic/cloud-resource-configurators/azure-resource-configurator.js +4 -4
- package/lib/uilogic/cloud-resource-configurators/azure-resource-configurator.js.map +1 -1
- package/lib/uilogic/cloud-resource-configurators/docker-hub-resource-configurator.d.ts +1 -1
- package/lib/uilogic/cloud-resource-configurators/docker-hub-resource-configurator.js +1 -1
- package/lib/uilogic/cloud-resource-configurators/docker-hub-resource-configurator.js.map +1 -1
- package/lib/uilogic/enterprise-contextualizer.d.ts +1 -1
- package/lib/uilogic/enterprise-contextualizer.js +6 -1
- package/lib/uilogic/enterprise-contextualizer.js.map +1 -1
- package/lib/uilogic/i-login-configurator.d.ts +1 -1
- package/lib/uilogic/image-configurator.d.ts +0 -1
- package/lib/uilogic/image-configurator.js +27 -47
- package/lib/uilogic/image-configurator.js.map +1 -1
- package/lib/uilogic/image-contextualizer.js +2 -2
- package/lib/uilogic/image-contextualizer.js.map +1 -1
- package/lib/uilogic/tenant-contextualizer.d.ts +1 -1
- package/lib/uilogic/tenant-contextualizer.js +3 -3
- package/lib/uilogic/tenant-contextualizer.js.map +1 -1
- package/oclif.manifest.json +1 -1
- package/package.json +4 -4
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TypescriptScaffolding = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const fs = require("fs");
|
|
6
|
+
const path = require("path");
|
|
7
|
+
const __1 = require("..");
|
|
8
|
+
const IBetterLogger_1 = require("@codiac.io/codiac-common/IBetterLogger");
|
|
9
|
+
const codiac_common_1 = require("@codiac.io/codiac-common");
|
|
10
|
+
const inversify_1 = require("inversify");
|
|
11
|
+
const codiac_ops_common_1 = require("@codiac.io/codiac-ops-common");
|
|
12
|
+
/** Initializes a node-typescript project for use with Codiac.
|
|
13
|
+
*/
|
|
14
|
+
let TypescriptScaffolding = class TypescriptScaffolding extends __1.Scaffolding {
|
|
15
|
+
constructor(logger) {
|
|
16
|
+
super("typescript");
|
|
17
|
+
this.logger = logger;
|
|
18
|
+
this.npmDependencies = ["reflect-metadata"];
|
|
19
|
+
this.npmDevDependencies = [
|
|
20
|
+
"mocha",
|
|
21
|
+
"chai",
|
|
22
|
+
"nyc",
|
|
23
|
+
"@types/mocha",
|
|
24
|
+
"@types/chai",
|
|
25
|
+
"@types/node",
|
|
26
|
+
"ts-node",
|
|
27
|
+
"typescript@3.8.3",
|
|
28
|
+
'reflect-metadata'
|
|
29
|
+
];
|
|
30
|
+
this.scaffoldFolders = [".vscode", "src"];
|
|
31
|
+
this.scaffoldFiles = [
|
|
32
|
+
`.gitignore${__1.ProjectInitializer.SCAFFOLDING_SUFFIX}`,
|
|
33
|
+
`src/index.ts${__1.ProjectInitializer.SCAFFOLDING_SUFFIX}`,
|
|
34
|
+
".vscode/settings.json",
|
|
35
|
+
".vscode/tasks.json",
|
|
36
|
+
".vscode/launch.json"
|
|
37
|
+
];
|
|
38
|
+
this.sccIgnoreFile = `.gitignore${__1.ProjectInitializer.SCAFFOLDING_SUFFIX}`;
|
|
39
|
+
// this.afterInitHandler = async config => {
|
|
40
|
+
// // Declare the api image
|
|
41
|
+
// let target = new RegistryTarget("default", ProjectInitializer.DEFAULT_REGISTRY_URL)
|
|
42
|
+
// this._ops.declareImageExport(<ProjectConfig>config, config.name, target, "Dockerfile", undefined);
|
|
43
|
+
// };
|
|
44
|
+
this.afterInitHandler = (projectRoot, projConfig, localOps) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
45
|
+
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
46
|
+
try {
|
|
47
|
+
yield this.initTypescript(projectRoot, true);
|
|
48
|
+
yield this.initNpm(projectRoot, projConfig, this, localOps);
|
|
49
|
+
projConfig.buildDef = ["tsc -p ."];
|
|
50
|
+
resolve();
|
|
51
|
+
}
|
|
52
|
+
catch (err) {
|
|
53
|
+
reject(err);
|
|
54
|
+
}
|
|
55
|
+
}));
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* @param rootFolder
|
|
60
|
+
* @param overwrite Reinitializes seamlessly if the project has already been initialized. Otherwise will throw exception.
|
|
61
|
+
*/
|
|
62
|
+
initTypescript(rootFolder, overwrite = false) {
|
|
63
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
64
|
+
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
65
|
+
try {
|
|
66
|
+
// TODO: replace this with this._ops.deleteProjectFile(LocalOps.TSCONFIG_JSON_FILENAME);
|
|
67
|
+
let pathName = path.join(rootFolder, "tsconfig.json");
|
|
68
|
+
this.logger.debug("tsConfigPath: " + pathName);
|
|
69
|
+
if (fs.existsSync(pathName) && overwrite) {
|
|
70
|
+
this.logger.detail("removing existing tsconfig");
|
|
71
|
+
fs.unlinkSync(pathName);
|
|
72
|
+
this.logger.detail(`Deleted existing Typescript config: ${pathName}`);
|
|
73
|
+
}
|
|
74
|
+
// "target": "es6", /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', or 'ESNEXT'. */
|
|
75
|
+
// "module": "commonjs", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', or 'ESNext'. */
|
|
76
|
+
// "lib": ["es6","dom"], /* Specify library files to be included in the compilation: */
|
|
77
|
+
// "declaration": true, /* Generates corresponding '.d.ts' file. */
|
|
78
|
+
// "sourceMap": true, /* Generates corresponding '.map' file. */
|
|
79
|
+
// "outDir": "bin", /* Redirect output structure to the directory. */
|
|
80
|
+
// "rootDir": "src", /* Specify the root directory of input files. Use to control the output directory structure with --outDir. */
|
|
81
|
+
// "strict": true, /* Enable all strict type-checking options. */
|
|
82
|
+
// "types": ["node", "reflect-metadata"], /* Type declaration files to be included in compilation. */
|
|
83
|
+
// "experimentalDecorators": true /* Enables experimental support for ES7 decorators. */
|
|
84
|
+
// "emitDecoratorMetadata": true /* Enables experimental support for emitting type metadata for decorators. */
|
|
85
|
+
let cliExec = new codiac_ops_common_1.CliExec(this.logger);
|
|
86
|
+
let cmd = "tsc --init";
|
|
87
|
+
cmd += " --target es6";
|
|
88
|
+
cmd += " --module commonjs";
|
|
89
|
+
cmd += " --lib es6,dom";
|
|
90
|
+
cmd += " --declaration";
|
|
91
|
+
cmd += " --sourceMap";
|
|
92
|
+
cmd += " --outDir ./dist";
|
|
93
|
+
cmd += " --rootDir ./src"; // ??
|
|
94
|
+
// cmd += " --strict" // --alwaysStrict ?
|
|
95
|
+
cmd += " --types node,reflect-metadata";
|
|
96
|
+
// cmd += " --include src"
|
|
97
|
+
// cmd += " --exclude node_modules submodules dist" // this param doesnt exist - whats its equivalent?
|
|
98
|
+
cmd += " --resolveJsonModule";
|
|
99
|
+
cmd += " --esModuleInterop";
|
|
100
|
+
cmd += " --experimentalDecorators"; // ??
|
|
101
|
+
cmd += " --emitDecoratorMetadata"; // ??
|
|
102
|
+
cmd += " --skipLibCheck"; // Keeps the plugin declarations from registering as errors & MS recommended
|
|
103
|
+
let output = yield cliExec.execAsync(cmd, { cwd: rootFolder });
|
|
104
|
+
this.logger.detail(output.stderr + output.stdout);
|
|
105
|
+
resolve();
|
|
106
|
+
}
|
|
107
|
+
catch (err) {
|
|
108
|
+
reject(err);
|
|
109
|
+
}
|
|
110
|
+
}));
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
initNpm(rootFolder, projConfig, scaffolding, localOps) {
|
|
114
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
115
|
+
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
116
|
+
try {
|
|
117
|
+
this.logger.detail("Initializing NPM...");
|
|
118
|
+
localOps.deleteNpmPackageJson();
|
|
119
|
+
localOps.clearNpmNodeModulesFolder();
|
|
120
|
+
let cliExec = new codiac_ops_common_1.CliExec(this.logger);
|
|
121
|
+
let cmd = `npm init -y`; // How annoying that npm doesnt expose a way to set the name upon init.
|
|
122
|
+
let { stdout, stderr } = yield cliExec.execAsync(cmd, { cwd: rootFolder });
|
|
123
|
+
this.logger.detail(`${stderr} ${stdout}`);
|
|
124
|
+
let pkgJson = localOps.readNpmPackageJson();
|
|
125
|
+
pkgJson.name = projConfig.name;
|
|
126
|
+
localOps.writeNpmPackageJson(pkgJson);
|
|
127
|
+
this.logger.detail("NPM dependencies...");
|
|
128
|
+
let cmdDep = `npm install ${this.npmDependencies.join(' ')}`;
|
|
129
|
+
let depOutput = yield cliExec.spawnAndLog(cmdDep, rootFolder, undefined, IBetterLogger_1.LogLevel.detail);
|
|
130
|
+
// for (let index in this.npmDependencies) {
|
|
131
|
+
// let dep = this.npmDependencies[index];
|
|
132
|
+
// this.logger.detail(`Installing ${dep}...`);
|
|
133
|
+
// let depOutput = await this.cliExec.spawnAndLog(`npm install ${dep}`, rootFolder, undefined, LogLevel.detail);
|
|
134
|
+
// // let depOutput = await this.cliExec.execAsync(`npm install ${dep}`, { cwd: rootFolder });
|
|
135
|
+
// // this.logger.detail(depOutput.stderr + depOutput.stdout);
|
|
136
|
+
// }
|
|
137
|
+
this.logger.detail("NPM Dev dependencies...");
|
|
138
|
+
let cmdDev = `npm install ${this.npmDevDependencies.join(' ')}`;
|
|
139
|
+
let devOutput = yield cliExec.spawnAndLog(cmdDev, rootFolder, undefined, IBetterLogger_1.LogLevel.detail);
|
|
140
|
+
// for (let index in this.npmDevDependencies) {
|
|
141
|
+
// let dep = this.npmDevDependencies[index];
|
|
142
|
+
// this.logger.detail(`Installing ${dep}...`);
|
|
143
|
+
// let devDepOutput = await this.cliExec.spawnAndLog(`npm install --save-dev ${dep} `, rootFolder, undefined, LogLevel.detail);
|
|
144
|
+
// // let devDepOutput = await this.cliExec.execAsync(`npm install --save-dev ${dep} `, { cwd: rootFolder });
|
|
145
|
+
// // this.logger.detail(devDepOutput.stderr + devDepOutput.stdout);
|
|
146
|
+
// }
|
|
147
|
+
resolve();
|
|
148
|
+
}
|
|
149
|
+
catch (err) {
|
|
150
|
+
this.logger.error(`Error occurred initializing NPM: ${err}`);
|
|
151
|
+
reject(err);
|
|
152
|
+
}
|
|
153
|
+
}));
|
|
154
|
+
});
|
|
155
|
+
}
|
|
156
|
+
};
|
|
157
|
+
TypescriptScaffolding = tslib_1.__decorate([
|
|
158
|
+
(0, inversify_1.injectable)(),
|
|
159
|
+
tslib_1.__param(0, (0, inversify_1.inject)(codiac_common_1.INTERFACES.IBetterLogger)),
|
|
160
|
+
tslib_1.__metadata("design:paramtypes", [Object])
|
|
161
|
+
], TypescriptScaffolding);
|
|
162
|
+
exports.TypescriptScaffolding = TypescriptScaffolding;
|
|
163
|
+
//# sourceMappingURL=typescript-scaffolding.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typescript-scaffolding.js","sourceRoot":"","sources":["../../../src/ops/scaffolding/typescript-scaffolding.ts"],"names":[],"mappings":";;;;AAAA,yBAAyB;AACzB,6BAA6B;AAC7B,0BAA+D;AAC/D,0EAAiF;AACjF,4DAAsD;AACtD,yCAA+C;AAC/C,oEAAuD;AAGvD;GACG;AAEI,IAAM,qBAAqB,GAA3B,MAAM,qBAAsB,SAAQ,eAAW;IACpD,YAAwD,MAAqB;QAC3E,KAAK,CAAC,YAAY,CAAC,CAAC;QADkC,WAAM,GAAN,MAAM,CAAe;QAG3E,IAAI,CAAC,eAAe,GAAG,CAAC,kBAAkB,CAAC,CAAA;QAC3C,IAAI,CAAC,kBAAkB,GAAG;YACxB,OAAO;YACP,MAAM;YACN,KAAK;YACL,cAAc;YACd,aAAa;YACb,aAAa;YACb,SAAS;YACT,kBAAkB;YAClB,kBAAkB;SACnB,CAAC;QACF,IAAI,CAAC,eAAe,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAA;QACzC,IAAI,CAAC,aAAa,GAAG;YACnB,aAAa,sBAAkB,CAAC,kBAAkB,EAAE;YACpD,eAAe,sBAAkB,CAAC,kBAAkB,EAAE;YACtD,uBAAuB;YACvB,oBAAoB;YACpB,qBAAqB;SACtB,CAAC;QACF,IAAI,CAAC,aAAa,GAAG,aAAa,sBAAkB,CAAC,kBAAkB,EAAE,CAAC;QAC1E,4CAA4C;QAC5C,6BAA6B;QAC7B,wFAAwF;QACxF,uGAAuG;QACvG,KAAK;QAEL,IAAI,CAAC,gBAAgB,GAAG,CAAO,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE;YAClE,OAAO,IAAI,OAAO,CAAO,CAAO,OAAO,EAAE,MAAM,EAAE,EAAE;gBACjD,IAAI;oBAEF,MAAM,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;oBAC7C,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;oBAE5D,UAAU,CAAC,QAAQ,GAAG,CAAC,UAAU,CAAC,CAAC;oBAEnC,OAAO,EAAE,CAAC;iBACX;gBAAC,OAAO,GAAG,EAAE;oBACZ,MAAM,CAAC,GAAG,CAAC,CAAC;iBACb;YACH,CAAC,CAAA,CAAC,CAAC;QACL,CAAC,CAAA,CAAC;IACJ,CAAC;IAGD;;;OAGG;IACG,cAAc,CAAC,UAAkB,EAAE,YAAqB,KAAK;;YAEjE,OAAO,IAAI,OAAO,CAAO,CAAO,OAAO,EAAE,MAAM,EAAE,EAAE;gBACjD,IAAI;oBACF,wFAAwF;oBACxF,IAAI,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;oBACtD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,GAAG,QAAQ,CAAC,CAAA;oBAC9C,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,SAAS,EAAE;wBACxC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,4BAA4B,CAAC,CAAC;wBACjD,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;wBACxB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,uCAAuC,QAAQ,EAAE,CAAC,CAAC;qBACvE;oBAED,wJAAwJ;oBACxJ,qJAAqJ;oBACrJ,4GAA4G;oBAC5G,wFAAwF;oBACxF,uFAAuF;oBACvF,8FAA8F;oBAC9F,0JAA0J;oBAC1J,4FAA4F;oBAC5F,+HAA+H;oBAC/H,+FAA+F;oBAC/F,sHAAsH;oBAEtH,IAAI,OAAO,GAAG,IAAI,2BAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBAEvC,IAAI,GAAG,GAAG,YAAY,CAAC;oBACvB,GAAG,IAAI,eAAe,CAAC;oBACvB,GAAG,IAAI,oBAAoB,CAAA;oBAC3B,GAAG,IAAI,gBAAgB,CAAA;oBACvB,GAAG,IAAI,gBAAgB,CAAA;oBACvB,GAAG,IAAI,cAAc,CAAA;oBACrB,GAAG,IAAI,kBAAkB,CAAA;oBACzB,GAAG,IAAI,kBAAkB,CAAA,CAAG,MAAM;oBAClC,0CAA0C;oBAC1C,GAAG,IAAI,gCAAgC,CAAA;oBACvC,0BAA0B;oBAC1B,uGAAuG;oBACvG,GAAG,IAAI,sBAAsB,CAAA;oBAC7B,GAAG,IAAI,oBAAoB,CAAA;oBAC3B,GAAG,IAAI,2BAA2B,CAAA,CAAE,KAAK;oBACzC,GAAG,IAAI,0BAA0B,CAAA,CAAG,KAAK;oBACzC,GAAG,IAAI,iBAAiB,CAAA,CAAG,8EAA8E;oBACzG,IAAI,MAAM,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,CAAC;oBAC/D,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;oBAClD,OAAO,EAAE,CAAC;iBACX;gBAAC,OAAO,GAAG,EAAE;oBACZ,MAAM,CAAC,GAAG,CAAC,CAAC;iBACb;YAEH,CAAC,CAAA,CAAC,CAAC;QACL,CAAC;KAAA;IAEK,OAAO,CAAC,UAAkB,EAAE,UAAyB,EAAE,WAAwB,EAAE,QAAkB;;YAEvG,OAAO,IAAI,OAAO,CAAO,CAAO,OAAO,EAAE,MAAM,EAAE,EAAE;gBACjD,IAAI;oBACF,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;oBAC1C,QAAQ,CAAC,oBAAoB,EAAE,CAAC;oBAChC,QAAQ,CAAC,yBAAyB,EAAE,CAAC;oBAErC,IAAI,OAAO,GAAG,IAAI,2BAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBAEvC,IAAI,GAAG,GAAG,aAAa,CAAC,CAAE,uEAAuE;oBACjG,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,CAAC;oBAC3E,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,IAAI,MAAM,EAAE,CAAC,CAAC;oBAE1C,IAAI,OAAO,GAAG,QAAQ,CAAC,kBAAkB,EAAE,CAAC;oBAC5C,OAAO,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;oBAC/B,QAAQ,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;oBAEtC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;oBAC1C,IAAI,MAAM,GAAG,eAAe,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC7D,IAAI,SAAS,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,wBAAQ,CAAC,MAAM,CAAC,CAAC;oBAC1F,4CAA4C;oBAC5C,2CAA2C;oBAC3C,gDAAgD;oBAChD,kHAAkH;oBAClH,gGAAgG;oBAChG,gEAAgE;oBAChE,IAAI;oBACJ,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC;oBAC9C,IAAI,MAAM,GAAG,eAAe,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;oBAChE,IAAI,SAAS,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,wBAAQ,CAAC,MAAM,CAAC,CAAC;oBAC1F,+CAA+C;oBAC/C,8CAA8C;oBAC9C,gDAAgD;oBAChD,iIAAiI;oBACjI,+GAA+G;oBAC/G,sEAAsE;oBACtE,IAAI;oBAEJ,OAAO,EAAE,CAAC;iBACX;gBAAC,OAAO,GAAG,EAAE;oBACZ,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oCAAoC,GAAG,EAAE,CAAC,CAAC;oBAC7D,MAAM,CAAC,GAAG,CAAC,CAAC;iBACb;YACH,CAAC,CAAA,CAAC,CAAC;QACL,CAAC;KAAA;CAEF,CAAA;AA1JY,qBAAqB;IADjC,IAAA,sBAAU,GAAE;IAEE,mBAAA,IAAA,kBAAM,EAAC,0BAAU,CAAC,aAAa,CAAC,CAAA;;GADlC,qBAAqB,CA0JjC;AA1JY,sDAAqB"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { EntryValue, IUserInputProvider, choice, IOutputStyler, FileSelectionOptions, FolderSelectionOptions } from '@codiac.io/codiac-ops-common';
|
|
2
|
+
export declare class MockUi implements IUserInputProvider, IOutputStyler {
|
|
3
|
+
constructor();
|
|
4
|
+
private values;
|
|
5
|
+
responses: {
|
|
6
|
+
[id: string]: EntryValue | Error;
|
|
7
|
+
};
|
|
8
|
+
setValue(id: string, value: EntryValue): void;
|
|
9
|
+
private getValue;
|
|
10
|
+
userMessage(message: string): void;
|
|
11
|
+
prompt<T extends EntryValue>(id: string, prompt: string, required?: boolean | undefined, defaultValue?: T | undefined): Promise<T | undefined>;
|
|
12
|
+
promptPassword(id: string, prompt: string): Promise<string>;
|
|
13
|
+
promptSelect<T extends EntryValue>(id: string, prompt: string, choices: choice<T>[], multiSelect?: boolean | undefined): Promise<T | undefined>;
|
|
14
|
+
promptSelectFile(id: string, prompt: string, fileOptions: FileSelectionOptions): Promise<string>;
|
|
15
|
+
promptSelectFolder(id: string, prompt: string, folderOptions: FolderSelectionOptions): Promise<string>;
|
|
16
|
+
promptConfirm(id: string, prompt: string, defaultValue?: boolean): Promise<boolean>;
|
|
17
|
+
openUrl(url: string): Promise<void>;
|
|
18
|
+
startSpinner(userMessage: string): void;
|
|
19
|
+
stopSpinner(userMessage: string): void;
|
|
20
|
+
bold(content: string): string;
|
|
21
|
+
dim(content: string): string;
|
|
22
|
+
hilite(content: string): string;
|
|
23
|
+
colorGood(content: string): string;
|
|
24
|
+
colorWarning(content: string): string;
|
|
25
|
+
colorCritical(content: string): string;
|
|
26
|
+
}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MockUi = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
// --------------------------------------------------
|
|
6
|
+
//
|
|
7
|
+
// THIS FILE IS A COPY LIFTED FROM codiac-cli-common
|
|
8
|
+
//
|
|
9
|
+
// --------------------------------------------------
|
|
10
|
+
class MockUi {
|
|
11
|
+
constructor() {
|
|
12
|
+
this.values = {};
|
|
13
|
+
this.responses = {};
|
|
14
|
+
}
|
|
15
|
+
setValue(id, value) {
|
|
16
|
+
this.values[id] = value;
|
|
17
|
+
}
|
|
18
|
+
getValue(id) {
|
|
19
|
+
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
20
|
+
try {
|
|
21
|
+
let response;
|
|
22
|
+
if (this.values[id]) {
|
|
23
|
+
response = this.values[id];
|
|
24
|
+
}
|
|
25
|
+
else {
|
|
26
|
+
throw new Error(`MockTenCon unable to respond: No mock value was provided for prompt: [${id}]. Use MockTenCon.setValue() to provide a value.`);
|
|
27
|
+
}
|
|
28
|
+
this.responses[id] = response;
|
|
29
|
+
resolve(response);
|
|
30
|
+
}
|
|
31
|
+
catch (err) {
|
|
32
|
+
this.responses[id] = err;
|
|
33
|
+
reject(err);
|
|
34
|
+
}
|
|
35
|
+
}));
|
|
36
|
+
}
|
|
37
|
+
userMessage(message) {
|
|
38
|
+
console.log(message);
|
|
39
|
+
}
|
|
40
|
+
prompt(id, prompt, required, defaultValue) {
|
|
41
|
+
return this.getValue(id);
|
|
42
|
+
}
|
|
43
|
+
promptPassword(id, prompt) {
|
|
44
|
+
return this.getValue(id);
|
|
45
|
+
}
|
|
46
|
+
promptSelect(id, prompt, choices, multiSelect) {
|
|
47
|
+
return this.getValue(id);
|
|
48
|
+
}
|
|
49
|
+
promptSelectFile(id, prompt, fileOptions) {
|
|
50
|
+
return this.getValue(id);
|
|
51
|
+
}
|
|
52
|
+
promptSelectFolder(id, prompt, folderOptions) {
|
|
53
|
+
return this.getValue(id);
|
|
54
|
+
}
|
|
55
|
+
promptConfirm(id, prompt, defaultValue) {
|
|
56
|
+
return this.getValue(id);
|
|
57
|
+
}
|
|
58
|
+
openUrl(url) {
|
|
59
|
+
return new Promise(() => console.log(`Pretending to open browser to url [${url}].`));
|
|
60
|
+
}
|
|
61
|
+
startSpinner(userMessage) {
|
|
62
|
+
this.userMessage(userMessage);
|
|
63
|
+
}
|
|
64
|
+
stopSpinner(userMessage) {
|
|
65
|
+
this.userMessage(userMessage);
|
|
66
|
+
}
|
|
67
|
+
// IOutputStyler members
|
|
68
|
+
bold(content) {
|
|
69
|
+
return content;
|
|
70
|
+
}
|
|
71
|
+
dim(content) {
|
|
72
|
+
return content;
|
|
73
|
+
}
|
|
74
|
+
hilite(content) {
|
|
75
|
+
return content;
|
|
76
|
+
}
|
|
77
|
+
colorGood(content) {
|
|
78
|
+
return content;
|
|
79
|
+
}
|
|
80
|
+
colorWarning(content) {
|
|
81
|
+
return content;
|
|
82
|
+
}
|
|
83
|
+
colorCritical(content) {
|
|
84
|
+
return content;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
exports.MockUi = MockUi;
|
|
88
|
+
//# sourceMappingURL=mock-ui.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock-ui.js","sourceRoot":"","sources":["../../../src/ops/test/mock-ui.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Result, ListResult, BatchResult, SingleResult } from "@codiac.io/codiac-common/contracts";
|
|
2
|
+
export declare function expectSuccessful(eventAttempted: string, result: Result): void;
|
|
3
|
+
export declare function expectSuccessfulSingleOutput<T>(eventAttempted: string, result: SingleResult<T>): void;
|
|
4
|
+
export declare function expectSuccessfulListOutput<T>(eventAttempted: string, result: ListResult<T>, expectedQty?: number): void;
|
|
5
|
+
export declare function expectSuccessfulBatchOutput<T>(eventAttempted: string, result: BatchResult<T>): void;
|
|
6
|
+
/** NOTE: This method ensures that there is no error either. */
|
|
7
|
+
export declare function expectNoSingleOutput<T>(eventAttempted: string, result: SingleResult<T>): void;
|
|
8
|
+
/** NOTE: This method ensures that there is no error either. */
|
|
9
|
+
export declare function expectNoListOutput<T>(eventAttempted: string, result: ListResult<T>): void;
|
|
10
|
+
/** NOTE: This method does NOT check for result.error. */
|
|
11
|
+
export declare function expectBatchFailure<T>(eventAttempted: string, result: BatchResult<T>): void;
|
|
12
|
+
/** NOTE: This method does NOT check for null output. */
|
|
13
|
+
export declare function expectError<T>(eventAttempted: string, result: Result): void;
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.expectError = exports.expectBatchFailure = exports.expectNoListOutput = exports.expectNoSingleOutput = exports.expectSuccessfulBatchOutput = exports.expectSuccessfulListOutput = exports.expectSuccessfulSingleOutput = exports.expectSuccessful = void 0;
|
|
4
|
+
const chai_1 = require("chai");
|
|
5
|
+
// --------------------------------------------------
|
|
6
|
+
//
|
|
7
|
+
// THIS FILE IS A COPY LIFTED FROM codiac-api-base
|
|
8
|
+
//
|
|
9
|
+
// --------------------------------------------------
|
|
10
|
+
function expectSuccessful(eventAttempted, result) {
|
|
11
|
+
if (result.error) {
|
|
12
|
+
//console.log(result.error.stack);
|
|
13
|
+
(0, chai_1.expect)(result.error).to.equal(undefined, `${eventAttempted} must execute without errors. Error returned: ${result.error.stack}`);
|
|
14
|
+
}
|
|
15
|
+
(0, chai_1.expect)(result.success).to.equal(true, `${eventAttempted} must return success.`);
|
|
16
|
+
}
|
|
17
|
+
exports.expectSuccessful = expectSuccessful;
|
|
18
|
+
function expectSuccessfulSingleOutput(eventAttempted, result) {
|
|
19
|
+
expectSuccessful(eventAttempted, result);
|
|
20
|
+
(0, chai_1.expect)(result.output).to.not.equal(undefined, `${eventAttempted} must return the entity as output.`);
|
|
21
|
+
}
|
|
22
|
+
exports.expectSuccessfulSingleOutput = expectSuccessfulSingleOutput;
|
|
23
|
+
function expectSuccessfulListOutput(eventAttempted, result, expectedQty) {
|
|
24
|
+
expectSuccessful(eventAttempted, result);
|
|
25
|
+
(0, chai_1.expect)(result.output).to.not.equal(undefined, `${eventAttempted} must return output.`);
|
|
26
|
+
if (expectedQty) {
|
|
27
|
+
(0, chai_1.expect)(result.count).to.equal(expectedQty, `${eventAttempted} must return ${expectedQty} entities. \nActual output: ${JSON.stringify(result.output, undefined, 2)}`);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
exports.expectSuccessfulListOutput = expectSuccessfulListOutput;
|
|
31
|
+
function expectSuccessfulBatchOutput(eventAttempted, result) {
|
|
32
|
+
expectSuccessful(eventAttempted, result);
|
|
33
|
+
(0, chai_1.expect)(result.successes).to.not.equal(undefined, `${eventAttempted} must return successes.`);
|
|
34
|
+
(0, chai_1.expect)(result.failures).to.not.equal(undefined, `${eventAttempted} must not return an undefined failures list.`);
|
|
35
|
+
(0, chai_1.expect)(result.failures.length).to.equal(0, `${eventAttempted} must return an empty failures list.`);
|
|
36
|
+
}
|
|
37
|
+
exports.expectSuccessfulBatchOutput = expectSuccessfulBatchOutput;
|
|
38
|
+
/** NOTE: This method ensures that there is no error either. */
|
|
39
|
+
function expectNoSingleOutput(eventAttempted, result) {
|
|
40
|
+
(0, chai_1.expect)(result.success).to.equal(false, `${eventAttempted} must return unsuccessful.`);
|
|
41
|
+
(0, chai_1.expect)(result.output).to.equal(undefined, `${eventAttempted} must not return output.`);
|
|
42
|
+
(0, chai_1.expect)(result.error).to.equal(undefined, `${eventAttempted} must not return an error.`);
|
|
43
|
+
}
|
|
44
|
+
exports.expectNoSingleOutput = expectNoSingleOutput;
|
|
45
|
+
/** NOTE: This method ensures that there is no error either. */
|
|
46
|
+
function expectNoListOutput(eventAttempted, result) {
|
|
47
|
+
(0, chai_1.expect)(result.success).to.equal(false, `${eventAttempted} must return unsuccessful.`);
|
|
48
|
+
if (result.output) {
|
|
49
|
+
(0, chai_1.expect)(result.output.length).to.equal(0, `${eventAttempted} must return empty or undefined output.`);
|
|
50
|
+
}
|
|
51
|
+
(0, chai_1.expect)(result.error).to.equal(undefined, `${eventAttempted} must not return an error.`);
|
|
52
|
+
}
|
|
53
|
+
exports.expectNoListOutput = expectNoListOutput;
|
|
54
|
+
/** NOTE: This method does NOT check for result.error. */
|
|
55
|
+
function expectBatchFailure(eventAttempted, result) {
|
|
56
|
+
(0, chai_1.expect)(result.success).to.equal(false, `${eventAttempted} must return unsuccessful.`);
|
|
57
|
+
if (result.successes) {
|
|
58
|
+
(0, chai_1.expect)(result.successes.length).to.equal(0, `${eventAttempted} must return empty or undefined successes.`);
|
|
59
|
+
}
|
|
60
|
+
if (result.failures) {
|
|
61
|
+
(0, chai_1.expect)(result.failures.length).to.gt(0, `${eventAttempted} must return failures.`);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
exports.expectBatchFailure = expectBatchFailure;
|
|
65
|
+
/** NOTE: This method does NOT check for null output. */
|
|
66
|
+
function expectError(eventAttempted, result) {
|
|
67
|
+
(0, chai_1.expect)(result.success).to.equal(false, `${eventAttempted} must return unsuccessful.`);
|
|
68
|
+
(0, chai_1.expect)(result.error).to.not.equal(undefined, `${eventAttempted} must return error.`);
|
|
69
|
+
}
|
|
70
|
+
exports.expectError = expectError;
|
|
71
|
+
//# sourceMappingURL=test-extensions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test-extensions.js","sourceRoot":"","sources":["../../../src/ops/test/test-extensions.ts"],"names":[],"mappings":";;;AACA,+BAA8B;AAG9B,qDAAqD;AACrD,EAAE;AACF,kDAAkD;AAClD,EAAE;AACF,qDAAqD;AAGrD,SAAgB,gBAAgB,CAAC,cAAsB,EAAE,MAAc;IACnE,IAAI,MAAM,CAAC,KAAK,EAAE;QACd,kCAAkC;QAClC,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,EAAE,GAAG,cAAc,kDAAkD,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;KACrI;IACD,IAAA,aAAM,EAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,cAAc,uBAAuB,CAAC,CAAC;AACpF,CAAC;AAND,4CAMC;AAED,SAAgB,4BAA4B,CAAI,cAAsB,EAAE,MAAuB;IAC3F,gBAAgB,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;IACzC,IAAA,aAAM,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,GAAG,cAAc,oCAAoC,CAAC,CAAC;AACzG,CAAC;AAHD,oEAGC;AAED,SAAgB,0BAA0B,CAAI,cAAsB,EAAE,MAAqB,EAAE,WAAoB;IAC7G,gBAAgB,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;IACzC,IAAA,aAAM,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,GAAG,cAAc,sBAAsB,CAAC,CAAC;IACvF,IAAI,WAAW,EAAE;QACb,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,GAAG,cAAc,gBAAgB,WAAW,+BAA+B,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,CAAA;KACvK;AACL,CAAC;AAND,gEAMC;AAED,SAAgB,2BAA2B,CAAI,cAAsB,EAAE,MAAsB;IACzF,gBAAgB,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;IACzC,IAAA,aAAM,EAAC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,GAAG,cAAc,yBAAyB,CAAC,CAAC;IAC7F,IAAA,aAAM,EAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,GAAG,cAAc,8CAA8C,CAAC,CAAC;IACjH,IAAA,aAAM,EAAC,MAAM,CAAC,QAAS,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,cAAc,sCAAsC,CAAC,CAAC;AACzG,CAAC;AALD,kEAKC;AAID,gEAAgE;AAChE,SAAgB,oBAAoB,CAAI,cAAsB,EAAE,MAAuB;IAEnF,IAAA,aAAM,EAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,cAAc,4BAA4B,CAAC,CAAC;IACtF,IAAA,aAAM,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,EAAE,GAAG,cAAc,0BAA0B,CAAC,CAAC;IACvF,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,EAAE,GAAG,cAAc,4BAA4B,CAAC,CAAC;AAC5F,CAAC;AALD,oDAKC;AAED,gEAAgE;AAChE,SAAgB,kBAAkB,CAAI,cAAsB,EAAE,MAAqB;IAE/E,IAAA,aAAM,EAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,cAAc,4BAA4B,CAAC,CAAC;IACtF,IAAI,MAAM,CAAC,MAAM,EAAE;QACf,IAAA,aAAM,EAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,cAAc,yCAAyC,CAAC,CAAC;KACxG;IACD,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,EAAE,GAAG,cAAc,4BAA4B,CAAC,CAAC;AAC5F,CAAC;AAPD,gDAOC;AAED,0DAA0D;AAC1D,SAAgB,kBAAkB,CAAI,cAAsB,EAAE,MAAsB;IAEhF,IAAA,aAAM,EAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,cAAc,4BAA4B,CAAC,CAAC;IACtF,IAAI,MAAM,CAAC,SAAS,EAAE;QAClB,IAAA,aAAM,EAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,cAAc,4CAA4C,CAAC,CAAC;KAC9G;IACD,IAAI,MAAM,CAAC,QAAQ,EAAE;QACjB,IAAA,aAAM,EAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,cAAc,wBAAwB,CAAC,CAAC;KACtF;AACL,CAAC;AATD,gDASC;AAGD,yDAAyD;AACzD,SAAgB,WAAW,CAAI,cAAsB,EAAE,MAAc;IAEjE,IAAA,aAAM,EAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,cAAc,4BAA4B,CAAC,CAAC;IACtF,IAAA,aAAM,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,GAAG,cAAc,qBAAqB,CAAC,CAAC;AAEzF,CAAC;AALD,kCAKC"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
require("mocha");
|
|
5
|
+
require("chai");
|
|
6
|
+
const chai_1 = require("chai");
|
|
7
|
+
const path = require("path");
|
|
8
|
+
const filehound_1 = require("filehound");
|
|
9
|
+
describe("when a recursive file search is run", () => {
|
|
10
|
+
it("then it shall find matching files", () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
11
|
+
return new Promise((resolve, reject) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
12
|
+
try {
|
|
13
|
+
let searchPath = path.join(process.cwd(), "src/test", "mock-a");
|
|
14
|
+
console.log(`Searching ${searchPath}...`);
|
|
15
|
+
let files = yield filehound_1.FileHound.create()
|
|
16
|
+
.path(searchPath)
|
|
17
|
+
.glob("Dockerfile", "*.dockerfile")
|
|
18
|
+
.ignoreHiddenDirectories()
|
|
19
|
+
.discard("ignored*|dist|bin")
|
|
20
|
+
// .includeFileStats()
|
|
21
|
+
.find();
|
|
22
|
+
// files.forEach(element => {
|
|
23
|
+
// element = path.relative(searchPath, element);
|
|
24
|
+
// });
|
|
25
|
+
files = files.map(file => path.relative(searchPath, file));
|
|
26
|
+
console.dir(files);
|
|
27
|
+
resolve();
|
|
28
|
+
}
|
|
29
|
+
catch (err) {
|
|
30
|
+
reject(err);
|
|
31
|
+
}
|
|
32
|
+
}));
|
|
33
|
+
}));
|
|
34
|
+
it("then paths shall be compared on how they resolve", () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
35
|
+
return new Promise((resolve, reject) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
36
|
+
try {
|
|
37
|
+
let searchPath = path.join(process.cwd(), "src/test", "mock-a");
|
|
38
|
+
console.log(`Searching ${searchPath}...`);
|
|
39
|
+
let fileA = "./Dockerfile";
|
|
40
|
+
let fileB = "dockerfile";
|
|
41
|
+
let relA = path.relative(searchPath, path.join(searchPath, fileA)).toLowerCase();
|
|
42
|
+
let relB = path.relative(searchPath, path.join(searchPath, fileB)).toLowerCase();
|
|
43
|
+
console.log(`relA: ${relA}`);
|
|
44
|
+
console.log(`relB: ${relB}`);
|
|
45
|
+
let inUse = [relB].indexOf(relA) >= 0;
|
|
46
|
+
(0, chai_1.expect)(inUse).to.equal(true, "Path A must match Path B");
|
|
47
|
+
resolve();
|
|
48
|
+
}
|
|
49
|
+
catch (err) {
|
|
50
|
+
reject(err);
|
|
51
|
+
}
|
|
52
|
+
}));
|
|
53
|
+
}));
|
|
54
|
+
});
|
|
55
|
+
//# sourceMappingURL=when-a-recursive-file-search-is-run.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"when-a-recursive-file-search-is-run.spec.js","sourceRoot":"","sources":["../../../src/ops/test/when-a-recursive-file-search-is-run.spec.ts"],"names":[],"mappings":";;;AAAA,iBAAe;AACf,gBAAc;AACd,+BAA8B;AAC9B,6BAA6B;AAC7B,yCAAsC;AAEtC,QAAQ,CAAC,qCAAqC,EAAE,GAAG,EAAE;IAGnD,EAAE,CAAC,mCAAmC,EAAE,GAAS,EAAE;QACjD,OAAO,IAAI,OAAO,CAAO,CAAO,OAAO,EAAE,MAAM,EAAE,EAAE;YACjD,IAAI;gBAEF,IAAI,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;gBAChE,OAAO,CAAC,GAAG,CAAC,aAAa,UAAU,KAAK,CAAC,CAAC;gBAE1C,IAAI,KAAK,GAAa,MAAM,qBAAS,CAAC,MAAM,EAAE;qBAC3C,IAAI,CAAC,UAAU,CAAC;qBAChB,IAAI,CAAC,YAAY,EAAE,cAAc,CAAC;qBAClC,uBAAuB,EAAE;qBACzB,OAAO,CAAC,mBAAmB,CAAC;oBAC7B,sBAAsB;qBACrB,IAAI,EAAE,CAAA;gBAET,6BAA6B;gBAC7B,kDAAkD;gBAClD,MAAM;gBACN,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAA;gBAC1D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBAEnB,OAAO,EAAE,CAAC;aACX;YAAC,OAAO,GAAG,EAAE;gBACZ,MAAM,CAAC,GAAG,CAAC,CAAC;aACb;QACH,CAAC,CAAA,CAAC,CAAC;IACL,CAAC,CAAA,CAAC,CAAC;IAGH,EAAE,CAAC,kDAAkD,EAAE,GAAS,EAAE;QAChE,OAAO,IAAI,OAAO,CAAO,CAAO,OAAO,EAAE,MAAM,EAAE,EAAE;YACjD,IAAI;gBAEF,IAAI,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;gBAChE,OAAO,CAAC,GAAG,CAAC,aAAa,UAAU,KAAK,CAAC,CAAC;gBAE1C,IAAI,KAAK,GAAG,cAAc,CAAC;gBAC3B,IAAI,KAAK,GAAG,YAAY,CAAA;gBAExB,IAAI,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;gBACjF,IAAI,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;gBAEjF,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;gBAC7B,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;gBAC7B,IAAI,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACtC,IAAA,aAAM,EAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,0BAA0B,CAAC,CAAC;gBAEzD,OAAO,EAAE,CAAC;aACX;YAAC,OAAO,GAAG,EAAE;gBACZ,MAAM,CAAC,GAAG,CAAC,CAAC;aACb;QACH,CAAC,CAAA,CAAC,CAAC;IACL,CAAC,CAAA,CAAC,CAAA;AAEJ,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
require("mocha");
|
|
5
|
+
require("chai");
|
|
6
|
+
const LocalOps_1 = require("../LocalOps");
|
|
7
|
+
const codiac_ops_common_1 = require("@codiac.io/codiac-ops-common");
|
|
8
|
+
const codiac_common_1 = require("@codiac.io/codiac-common");
|
|
9
|
+
const inversify_1 = require("inversify");
|
|
10
|
+
describe("when gitBranchLine is attempted", () => {
|
|
11
|
+
let localOps;
|
|
12
|
+
let logger;
|
|
13
|
+
let ioc = new inversify_1.Container();
|
|
14
|
+
let cliExec;
|
|
15
|
+
it("then it shall return the pedigree of the branch.", () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
16
|
+
return new Promise((resolve, reject) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
17
|
+
try {
|
|
18
|
+
logger = new codiac_common_1.BetterConsoleLogger();
|
|
19
|
+
cliExec = new codiac_ops_common_1.CliExec(logger);
|
|
20
|
+
let uiPvd = new codiac_ops_common_1.ThrowingUserInputProvider(logger);
|
|
21
|
+
let styler = new codiac_ops_common_1.NoStyleOutputStyler();
|
|
22
|
+
let cliRoot = process.cwd(); // we're not using this for this test
|
|
23
|
+
let projRoot = process.cwd();
|
|
24
|
+
console.log(`projRoot: ${projRoot}`);
|
|
25
|
+
// let cfgRepo = new ProjectContextRepo({ projectRoot: projRoot });
|
|
26
|
+
localOps = new LocalOps_1.LocalOps(ioc); // , { cliConfigDir: cwd(), version: "0.0.0" }, { projectRoot: projRoot }, cfgRepo, uiPvd, styler, cliExec, logger);
|
|
27
|
+
let lineage = yield localOps.gitBranchLine("main");
|
|
28
|
+
console.dir(lineage);
|
|
29
|
+
// expect(DockerCredentialsStore.configPath).to.equal(defaultConfigPathName, "The docker config path was incorrect");
|
|
30
|
+
resolve();
|
|
31
|
+
}
|
|
32
|
+
catch (err) {
|
|
33
|
+
reject(err);
|
|
34
|
+
}
|
|
35
|
+
}));
|
|
36
|
+
}));
|
|
37
|
+
});
|
|
38
|
+
//# sourceMappingURL=when-git-branchline-is-attempted.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"when-git-branchline-is-attempted.spec.js","sourceRoot":"","sources":["../../../src/ops/test/when-git-branchline-is-attempted.spec.ts"],"names":[],"mappings":";;;AAAA,iBAAe;AACf,gBAAc;AAGd,0CAAuC;AACvC,oEAAuG;AACvG,4DAA8E;AAE9E,yCAAsC;AAGtC,QAAQ,CAAC,iCAAiC,EAAE,GAAG,EAAE;IAG/C,IAAI,QAAkB,CAAC;IACvB,IAAI,MAAqB,CAAC;IAC1B,IAAI,GAAG,GAAc,IAAI,qBAAS,EAAE,CAAC;IACrC,IAAI,OAAgB,CAAC;IAGrB,EAAE,CAAC,kDAAkD,EAAE,GAAS,EAAE;QAChE,OAAO,IAAI,OAAO,CAAO,CAAO,OAAO,EAAC,MAAM,EAAE,EAAE;YAChD,IAAI;gBACF,MAAM,GAAG,IAAI,mCAAmB,EAAE,CAAC;gBACnC,OAAO,GAAG,IAAI,2BAAO,CAAC,MAAM,CAAC,CAAC;gBAC9B,IAAI,KAAK,GAAG,IAAI,6CAAyB,CAAC,MAAM,CAAC,CAAC;gBAClD,IAAI,MAAM,GAAG,IAAI,uCAAmB,EAAE,CAAC;gBACvC,IAAI,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAE,qCAAqC;gBACnE,IAAI,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;gBAC7B,OAAO,CAAC,GAAG,CAAC,aAAa,QAAQ,EAAE,CAAC,CAAC;gBACrC,mEAAmE;gBACnE,QAAQ,GAAG,IAAI,mBAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,oHAAoH;gBAElJ,IAAI,OAAO,GAAG,MAAM,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAA;gBAClD,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBAErB,qHAAqH;gBAErH,OAAO,EAAE,CAAC;aACX;YAAC,OAAO,GAAG,EAAE;gBACZ,MAAM,CAAC,GAAG,CAAC,CAAC;aACb;QACH,CAAC,CAAA,CAAC,CAAC;IACL,CAAC,CAAA,CAAC,CAAC;AAGL,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
require("mocha");
|
|
5
|
+
require("chai");
|
|
6
|
+
const chai_1 = require("chai");
|
|
7
|
+
const LocalOps_1 = require("../LocalOps");
|
|
8
|
+
const codiac_ops_common_1 = require("@codiac.io/codiac-ops-common");
|
|
9
|
+
const codiac_common_1 = require("@codiac.io/codiac-common");
|
|
10
|
+
const data_1 = require("../data");
|
|
11
|
+
const inversify_1 = require("inversify");
|
|
12
|
+
describe("when versions are parsed", () => {
|
|
13
|
+
let localOps;
|
|
14
|
+
let logger;
|
|
15
|
+
let ioc = new inversify_1.Container();
|
|
16
|
+
let cliExec;
|
|
17
|
+
before(() => {
|
|
18
|
+
logger = new codiac_common_1.BetterConsoleLogger();
|
|
19
|
+
cliExec = new codiac_ops_common_1.CliExec(logger);
|
|
20
|
+
let uiPvd = new codiac_ops_common_1.ThrowingUserInputProvider(logger);
|
|
21
|
+
let styler = new codiac_ops_common_1.NoStyleOutputStyler();
|
|
22
|
+
let cliRoot = process.cwd(); // we're not using this for this test
|
|
23
|
+
let projRoot = process.cwd();
|
|
24
|
+
console.log(`projRoot: ${projRoot}`);
|
|
25
|
+
let cfgRepo = new data_1.ProjectContextRepo({ projectRoot: projRoot });
|
|
26
|
+
ioc.bind(data_1.ProjectContextRepo).toConstantValue(cfgRepo);
|
|
27
|
+
localOps = new LocalOps_1.LocalOps(ioc); // , { cliConfigDir: cwd(), version: "0.0.0" }, { projectRoot: projRoot }, cfgRepo, uiPvd, styler, cliExec, logger);
|
|
28
|
+
});
|
|
29
|
+
it("then branch shall be recognized in prerelease.", () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
30
|
+
return new Promise((resolve, reject) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
31
|
+
try {
|
|
32
|
+
let v1 = "1.2.3-branch-name.4";
|
|
33
|
+
let newBranchName = "my-new.branchname";
|
|
34
|
+
let modified = localOps.addPrereleaseId(v1, newBranchName);
|
|
35
|
+
console.log(modified);
|
|
36
|
+
(0, chai_1.expect)(modified).to.equal(`1.2.3-${newBranchName}.0`, "The version number was incorrect");
|
|
37
|
+
resolve();
|
|
38
|
+
}
|
|
39
|
+
catch (err) {
|
|
40
|
+
reject(err);
|
|
41
|
+
}
|
|
42
|
+
}));
|
|
43
|
+
}));
|
|
44
|
+
it("then build number suffixes shall be supported in prerelease.", () => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
45
|
+
return new Promise((resolve, reject) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
46
|
+
try {
|
|
47
|
+
let v1 = "1.2.3-branch-name.4+8989";
|
|
48
|
+
let newBranchName = "my-new.branch_name";
|
|
49
|
+
let modified = localOps.addPrereleaseId(v1, newBranchName);
|
|
50
|
+
console.log(modified);
|
|
51
|
+
(0, chai_1.expect)(modified).to.equal(`1.2.3-my-new.branch-name.0`, "The version number was incorrect");
|
|
52
|
+
resolve();
|
|
53
|
+
}
|
|
54
|
+
catch (err) {
|
|
55
|
+
reject(err);
|
|
56
|
+
}
|
|
57
|
+
}));
|
|
58
|
+
}));
|
|
59
|
+
});
|
|
60
|
+
//# sourceMappingURL=when-versions-are-parsed.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"when-versions-are-parsed.spec.js","sourceRoot":"","sources":["../../../src/ops/test/when-versions-are-parsed.spec.ts"],"names":[],"mappings":";;;AAAA,iBAAe;AACf,gBAAc;AACd,+BAA8B;AAE9B,0CAAuC;AACvC,oEAAuG;AACvG,4DAA8E;AAC9E,kCAA6C;AAC7C,yCAAsC;AAGtC,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;IAGxC,IAAI,QAAkB,CAAC;IACvB,IAAI,MAAqB,CAAC;IAC1B,IAAI,GAAG,GAAc,IAAI,qBAAS,EAAE,CAAC;IACrC,IAAI,OAAgB,CAAC;IAGrB,MAAM,CAAC,GAAG,EAAE;QAEV,MAAM,GAAG,IAAI,mCAAmB,EAAE,CAAC;QACnC,OAAO,GAAG,IAAI,2BAAO,CAAC,MAAM,CAAC,CAAC;QAC9B,IAAI,KAAK,GAAG,IAAI,6CAAyB,CAAC,MAAM,CAAC,CAAC;QAClD,IAAI,MAAM,GAAG,IAAI,uCAAmB,EAAE,CAAC;QACvC,IAAI,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAE,qCAAqC;QACnE,IAAI,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,aAAa,QAAQ,EAAE,CAAC,CAAC;QACrC,IAAI,OAAO,GAAG,IAAI,yBAAkB,CAAC,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,CAAC;QAChE,GAAG,CAAC,IAAI,CAAC,yBAAkB,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QACtD,QAAQ,GAAG,IAAI,mBAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,oHAAoH;IAEpJ,CAAC,CAAC,CAAC;IAGH,EAAE,CAAC,gDAAgD,EAAE,GAAS,EAAE;QAC9D,OAAO,IAAI,OAAO,CAAO,CAAO,OAAO,EAAC,MAAM,EAAE,EAAE;YAChD,IAAI;gBAEF,IAAI,EAAE,GAAG,qBAAqB,CAAC;gBAC/B,IAAI,aAAa,GAAG,mBAAmB,CAAC;gBACxC,IAAI,QAAQ,GAAG,QAAQ,CAAC,eAAe,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC;gBAC3D,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBAEtB,IAAA,aAAM,EAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,aAAa,IAAI,EAAE,kCAAkC,CAAC,CAAC;gBAE1F,OAAO,EAAE,CAAC;aACX;YAAC,OAAO,GAAG,EAAE;gBACZ,MAAM,CAAC,GAAG,CAAC,CAAC;aACb;QACH,CAAC,CAAA,CAAC,CAAC;IACL,CAAC,CAAA,CAAC,CAAC;IAIH,EAAE,CAAC,8DAA8D,EAAE,GAAS,EAAE;QAC5E,OAAO,IAAI,OAAO,CAAO,CAAO,OAAO,EAAC,MAAM,EAAE,EAAE;YAChD,IAAI;gBAEF,IAAI,EAAE,GAAG,0BAA0B,CAAC;gBACpC,IAAI,aAAa,GAAG,oBAAoB,CAAC;gBACzC,IAAI,QAAQ,GAAG,QAAQ,CAAC,eAAe,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC;gBAC3D,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBAEtB,IAAA,aAAM,EAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,4BAA4B,EAAE,kCAAkC,CAAC,CAAC;gBAE5F,OAAO,EAAE,CAAC;aACX;YAAC,OAAO,GAAG,EAAE;gBACZ,MAAM,CAAC,GAAG,CAAC,CAAC;aACb;QACH,CAAC,CAAA,CAAC,CAAC;IACL,CAAC,CAAA,CAAC,CAAC;AAGL,CAAC,CAAC,CAAC"}
|
|
File without changes
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// import { inject, injectable } from "inversify";
|
|
3
|
+
// import { INTERFACES } from "@codiac.io/codiac-common";
|
|
4
|
+
// import { IBetterLogger } from "@codiac.io/codiac-common/IBetterLogger";
|
|
5
|
+
// import { EntryValue, choice, IUserInputProvider } from "@codiac.io/codiac-ops-common";
|
|
6
|
+
// /** For use in a non-TTY scenario: Throws on any request for user interaction.
|
|
7
|
+
// */
|
|
8
|
+
// @injectable()
|
|
9
|
+
// export class ThrowingUserInputProvider implements IUserInputProvider {
|
|
10
|
+
// constructor(@inject(INTERFACES.IBetterLogger) private logger: IBetterLogger) {
|
|
11
|
+
// }
|
|
12
|
+
// userMessage(message: string): void {
|
|
13
|
+
// this.logger.notice(message);
|
|
14
|
+
// }
|
|
15
|
+
// prompt<T extends EntryValue>(id: string, prompt: string, required?: boolean, defaultValue?: T): Promise<T | undefined> {
|
|
16
|
+
// throw new Error(`Cannot acquire input [id: ${id}]: Cannot interact with user from this environment.`);
|
|
17
|
+
// }
|
|
18
|
+
// promptPassword(id: string, prompt: string): Promise<string> {
|
|
19
|
+
// throw new Error(`Cannot acquire input [id: ${id}]: Cannot interact with user from this environment.`);
|
|
20
|
+
// }
|
|
21
|
+
// promptSelect<T extends EntryValue>(id: string, prompt: string, choices: choice<T>[], multiSelect?: boolean): Promise<T | undefined> {
|
|
22
|
+
// throw new Error(`Cannot acquire input [id: ${id}]: Cannot interact with user from this environment.`);
|
|
23
|
+
// }
|
|
24
|
+
// promptConfirm(id: string, prompt: string, defaultValue?: boolean): Promise<boolean> {
|
|
25
|
+
// throw new Error(`Cannot acquire input [id: ${id}]: Cannot interact with user from this environment.`);
|
|
26
|
+
// }
|
|
27
|
+
// openUrl(url: string): Promise<void> {
|
|
28
|
+
// throw new Error(`Cannot open browser window to url [${url}]: Cannot interact with user from this environment.`);
|
|
29
|
+
// }
|
|
30
|
+
// startSpinner(userMessage: string): void {
|
|
31
|
+
// this.userMessage(userMessage);
|
|
32
|
+
// }
|
|
33
|
+
// stopSpinner(userMessage: string): void {
|
|
34
|
+
// this.userMessage(userMessage);
|
|
35
|
+
// }
|
|
36
|
+
// }
|
|
37
|
+
//# sourceMappingURL=throwing-user-input-provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"throwing-user-input-provider.js","sourceRoot":"","sources":["../../src/ops/throwing-user-input-provider.ts"],"names":[],"mappings":";AAAA,kDAAkD;AAClD,yDAAyD;AACzD,0EAA0E;AAC1E,yFAAyF;AAGzF,iFAAiF;AACjF,MAAM;AACN,gBAAgB;AAChB,yEAAyE;AACzE,mFAAmF;AACnF,MAAM;AACN,yCAAyC;AACzC,mCAAmC;AACnC,MAAM;AACN,6HAA6H;AAC7H,6GAA6G;AAC7G,MAAM;AACN,kEAAkE;AAClE,6GAA6G;AAC7G,MAAM;AACN,0IAA0I;AAC1I,6GAA6G;AAC7G,MAAM;AACN,0FAA0F;AAC1F,6GAA6G;AAC7G,MAAM;AACN,0CAA0C;AAC1C,uHAAuH;AACvH,MAAM;AACN,8CAA8C;AAC9C,qCAAqC;AACrC,MAAM;AACN,6CAA6C;AAC7C,qCAAqC;AACrC,MAAM;AAEN,IAAI"}
|
|
@@ -16,7 +16,7 @@ const inversify_1 = require("inversify");
|
|
|
16
16
|
const codiac_ops_common_1 = require("@codiac.io/codiac-ops-common");
|
|
17
17
|
const child_process_1 = require("child_process");
|
|
18
18
|
const DEFAULT_IMAGE_NAME = "codiacimages/codiac-relay";
|
|
19
|
-
const DEFAULT_IMAGE_TAG = "1.2.
|
|
19
|
+
const DEFAULT_IMAGE_TAG = "1.2.22";
|
|
20
20
|
const DEFUALT_CONTIANER_NAME = "codiac-relay";
|
|
21
21
|
const DEFAULT_HEALTH_CHECK_URL = "http://localhost:5799/heartbeat-json"; // /ready-state";
|
|
22
22
|
const DEFAULT_RETRY_TIMOUT_IN_MINUTES = 1;
|