@contrail/cli 1.0.67 → 1.0.69
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/.eslintrc.js +53 -53
- package/.vscode/settings.json +5 -5
- package/README.md +5 -5
- package/bin/init +3 -3
- package/lib/api/apps.d.ts +13 -13
- package/lib/api/apps.js +85 -85
- package/lib/api/event-workflow-action-definition.d.ts +1 -1
- package/lib/api/event-workflow-action-definition.js +7 -7
- package/lib/api/event-workflow-template-definition.d.ts +6 -6
- package/lib/api/event-workflow-template-definition.js +20 -20
- package/lib/api/event-workflow-templates.d.ts +7 -7
- package/lib/api/event-workflow-templates.js +25 -25
- package/lib/apps/create-app/create.d.ts +1 -1
- package/lib/apps/create-app/create.js +60 -59
- package/lib/apps/create-app/setup-template.d.ts +1 -1
- package/lib/apps/create-app/setup-template.js +34 -34
- package/lib/apps/deploy-app/actions-deployer.d.ts +11 -11
- package/lib/apps/deploy-app/actions-deployer.js +114 -114
- package/lib/apps/deploy-app/app-deployer.d.ts +8 -8
- package/lib/apps/deploy-app/app-deployer.js +93 -93
- package/lib/apps/deploy-app/app-template-parsers.d.ts +7 -7
- package/lib/apps/deploy-app/app-template-parsers.js +38 -38
- package/lib/apps/deploy-app/deploy.d.ts +2 -2
- package/lib/apps/deploy-app/deploy.js +58 -58
- package/lib/apps/install-app/app-installer.d.ts +2 -2
- package/lib/apps/install-app/app-installer.js +120 -120
- package/lib/apps/upgrade-app/app-upgrader.d.ts +3 -3
- package/lib/apps/upgrade-app/app-upgrader.js +126 -126
- package/lib/auth/auth.d.ts +9 -9
- package/lib/auth/auth.js +2 -2
- package/lib/auth/login.d.ts +2 -2
- package/lib/auth/login.js +141 -141
- package/lib/cli.d.ts +5 -5
- package/lib/cli.js +524 -481
- package/lib/colors/color-loader.d.ts +2 -2
- package/lib/colors/color-loader.js +96 -96
- package/lib/common.d.ts +1 -1
- package/lib/common.js +5 -5
- package/lib/config/config.d.ts +6 -6
- package/lib/config/config.js +70 -70
- package/lib/config/configCommands.d.ts +3 -3
- package/lib/config/configCommands.js +34 -34
- package/lib/interfaces.d.ts +191 -191
- package/lib/interfaces.js +25 -25
- package/lib/loader-process/loader-process.d.ts +2 -2
- package/lib/loader-process/loader-process.js +120 -120
- package/lib/projects/interfaces.d.ts +77 -77
- package/lib/projects/interfaces.js +23 -23
- package/lib/projects/project-exporter.d.ts +2 -2
- package/lib/projects/project-exporter.js +187 -187
- package/lib/projects/project-uploader.d.ts +1 -1
- package/lib/projects/project-uploader.js +105 -105
- package/lib/types/allUploader.d.ts +1 -1
- package/lib/types/allUploader.js +24 -24
- package/lib/types/csv-parser.d.ts +1 -1
- package/lib/types/csv-parser.js +51 -51
- package/lib/types/interfaces.d.ts +55 -55
- package/lib/types/interfaces.js +1 -1
- package/lib/types/option-set-hierarchy-exporter.d.ts +1 -1
- package/lib/types/option-set-hierarchy-exporter.js +113 -113
- package/lib/types/option-set-hierarchy-parser.d.ts +2 -2
- package/lib/types/option-set-hierarchy-parser.js +140 -140
- package/lib/types/option-set-hierarchy-uploader.d.ts +1 -1
- package/lib/types/option-set-hierarchy-uploader.js +113 -113
- package/lib/types/option-set-merger.d.ts +1 -1
- package/lib/types/option-set-merger.js +105 -102
- package/lib/types/option-set-parser.d.ts +3 -1
- package/lib/types/option-set-parser.js +140 -50
- package/lib/types/option-set-uploader.d.ts +1 -1
- package/lib/types/option-set-uploader.js +98 -98
- package/lib/types/parse-types.d.ts +4 -4
- package/lib/types/parse-types.js +189 -189
- package/lib/types/rule-set-uploader.d.ts +1 -1
- package/lib/types/rule-set-uploader.js +172 -172
- package/lib/types/type-property-policy-uploader.d.ts +1 -1
- package/lib/types/type-property-policy-uploader.js +178 -178
- package/lib/types/types-extractor.d.ts +27 -27
- package/lib/types/types-extractor.js +318 -318
- package/lib/types/types-properties-merger.d.ts +1 -1
- package/lib/types/types-properties-merger.js +75 -75
- package/lib/types/types-uploader.d.ts +1 -1
- package/lib/types/types-uploader.js +239 -239
- package/lib/types/usage-info-uploader.d.ts +1 -1
- package/lib/types/usage-info-uploader.js +132 -132
- package/lib/users/user-exporter.d.ts +1 -0
- package/lib/users/user-exporter.js +41 -0
- package/lib/users/user-uploader.d.ts +1 -0
- package/lib/users/user-uploader.js +45 -0
- package/lib/workflow-template-definitions/workflow-template-definition-commands.d.ts +2 -2
- package/lib/workflow-template-definitions/workflow-template-definition-commands.js +10 -10
- package/lib/workflow-template-definitions/workflow-template-definition-deployer.d.ts +12 -12
- package/lib/workflow-template-definitions/workflow-template-definition-deployer.js +151 -151
- package/lib/workflow-templates/local-workflow-template-deployer.d.ts +11 -11
- package/lib/workflow-templates/local-workflow-template-deployer.js +102 -102
- package/lib/workflow-templates/workflow-template-commands.d.ts +4 -4
- package/lib/workflow-templates/workflow-template-commands.js +51 -51
- package/lib/workflow-templates/workflow-template-deployer.d.ts +4 -4
- package/lib/workflow-templates/workflow-template-deployer.js +26 -26
- package/package.json +72 -72
- package/publish.bat +5 -0
- package/publish.sh +4 -4
- package/src/api/apps.ts +96 -96
- package/src/api/event-workflow-action-definition.ts +7 -7
- package/src/api/event-workflow-template-definition.ts +22 -22
- package/src/api/event-workflow-templates.ts +28 -28
- package/src/apps/create-app/create.ts +74 -73
- package/src/apps/create-app/setup-template.ts +37 -37
- package/src/apps/deploy-app/actions-deployer.ts +140 -140
- package/src/apps/deploy-app/app-deployer.ts +105 -105
- package/src/apps/deploy-app/app-template-parsers.ts +43 -43
- package/src/apps/deploy-app/deploy.ts +65 -65
- package/src/apps/install-app/app-installer.ts +125 -125
- package/src/apps/upgrade-app/app-upgrader.ts +131 -131
- package/src/auth/auth.ts +9 -9
- package/src/auth/login.ts +155 -155
- package/src/cli.ts +540 -496
- package/src/colors/color-loader.ts +112 -112
- package/src/colors/colors.csv +866 -866
- package/src/common.ts +4 -4
- package/src/config/config.ts +74 -74
- package/src/config/configCommands.ts +37 -37
- package/src/interfaces.ts +200 -200
- package/src/loader-process/loader-process.ts +151 -151
- package/src/projects/interfaces.ts +72 -72
- package/src/projects/project-exporter.ts +224 -224
- package/src/projects/project-uploader.ts +130 -130
- package/src/types/allUploader.ts +28 -28
- package/src/types/csv-parser.ts +58 -58
- package/src/types/interfaces.ts +58 -58
- package/src/types/option-set-hierarchy-exporter.ts +124 -124
- package/src/types/option-set-hierarchy-parser.ts +168 -168
- package/src/types/option-set-hierarchy-uploader.ts +121 -121
- package/src/types/option-set-merger.ts +123 -122
- package/src/types/option-set-parser.ts +165 -59
- package/src/types/option-set-uploader.ts +107 -107
- package/src/types/parse-types.ts +226 -226
- package/src/types/rule-set-uploader.ts +186 -186
- package/src/types/type-property-policy-uploader.ts +191 -191
- package/src/types/types-extractor.ts +368 -368
- package/src/types/types-properties-merger.ts +89 -89
- package/src/types/types-uploader.ts +271 -271
- package/src/types/usage-info-uploader.ts +138 -138
- package/src/users/user-exporter.ts +52 -0
- package/src/users/user-uploader.ts +58 -0
- package/src/workflow-template-definitions/workflow-template-definition-commands.ts +12 -12
- package/src/workflow-template-definitions/workflow-template-definition-deployer.ts +184 -184
- package/src/workflow-templates/local-workflow-template-deployer.ts +125 -125
- package/src/workflow-templates/workflow-template-commands.ts +59 -59
- package/src/workflow-templates/workflow-template-deployer.ts +29 -29
- package/templates/docker_deploy.bat +1 -0
- package/templates/javascript/actions/example/action.js +37 -37
- package/templates/javascript/app.yml +52 -52
- package/templates/javascript/package.json +23 -23
- package/templates/typescript/Dockerfile +15 -14
- package/templates/typescript/README.md +10 -10
- package/templates/typescript/app.yml +50 -54
- package/templates/typescript/package-lock.json +14 -14
- package/templates/typescript/package.json +54 -52
- package/templates/typescript/src/actions/logItem.ts +26 -0
- package/templates/typescript/src/framework/action-dispatcher.ts +86 -0
- package/templates/typescript/src/framework/app-config.ts +27 -0
- package/templates/typescript/src/framework/handler.ts +11 -0
- package/templates/typescript/src/framework/index.ts +3 -0
- package/templates/typescript/src/framework/interfaces.ts +32 -0
- package/templates/typescript/src/framework/logger.ts +21 -0
- package/templates/typescript/{actions → src/framework}/mock-server.ts +7 -0
- package/templates/typescript/tsconfig.json +28 -27
- package/tsconfig.json +31 -30
- package/templates/typescript/actions/handler.ts +0 -62
- package/templates/typescript/actions/utils/logger.ts +0 -15
|
@@ -1,51 +1,51 @@
|
|
|
1
|
-
import chalk from 'chalk';
|
|
2
|
-
import fs from 'fs';
|
|
3
|
-
import { authUser } from '../auth/login';
|
|
4
|
-
import { getSeparatorByPlatform } from '../common';
|
|
5
|
-
const yaml = require('js-yaml');
|
|
6
|
-
import { LocalWorkflowTemplateDeployer } from './local-workflow-template-deployer';
|
|
7
|
-
import { WorkflowTemplateDeployer } from './workflow-template-deployer';
|
|
8
|
-
export async function deleteWorkflowTemplates() {
|
|
9
|
-
await authUser();
|
|
10
|
-
await new WorkflowTemplateDeployer().deleteWorkflowTemplates();
|
|
11
|
-
}
|
|
12
|
-
export async function localDeleteWorkflowTemplate() {
|
|
13
|
-
let wtDeclaration;
|
|
14
|
-
try {
|
|
15
|
-
wtDeclaration = loadTemplateConfig();
|
|
16
|
-
}
|
|
17
|
-
catch (e) {
|
|
18
|
-
console.log(`%s Workflow Deletion Failed. ${e}`, chalk.red.bold('FAIL'));
|
|
19
|
-
return;
|
|
20
|
-
}
|
|
21
|
-
await authUser();
|
|
22
|
-
await new LocalWorkflowTemplateDeployer().deleteWorkflowTemplates(wtDeclaration);
|
|
23
|
-
}
|
|
24
|
-
export async function localDeployWorkflowTemplate() {
|
|
25
|
-
let wtDeclaration;
|
|
26
|
-
try {
|
|
27
|
-
wtDeclaration = loadTemplateConfig();
|
|
28
|
-
}
|
|
29
|
-
catch (e) {
|
|
30
|
-
console.log(`%s Workflow Deletion Failed. ${e}`, chalk.red.bold('FAIL'));
|
|
31
|
-
return;
|
|
32
|
-
}
|
|
33
|
-
await authUser();
|
|
34
|
-
await new LocalWorkflowTemplateDeployer().deployWorkflows(wtDeclaration);
|
|
35
|
-
}
|
|
36
|
-
export async function listWorkflowTemplate() {
|
|
37
|
-
await authUser();
|
|
38
|
-
return await new WorkflowTemplateDeployer().listExistingWorkflowTemplates();
|
|
39
|
-
}
|
|
40
|
-
function loadTemplateConfig() {
|
|
41
|
-
const TARGET_DIR = process.cwd();
|
|
42
|
-
try {
|
|
43
|
-
const separator = getSeparatorByPlatform();
|
|
44
|
-
const doc = yaml.load(fs.readFileSync(TARGET_DIR + separator + 'workflow.yml', 'utf8'));
|
|
45
|
-
console.log(doc);
|
|
46
|
-
return doc;
|
|
47
|
-
}
|
|
48
|
-
catch (e) {
|
|
49
|
-
throw new Error(`ERROR PARSING YAML: ${e}`);
|
|
50
|
-
}
|
|
51
|
-
}
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
import fs from 'fs';
|
|
3
|
+
import { authUser } from '../auth/login';
|
|
4
|
+
import { getSeparatorByPlatform } from '../common';
|
|
5
|
+
const yaml = require('js-yaml');
|
|
6
|
+
import { LocalWorkflowTemplateDeployer } from './local-workflow-template-deployer';
|
|
7
|
+
import { WorkflowTemplateDeployer } from './workflow-template-deployer';
|
|
8
|
+
export async function deleteWorkflowTemplates() {
|
|
9
|
+
await authUser();
|
|
10
|
+
await new WorkflowTemplateDeployer().deleteWorkflowTemplates();
|
|
11
|
+
}
|
|
12
|
+
export async function localDeleteWorkflowTemplate() {
|
|
13
|
+
let wtDeclaration;
|
|
14
|
+
try {
|
|
15
|
+
wtDeclaration = loadTemplateConfig();
|
|
16
|
+
}
|
|
17
|
+
catch (e) {
|
|
18
|
+
console.log(`%s Workflow Deletion Failed. ${e}`, chalk.red.bold('FAIL'));
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
await authUser();
|
|
22
|
+
await new LocalWorkflowTemplateDeployer().deleteWorkflowTemplates(wtDeclaration);
|
|
23
|
+
}
|
|
24
|
+
export async function localDeployWorkflowTemplate() {
|
|
25
|
+
let wtDeclaration;
|
|
26
|
+
try {
|
|
27
|
+
wtDeclaration = loadTemplateConfig();
|
|
28
|
+
}
|
|
29
|
+
catch (e) {
|
|
30
|
+
console.log(`%s Workflow Deletion Failed. ${e}`, chalk.red.bold('FAIL'));
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
await authUser();
|
|
34
|
+
await new LocalWorkflowTemplateDeployer().deployWorkflows(wtDeclaration);
|
|
35
|
+
}
|
|
36
|
+
export async function listWorkflowTemplate() {
|
|
37
|
+
await authUser();
|
|
38
|
+
return await new WorkflowTemplateDeployer().listExistingWorkflowTemplates();
|
|
39
|
+
}
|
|
40
|
+
function loadTemplateConfig() {
|
|
41
|
+
const TARGET_DIR = process.cwd();
|
|
42
|
+
try {
|
|
43
|
+
const separator = getSeparatorByPlatform();
|
|
44
|
+
const doc = yaml.load(fs.readFileSync(TARGET_DIR + separator + 'workflow.yml', 'utf8'));
|
|
45
|
+
console.log(doc);
|
|
46
|
+
return doc;
|
|
47
|
+
}
|
|
48
|
+
catch (e) {
|
|
49
|
+
throw new Error(`ERROR PARSING YAML: ${e}`);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export declare class WorkflowTemplateDeployer {
|
|
2
|
-
deleteWorkflowTemplates(): Promise<void>;
|
|
3
|
-
listExistingWorkflowTemplates(): Promise<void>;
|
|
4
|
-
}
|
|
1
|
+
export declare class WorkflowTemplateDeployer {
|
|
2
|
+
deleteWorkflowTemplates(): Promise<void>;
|
|
3
|
+
listExistingWorkflowTemplates(): Promise<void>;
|
|
4
|
+
}
|
|
@@ -1,26 +1,26 @@
|
|
|
1
|
-
import chalk from 'chalk';
|
|
2
|
-
import inquirer from 'inquirer';
|
|
3
|
-
import { deleteWorkflowTemplate as apiDeleteWorkflowTemplate } from '../api/event-workflow-templates';
|
|
4
|
-
import { getExistingWorkflowTemplates } from '../api/event-workflow-templates';
|
|
5
|
-
export class WorkflowTemplateDeployer {
|
|
6
|
-
async deleteWorkflowTemplates() {
|
|
7
|
-
// FETCH ALL WORKFLOWS FROM THE API.
|
|
8
|
-
const existingWorkflows = await getExistingWorkflowTemplates();
|
|
9
|
-
const answers = await inquirer.prompt([{
|
|
10
|
-
type: 'checkbox',
|
|
11
|
-
name: 'wfTemplatesToDelete',
|
|
12
|
-
message: 'Which templates would you like to delete (one or more)?',
|
|
13
|
-
choices: existingWorkflows.map(x => { return { value: x.id, name: `(${x.createdOn}) ${x.name}` }; })
|
|
14
|
-
}]);
|
|
15
|
-
for (const idToDelete of answers.wfTemplatesToDelete) {
|
|
16
|
-
await apiDeleteWorkflowTemplate(idToDelete);
|
|
17
|
-
}
|
|
18
|
-
console.log('%s \tDeleted workflow templates!', chalk.green.bold('WORKFLOW TEMPLATES'));
|
|
19
|
-
}
|
|
20
|
-
async listExistingWorkflowTemplates() {
|
|
21
|
-
const templates = await getExistingWorkflowTemplates();
|
|
22
|
-
console.log('(Date Created) (active) workflow name');
|
|
23
|
-
console.log('------------------------');
|
|
24
|
-
console.log(chalk.green.bold(templates.map(x => `(${x.createdOn}) (${x.isActive ? 'active' : 'inactive'}) ${x.name} `).join('\n')));
|
|
25
|
-
}
|
|
26
|
-
}
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
import inquirer from 'inquirer';
|
|
3
|
+
import { deleteWorkflowTemplate as apiDeleteWorkflowTemplate } from '../api/event-workflow-templates';
|
|
4
|
+
import { getExistingWorkflowTemplates } from '../api/event-workflow-templates';
|
|
5
|
+
export class WorkflowTemplateDeployer {
|
|
6
|
+
async deleteWorkflowTemplates() {
|
|
7
|
+
// FETCH ALL WORKFLOWS FROM THE API.
|
|
8
|
+
const existingWorkflows = await getExistingWorkflowTemplates();
|
|
9
|
+
const answers = await inquirer.prompt([{
|
|
10
|
+
type: 'checkbox',
|
|
11
|
+
name: 'wfTemplatesToDelete',
|
|
12
|
+
message: 'Which templates would you like to delete (one or more)?',
|
|
13
|
+
choices: existingWorkflows.map(x => { return { value: x.id, name: `(${x.createdOn}) ${x.name}` }; })
|
|
14
|
+
}]);
|
|
15
|
+
for (const idToDelete of answers.wfTemplatesToDelete) {
|
|
16
|
+
await apiDeleteWorkflowTemplate(idToDelete);
|
|
17
|
+
}
|
|
18
|
+
console.log('%s \tDeleted workflow templates!', chalk.green.bold('WORKFLOW TEMPLATES'));
|
|
19
|
+
}
|
|
20
|
+
async listExistingWorkflowTemplates() {
|
|
21
|
+
const templates = await getExistingWorkflowTemplates();
|
|
22
|
+
console.log('(Date Created) (active) workflow name');
|
|
23
|
+
console.log('------------------------');
|
|
24
|
+
console.log(chalk.green.bold(templates.map(x => `(${x.createdOn}) (${x.isActive ? 'active' : 'inactive'}) ${x.name} `).join('\n')));
|
|
25
|
+
}
|
|
26
|
+
}
|
package/package.json
CHANGED
|
@@ -1,72 +1,72 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@contrail/cli",
|
|
3
|
-
"version": "1.0.
|
|
4
|
-
"description": "VibeIQ's Contrail Platform CLI.",
|
|
5
|
-
"main": "lib/index.js",
|
|
6
|
-
"bin": {
|
|
7
|
-
"@contrail/contrail-cli": "bin/init",
|
|
8
|
-
"contrail": "bin/init"
|
|
9
|
-
},
|
|
10
|
-
"publishConfig": {
|
|
11
|
-
"access": "public"
|
|
12
|
-
},
|
|
13
|
-
"keywords": [
|
|
14
|
-
"cli",
|
|
15
|
-
"contrail-cli"
|
|
16
|
-
],
|
|
17
|
-
"scripts": {
|
|
18
|
-
"build": "tsc",
|
|
19
|
-
"format": "prettier --write \"src/**/*.ts\" \"src/**/*.js\"",
|
|
20
|
-
"lint": "eslint . --fix",
|
|
21
|
-
"test": "jest --watch"
|
|
22
|
-
},
|
|
23
|
-
"author": "",
|
|
24
|
-
"license": "ISC",
|
|
25
|
-
"dependencies": {
|
|
26
|
-
"@contrail/sdk": "^1.1.52",
|
|
27
|
-
"@contrail/types": "^3.0.20",
|
|
28
|
-
"@contrail/util": "^1.0.17",
|
|
29
|
-
"amazon-cognito-identity-js": "^5.2.3",
|
|
30
|
-
"arg": "^4.0.1",
|
|
31
|
-
"aws-sdk": "^2.1044.0",
|
|
32
|
-
"chalk": "^4.0.0",
|
|
33
|
-
"command-line-usage": "^6.1.1",
|
|
34
|
-
"csvtojson": "^2.0.10",
|
|
35
|
-
"eslint-plugin-unused-imports": "^2.0.0",
|
|
36
|
-
"esm": "^3.2.25",
|
|
37
|
-
"execa": "^5.0.0",
|
|
38
|
-
"inquirer": "^8.2.0",
|
|
39
|
-
"js-yaml": "^4.1.0",
|
|
40
|
-
"json2csv": "^5.0.7",
|
|
41
|
-
"listr": "^0.14.3",
|
|
42
|
-
"lodash": "^4.17.21",
|
|
43
|
-
"ncp": "^2.0.0",
|
|
44
|
-
"pkg-install": "^1.0.0"
|
|
45
|
-
},
|
|
46
|
-
"devDependencies": {
|
|
47
|
-
"@types/jest": "^23.3.14",
|
|
48
|
-
"@types/lodash": "^4.14.178",
|
|
49
|
-
"@types/node": "^14.6.4",
|
|
50
|
-
"@typescript-eslint/eslint-plugin": "^5.32.0",
|
|
51
|
-
"@typescript-eslint/parser": "^5.32.0",
|
|
52
|
-
"eslint": "^8.21.0",
|
|
53
|
-
"jest": "^29.3.1",
|
|
54
|
-
"prettier": "^1.19.1",
|
|
55
|
-
"ts-jest": "^29.0.3",
|
|
56
|
-
"typescript": "^4.9.3"
|
|
57
|
-
},
|
|
58
|
-
"jest": {
|
|
59
|
-
"moduleFileExtensions": [
|
|
60
|
-
"js",
|
|
61
|
-
"json",
|
|
62
|
-
"ts"
|
|
63
|
-
],
|
|
64
|
-
"rootDir": "src",
|
|
65
|
-
"testRegex": ".spec.ts$",
|
|
66
|
-
"transform": {
|
|
67
|
-
"^.+\\.(t|j)s$": "ts-jest"
|
|
68
|
-
},
|
|
69
|
-
"coverageDirectory": "../coverage",
|
|
70
|
-
"testEnvironment": "node"
|
|
71
|
-
}
|
|
72
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "@contrail/cli",
|
|
3
|
+
"version": "1.0.69",
|
|
4
|
+
"description": "VibeIQ's Contrail Platform CLI.",
|
|
5
|
+
"main": "lib/index.js",
|
|
6
|
+
"bin": {
|
|
7
|
+
"@contrail/contrail-cli": "bin/init",
|
|
8
|
+
"contrail": "bin/init"
|
|
9
|
+
},
|
|
10
|
+
"publishConfig": {
|
|
11
|
+
"access": "public"
|
|
12
|
+
},
|
|
13
|
+
"keywords": [
|
|
14
|
+
"cli",
|
|
15
|
+
"contrail-cli"
|
|
16
|
+
],
|
|
17
|
+
"scripts": {
|
|
18
|
+
"build": "tsc",
|
|
19
|
+
"format": "prettier --write \"src/**/*.ts\" \"src/**/*.js\"",
|
|
20
|
+
"lint": "eslint . --fix",
|
|
21
|
+
"test": "jest --watch"
|
|
22
|
+
},
|
|
23
|
+
"author": "",
|
|
24
|
+
"license": "ISC",
|
|
25
|
+
"dependencies": {
|
|
26
|
+
"@contrail/sdk": "^1.1.52",
|
|
27
|
+
"@contrail/types": "^3.0.20",
|
|
28
|
+
"@contrail/util": "^1.0.17",
|
|
29
|
+
"amazon-cognito-identity-js": "^5.2.3",
|
|
30
|
+
"arg": "^4.0.1",
|
|
31
|
+
"aws-sdk": "^2.1044.0",
|
|
32
|
+
"chalk": "^4.0.0",
|
|
33
|
+
"command-line-usage": "^6.1.1",
|
|
34
|
+
"csvtojson": "^2.0.10",
|
|
35
|
+
"eslint-plugin-unused-imports": "^2.0.0",
|
|
36
|
+
"esm": "^3.2.25",
|
|
37
|
+
"execa": "^5.0.0",
|
|
38
|
+
"inquirer": "^8.2.0",
|
|
39
|
+
"js-yaml": "^4.1.0",
|
|
40
|
+
"json2csv": "^5.0.7",
|
|
41
|
+
"listr": "^0.14.3",
|
|
42
|
+
"lodash": "^4.17.21",
|
|
43
|
+
"ncp": "^2.0.0",
|
|
44
|
+
"pkg-install": "^1.0.0"
|
|
45
|
+
},
|
|
46
|
+
"devDependencies": {
|
|
47
|
+
"@types/jest": "^23.3.14",
|
|
48
|
+
"@types/lodash": "^4.14.178",
|
|
49
|
+
"@types/node": "^14.6.4",
|
|
50
|
+
"@typescript-eslint/eslint-plugin": "^5.32.0",
|
|
51
|
+
"@typescript-eslint/parser": "^5.32.0",
|
|
52
|
+
"eslint": "^8.21.0",
|
|
53
|
+
"jest": "^29.3.1",
|
|
54
|
+
"prettier": "^1.19.1",
|
|
55
|
+
"ts-jest": "^29.0.3",
|
|
56
|
+
"typescript": "^4.9.3"
|
|
57
|
+
},
|
|
58
|
+
"jest": {
|
|
59
|
+
"moduleFileExtensions": [
|
|
60
|
+
"js",
|
|
61
|
+
"json",
|
|
62
|
+
"ts"
|
|
63
|
+
],
|
|
64
|
+
"rootDir": "src",
|
|
65
|
+
"testRegex": ".spec.ts$",
|
|
66
|
+
"transform": {
|
|
67
|
+
"^.+\\.(t|j)s$": "ts-jest"
|
|
68
|
+
},
|
|
69
|
+
"coverageDirectory": "../coverage",
|
|
70
|
+
"testEnvironment": "node"
|
|
71
|
+
}
|
|
72
|
+
}
|
package/publish.bat
ADDED
package/publish.sh
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
rm -rf lib;
|
|
2
|
-
npm install;
|
|
3
|
-
npm run build;
|
|
4
|
-
npm version patch;
|
|
1
|
+
rm -rf lib;
|
|
2
|
+
npm install;
|
|
3
|
+
npm run build;
|
|
4
|
+
npm version patch;
|
|
5
5
|
npm publish;
|
package/src/api/apps.ts
CHANGED
|
@@ -1,97 +1,97 @@
|
|
|
1
|
-
import { Auth } from '../auth/auth';
|
|
2
|
-
import { Entities } from '@contrail/sdk';
|
|
3
|
-
import { App, AppOrg, AppVersion, WorkflowDefinition } from '../interfaces';
|
|
4
|
-
import { authUser } from '../auth/login';
|
|
5
|
-
|
|
6
|
-
export async function getAllAvailableApps(options: { orgId: string }): Promise<App[]> {
|
|
7
|
-
const apps: App[] = [];
|
|
8
|
-
apps.push(...await new Entities().get({
|
|
9
|
-
entityName: 'app',
|
|
10
|
-
criteria: {
|
|
11
|
-
orgId: options.orgId,
|
|
12
|
-
private: true,
|
|
13
|
-
},
|
|
14
|
-
}));
|
|
15
|
-
apps.push(...await new Entities().get({
|
|
16
|
-
entityName: 'app',
|
|
17
|
-
criteria: {
|
|
18
|
-
orgId: options.orgId,
|
|
19
|
-
private: false,
|
|
20
|
-
},
|
|
21
|
-
}));
|
|
22
|
-
|
|
23
|
-
return apps;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
export async function getWorkflowTemplateDefinitionsForApp(options: {appId: string}): Promise<WorkflowDefinition[]> {
|
|
27
|
-
return await new Entities().get({
|
|
28
|
-
entityName: 'event-workflow-template-definition',
|
|
29
|
-
criteria: {
|
|
30
|
-
ownerKey: `app:${options.appId}`
|
|
31
|
-
}
|
|
32
|
-
});
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
export async function getAppVersions(app): Promise<AppVersion[]> {
|
|
36
|
-
return await new Entities().get({
|
|
37
|
-
entityName: 'app-version',
|
|
38
|
-
criteria: {
|
|
39
|
-
appId: app.id
|
|
40
|
-
}
|
|
41
|
-
});
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
export async function upgradeAppVersion(appOrg, appVersionId): Promise<AppOrg> {
|
|
45
|
-
return await new Entities().update({
|
|
46
|
-
entityName: 'app-org',
|
|
47
|
-
id: appOrg.id,
|
|
48
|
-
object: {
|
|
49
|
-
appVersionId: appVersionId
|
|
50
|
-
}
|
|
51
|
-
});
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
export async function deleteAppOrg(appOrgId: string): Promise<AppOrg> {
|
|
55
|
-
return await new Entities().delete({
|
|
56
|
-
entityName: 'app-org',
|
|
57
|
-
id: appOrgId
|
|
58
|
-
});
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
export async function getInstalledApps(): Promise<AppOrg[]> {
|
|
62
|
-
return await new Entities().get({
|
|
63
|
-
entityName: 'app-org',
|
|
64
|
-
relations: ['app']
|
|
65
|
-
});
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
export async function installAppToOrg(app, configProperties): Promise<AppOrg> {
|
|
69
|
-
return await new Entities().create({
|
|
70
|
-
entityName: 'app-org',
|
|
71
|
-
object: {
|
|
72
|
-
appId: app.id,
|
|
73
|
-
appConfig: configProperties
|
|
74
|
-
}
|
|
75
|
-
});
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
export async function getAvailableApps(): Promise<App[]> {
|
|
79
|
-
const orgId = Auth.config.orgId;
|
|
80
|
-
const apps = [];
|
|
81
|
-
apps.push(...await new Entities().get({
|
|
82
|
-
entityName: 'app',
|
|
83
|
-
criteria: {
|
|
84
|
-
orgId,
|
|
85
|
-
private: true,
|
|
86
|
-
},
|
|
87
|
-
}));
|
|
88
|
-
apps.push(...await new Entities().get({
|
|
89
|
-
entityName: 'app',
|
|
90
|
-
criteria: {
|
|
91
|
-
orgId,
|
|
92
|
-
private: false,
|
|
93
|
-
},
|
|
94
|
-
}));
|
|
95
|
-
|
|
96
|
-
return apps;
|
|
1
|
+
import { Auth } from '../auth/auth';
|
|
2
|
+
import { Entities } from '@contrail/sdk';
|
|
3
|
+
import { App, AppOrg, AppVersion, WorkflowDefinition } from '../interfaces';
|
|
4
|
+
import { authUser } from '../auth/login';
|
|
5
|
+
|
|
6
|
+
export async function getAllAvailableApps(options: { orgId: string }): Promise<App[]> {
|
|
7
|
+
const apps: App[] = [];
|
|
8
|
+
apps.push(...await new Entities().get({
|
|
9
|
+
entityName: 'app',
|
|
10
|
+
criteria: {
|
|
11
|
+
orgId: options.orgId,
|
|
12
|
+
private: true,
|
|
13
|
+
},
|
|
14
|
+
}));
|
|
15
|
+
apps.push(...await new Entities().get({
|
|
16
|
+
entityName: 'app',
|
|
17
|
+
criteria: {
|
|
18
|
+
orgId: options.orgId,
|
|
19
|
+
private: false,
|
|
20
|
+
},
|
|
21
|
+
}));
|
|
22
|
+
|
|
23
|
+
return apps;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export async function getWorkflowTemplateDefinitionsForApp(options: {appId: string}): Promise<WorkflowDefinition[]> {
|
|
27
|
+
return await new Entities().get({
|
|
28
|
+
entityName: 'event-workflow-template-definition',
|
|
29
|
+
criteria: {
|
|
30
|
+
ownerKey: `app:${options.appId}`
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
export async function getAppVersions(app): Promise<AppVersion[]> {
|
|
36
|
+
return await new Entities().get({
|
|
37
|
+
entityName: 'app-version',
|
|
38
|
+
criteria: {
|
|
39
|
+
appId: app.id
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
export async function upgradeAppVersion(appOrg, appVersionId): Promise<AppOrg> {
|
|
45
|
+
return await new Entities().update({
|
|
46
|
+
entityName: 'app-org',
|
|
47
|
+
id: appOrg.id,
|
|
48
|
+
object: {
|
|
49
|
+
appVersionId: appVersionId
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
export async function deleteAppOrg(appOrgId: string): Promise<AppOrg> {
|
|
55
|
+
return await new Entities().delete({
|
|
56
|
+
entityName: 'app-org',
|
|
57
|
+
id: appOrgId
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
export async function getInstalledApps(): Promise<AppOrg[]> {
|
|
62
|
+
return await new Entities().get({
|
|
63
|
+
entityName: 'app-org',
|
|
64
|
+
relations: ['app']
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
export async function installAppToOrg(app, configProperties): Promise<AppOrg> {
|
|
69
|
+
return await new Entities().create({
|
|
70
|
+
entityName: 'app-org',
|
|
71
|
+
object: {
|
|
72
|
+
appId: app.id,
|
|
73
|
+
appConfig: configProperties
|
|
74
|
+
}
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
export async function getAvailableApps(): Promise<App[]> {
|
|
79
|
+
const orgId = Auth.config.orgId;
|
|
80
|
+
const apps = [];
|
|
81
|
+
apps.push(...await new Entities().get({
|
|
82
|
+
entityName: 'app',
|
|
83
|
+
criteria: {
|
|
84
|
+
orgId,
|
|
85
|
+
private: true,
|
|
86
|
+
},
|
|
87
|
+
}));
|
|
88
|
+
apps.push(...await new Entities().get({
|
|
89
|
+
entityName: 'app',
|
|
90
|
+
criteria: {
|
|
91
|
+
orgId,
|
|
92
|
+
private: false,
|
|
93
|
+
},
|
|
94
|
+
}));
|
|
95
|
+
|
|
96
|
+
return apps;
|
|
97
97
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { Entities } from '@contrail/sdk';
|
|
2
|
-
|
|
3
|
-
export async function getEventWorkflowActionDefinition(criteria: any) {
|
|
4
|
-
return await new Entities().get({
|
|
5
|
-
entityName: 'event-workflow-action-definition',
|
|
6
|
-
criteria
|
|
7
|
-
});
|
|
1
|
+
import { Entities } from '@contrail/sdk';
|
|
2
|
+
|
|
3
|
+
export async function getEventWorkflowActionDefinition(criteria: any) {
|
|
4
|
+
return await new Entities().get({
|
|
5
|
+
entityName: 'event-workflow-action-definition',
|
|
6
|
+
criteria
|
|
7
|
+
});
|
|
8
8
|
}
|
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
import { Entities } from '@contrail/sdk';
|
|
2
|
-
|
|
3
|
-
export async function createWorkflowTemplateDefinition(object: any) {
|
|
4
|
-
return await new Entities().create({
|
|
5
|
-
entityName: 'event-workflow-template-definition',
|
|
6
|
-
object: object,
|
|
7
|
-
});
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
export async function updateWorkflowTemplateDefinition(options: {id: string, updates: any}) {
|
|
11
|
-
return await new Entities().update({
|
|
12
|
-
entityName: 'event-workflow-template-definition',
|
|
13
|
-
id: options.id,
|
|
14
|
-
object: options.updates,
|
|
15
|
-
});
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
export async function deleteWorkflowTemplateDefinition(templateId: string) {
|
|
19
|
-
return await new Entities().delete({
|
|
20
|
-
entityName: 'event-workflow-template-definition',
|
|
21
|
-
id: templateId,
|
|
22
|
-
});
|
|
1
|
+
import { Entities } from '@contrail/sdk';
|
|
2
|
+
|
|
3
|
+
export async function createWorkflowTemplateDefinition(object: any) {
|
|
4
|
+
return await new Entities().create({
|
|
5
|
+
entityName: 'event-workflow-template-definition',
|
|
6
|
+
object: object,
|
|
7
|
+
});
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export async function updateWorkflowTemplateDefinition(options: {id: string, updates: any}) {
|
|
11
|
+
return await new Entities().update({
|
|
12
|
+
entityName: 'event-workflow-template-definition',
|
|
13
|
+
id: options.id,
|
|
14
|
+
object: options.updates,
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export async function deleteWorkflowTemplateDefinition(templateId: string) {
|
|
19
|
+
return await new Entities().delete({
|
|
20
|
+
entityName: 'event-workflow-template-definition',
|
|
21
|
+
id: templateId,
|
|
22
|
+
});
|
|
23
23
|
}
|
|
@@ -1,29 +1,29 @@
|
|
|
1
|
-
import { Entities } from '@contrail/sdk';
|
|
2
|
-
|
|
3
|
-
export async function getExistingWorkflowTemplates() {
|
|
4
|
-
return await new Entities().get({
|
|
5
|
-
entityName: 'event-workflow-template'
|
|
6
|
-
});
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
export async function createWorkflowTemplate(object) {
|
|
10
|
-
return await new Entities().create({
|
|
11
|
-
entityName: 'event-workflow-template',
|
|
12
|
-
object
|
|
13
|
-
});
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
export async function deleteWorkflowTemplate(id: string) {
|
|
17
|
-
return await new Entities().delete({
|
|
18
|
-
entityName: 'event-workflow-template',
|
|
19
|
-
id,
|
|
20
|
-
});
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
export async function updateWorkflowTemplate(options: { id: string, updates: any }) {
|
|
24
|
-
return await new Entities().update({
|
|
25
|
-
entityName: 'event-workflow-template',
|
|
26
|
-
id: options.id,
|
|
27
|
-
object: options.updates,
|
|
28
|
-
});
|
|
1
|
+
import { Entities } from '@contrail/sdk';
|
|
2
|
+
|
|
3
|
+
export async function getExistingWorkflowTemplates() {
|
|
4
|
+
return await new Entities().get({
|
|
5
|
+
entityName: 'event-workflow-template'
|
|
6
|
+
});
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export async function createWorkflowTemplate(object) {
|
|
10
|
+
return await new Entities().create({
|
|
11
|
+
entityName: 'event-workflow-template',
|
|
12
|
+
object
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export async function deleteWorkflowTemplate(id: string) {
|
|
17
|
+
return await new Entities().delete({
|
|
18
|
+
entityName: 'event-workflow-template',
|
|
19
|
+
id,
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export async function updateWorkflowTemplate(options: { id: string, updates: any }) {
|
|
24
|
+
return await new Entities().update({
|
|
25
|
+
entityName: 'event-workflow-template',
|
|
26
|
+
id: options.id,
|
|
27
|
+
object: options.updates,
|
|
28
|
+
});
|
|
29
29
|
}
|