@sasjs/cli 3.6.2 → 3.6.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +0 -3
- package/build/cli.js +4 -4
- package/build/cli.spec.js +6 -6
- package/build/commands/add/addCommand.js +2 -2
- package/build/commands/add/addCredential.js +27 -27
- package/build/commands/add/addTarget.js +10 -10
- package/build/commands/add/internal/input.js +30 -30
- package/build/commands/add/internal/saveConfig.js +2 -2
- package/build/commands/add/spec/addCommand.spec.js +24 -20
- package/build/commands/add/spec/addCredential.spec.js +14 -14
- package/build/commands/add/spec/addTarget.spec.js +22 -22
- package/build/commands/build/build.js +81 -77
- package/build/commands/build/buildCommand.js +3 -3
- package/build/commands/build/compileBuildCommand.js +4 -4
- package/build/commands/build/internal/config.js +8 -8
- package/build/commands/build/internal/getLaunchPageCode.js +2 -2
- package/build/commands/build/spec/build.spec.js +10 -10
- package/build/commands/build/spec/buildCommand.spec.js +16 -12
- package/build/commands/build/spec/cb.spec.server.js +18 -18
- package/build/commands/build/spec/compileBuildCommand.spec.js +17 -13
- package/build/commands/compile/compile.js +61 -61
- package/build/commands/compile/compileCommand.js +10 -10
- package/build/commands/compile/compileSingleFile.js +17 -17
- package/build/commands/compile/internal/checkCompileStatus.js +11 -11
- package/build/commands/compile/internal/compareFolders.js +11 -11
- package/build/commands/compile/internal/compileJobFile.js +3 -3
- package/build/commands/compile/internal/compileServiceFile.js +14 -14
- package/build/commands/compile/internal/compileTestFile.js +41 -37
- package/build/commands/compile/internal/getAllJobFolders.js +13 -9
- package/build/commands/compile/internal/getAllServiceFolders.js +13 -9
- package/build/commands/compile/internal/getServerType.js +1 -1
- package/build/commands/compile/internal/identifySasFile.js +2 -2
- package/build/commands/compile/internal/loadDependencies.js +5 -5
- package/build/commands/compile/internal/spec/compileTestFile.spec.js +40 -40
- package/build/commands/compile/spec/compareFolders.spec.js +27 -27
- package/build/commands/compile/spec/compile.spec.js +93 -93
- package/build/commands/compile/spec/compileCommand.spec.js +37 -33
- package/build/commands/compile/spec/compileJobFile.spec.js +11 -11
- package/build/commands/compile/spec/compileServiceFile.spec.js +11 -11
- package/build/commands/compile/spec/copyFilesToBuildFolder.spec.js +7 -7
- package/build/commands/compile/spec/loadDependencies.spec.js +30 -30
- package/build/commands/context/contextCommand.js +16 -16
- package/build/commands/context/create.js +1 -1
- package/build/commands/context/delete.js +2 -2
- package/build/commands/context/edit.js +1 -1
- package/build/commands/context/export.js +5 -5
- package/build/commands/context/internal/validateConfigPath.js +1 -1
- package/build/commands/context/list.js +4 -4
- package/build/commands/context/spec/contextCommand.spec.js +80 -76
- package/build/commands/context/spec/create.spec.js +3 -3
- package/build/commands/context/spec/delete.spec.js +3 -3
- package/build/commands/context/spec/edit.spec.js +3 -3
- package/build/commands/context/spec/export.spec.js +8 -8
- package/build/commands/context/spec/list.spec.js +5 -5
- package/build/commands/create/create.js +12 -12
- package/build/commands/create/createCommand.js +2 -2
- package/build/commands/create/internal/createReadme.js +2 -2
- package/build/commands/create/spec/create.spec.js +39 -39
- package/build/commands/create/spec/createCommand.spec.js +14 -10
- package/build/commands/db/db.js +22 -22
- package/build/commands/db/dbCommand.js +1 -1
- package/build/commands/db/spec/db.spec.js +8 -8
- package/build/commands/db/spec/dbCommand.spec.js +11 -7
- package/build/commands/deploy/compileBuildDeployCommand.js +6 -6
- package/build/commands/deploy/deploy.d.ts +7 -0
- package/build/commands/deploy/deploy.js +131 -81
- package/build/commands/deploy/deployCommand.js +2 -2
- package/build/commands/deploy/internal/getDeployScripts.js +14 -10
- package/build/commands/deploy/spec/cbd.spec.js +15 -15
- package/build/commands/deploy/spec/cbd.spec.server.js +40 -40
- package/build/commands/deploy/spec/compileBuildDeployCommand.spec.js +18 -14
- package/build/commands/deploy/spec/deployCommand.spec.js +15 -11
- package/build/commands/deploy/spec/getDeployScripts.spec.js +8 -8
- package/build/commands/deploy/spec/utils.js +17 -17
- package/build/commands/docs/docsCommand.js +7 -7
- package/build/commands/docs/generateDocs.js +33 -29
- package/build/commands/docs/generateDot.js +12 -8
- package/build/commands/docs/initDocs.js +1 -1
- package/build/commands/docs/internal/createDotFiles.js +6 -6
- package/build/commands/docs/internal/getDotFileContent.js +17 -17
- package/build/commands/docs/internal/getFileInputs.js +1 -1
- package/build/commands/docs/internal/getFileOutputs.js +1 -1
- package/build/commands/docs/internal/getFoldersForDocs.js +4 -4
- package/build/commands/docs/internal/populateNodeDictionary.js +1 -1
- package/build/commands/docs/spec/docsCommand.spec.js +25 -21
- package/build/commands/docs/spec/generateDocs.spec.js +60 -60
- package/build/commands/docs/spec/generateDot.spec.js +23 -23
- package/build/commands/docs/spec/getDocConfig.spec.js +2 -2
- package/build/commands/docs/spec/initDocs.spec.js +7 -7
- package/build/commands/flow/execute.js +8 -8
- package/build/commands/flow/flowCommand.js +5 -5
- package/build/commands/flow/internal/checkPredecessorDeadlock.js +11 -7
- package/build/commands/flow/internal/executeFlow.js +23 -23
- package/build/commands/flow/internal/failAllSuccessors.js +1 -1
- package/build/commands/flow/internal/generateFileName.js +2 -2
- package/build/commands/flow/internal/normalizeFilePath.js +1 -1
- package/build/commands/flow/internal/parseJobDetails.js +3 -3
- package/build/commands/flow/internal/printError.js +1 -1
- package/build/commands/flow/internal/saveLog.js +8 -8
- package/build/commands/flow/internal/saveToCsv.js +2 -2
- package/build/commands/flow/internal/spec/allFlowsCompleted.spec.js +4 -4
- package/build/commands/flow/internal/spec/checkPredecessorDeadlock.spec.js +4 -4
- package/build/commands/flow/internal/spec/executeFlow.spec.js +10 -10
- package/build/commands/flow/internal/spec/failAllSuccessors.spec.js +1 -1
- package/build/commands/flow/internal/spec/saveToCsv.spec.js +16 -16
- package/build/commands/flow/internal/spec/validateParams.spec.js +33 -33
- package/build/commands/flow/internal/validateParams.js +17 -17
- package/build/commands/flow/spec/flow.spec.js +1 -1
- package/build/commands/flow/spec/flow.spec.server.js +60 -60
- package/build/commands/flow/spec/flowCommand.spec.js +16 -12
- package/build/commands/folder/create.js +2 -2
- package/build/commands/folder/delete.js +2 -2
- package/build/commands/folder/folderCommand.js +11 -11
- package/build/commands/folder/move.js +2 -2
- package/build/commands/folder/spec/folder.spec.server.js +35 -35
- package/build/commands/folder/spec/folderCommand.spec.js +23 -19
- package/build/commands/help/help.js +50 -48
- package/build/commands/help/helpCommand.js +1 -1
- package/build/commands/help/spec/help.spec.js +8 -8
- package/build/commands/help/spec/helpCommand.spec.js +11 -7
- package/build/commands/init/init.js +7 -7
- package/build/commands/init/initCommand.js +1 -1
- package/build/commands/init/spec/init.spec.server.js +17 -17
- package/build/commands/init/spec/initCommand.spec.js +11 -7
- package/build/commands/job/internal/execute/sasjs.js +1 -1
- package/build/commands/job/internal/execute/viya.js +35 -35
- package/build/commands/job/internal/utils.js +6 -6
- package/build/commands/job/jobCommand.js +6 -6
- package/build/commands/job/spec/execute.spec.js +6 -6
- package/build/commands/job/spec/getContextName.spec.js +2 -2
- package/build/commands/job/spec/job.spec.server.js +53 -53
- package/build/commands/job/spec/jobCommand.spec.js +17 -13
- package/build/commands/lint/initLint.js +2 -2
- package/build/commands/lint/lintCommand.js +10 -10
- package/build/commands/lint/processLint.js +5 -5
- package/build/commands/lint/spec/lintCommand.spec.js +19 -15
- package/build/commands/request/request.js +16 -16
- package/build/commands/request/requestCommand.js +5 -5
- package/build/commands/request/spec/request.spec.server.js +71 -71
- package/build/commands/request/spec/requestCommand.spec.js +17 -13
- package/build/commands/run/run.js +23 -23
- package/build/commands/run/runCommand.js +2 -2
- package/build/commands/run/spec/run.spec.server.js +51 -51
- package/build/commands/run/spec/runCommand.spec.js +10 -6
- package/build/commands/servicepack/deploy.js +6 -6
- package/build/commands/servicepack/servicePackCommand.js +3 -3
- package/build/commands/servicepack/spec/servicepack.spec.server.js +6 -6
- package/build/commands/servicepack/spec/servicepackCommand.spec.js +10 -6
- package/build/commands/shared/createConfigFile.js +2 -2
- package/build/commands/shared/createFileStructure.js +6 -6
- package/build/commands/shared/createLintConfigFile.js +1 -1
- package/build/commands/shared/deployToSasViyaWithServicePack.js +4 -4
- package/build/commands/shared/fetchLogFileContent.js +10 -6
- package/build/commands/testing/internal/saveOutput.js +38 -34
- package/build/commands/testing/spec/testCommand.spec.js +17 -13
- package/build/commands/testing/spec/testing.spec.server.js +38 -38
- package/build/commands/testing/test.js +45 -41
- package/build/commands/testing/testCommand.js +2 -2
- package/build/commands/version/spec/version.spec.js +1 -1
- package/build/commands/version/spec/versionCommand.spec.js +11 -7
- package/build/commands/version/version.js +3 -3
- package/build/commands/version/versionCommand.js +2 -2
- package/build/commands/web/internal/createAssetServices.js +28 -24
- package/build/commands/web/internal/getWebServiceContent.js +6 -6
- package/build/commands/web/internal/sasjsout.d.ts +1 -1
- package/build/commands/web/internal/sasjsout.js +1 -1
- package/build/commands/web/internal/spec/updateLinkTag.spec.js +2 -2
- package/build/commands/web/internal/spec/updateScriptTag.spec.js +10 -10
- package/build/commands/web/internal/updateAllTags.js +19 -15
- package/build/commands/web/internal/updateLinkTag.js +2 -2
- package/build/commands/web/internal/updateScriptTag.js +6 -6
- package/build/commands/web/spec/web.spec.js +23 -23
- package/build/commands/web/spec/webCommand.spec.js +16 -12
- package/build/commands/web/web.js +25 -25
- package/build/commands/web/webCommand.js +3 -3
- package/build/types/command/commandBase.js +19 -15
- package/build/types/command/parse.js +1 -1
- package/build/types/command/spec/commandBase.spec.js +16 -12
- package/build/types/command/targetCommand.js +4 -4
- package/build/types/command/unalias.js +9 -5
- package/build/utils/auth.js +7 -7
- package/build/utils/config.js +56 -49
- package/build/utils/displayResult.js +4 -4
- package/build/utils/file.js +11 -11
- package/build/utils/fileStructures/builtFiles.js +2 -2
- package/build/utils/fileStructures/builtFilesCustom1.js +2 -2
- package/build/utils/getLogFilePath.js +1 -1
- package/build/utils/loadEnvVariables.js +3 -3
- package/build/utils/prefixAppLoc.js +1 -1
- package/build/utils/saveLog.js +7 -7
- package/build/utils/setConstants.js +4 -4
- package/build/utils/setProjectDir.js +2 -2
- package/build/utils/spec/config.spec.js +80 -80
- package/build/utils/spec/displayResult.spec.js +7 -7
- package/build/utils/spec/file.spec.js +15 -15
- package/build/utils/spec/removeComments.spec.js +11 -11
- package/build/utils/spec/setConstants.spec.js +3 -3
- package/build/utils/spec/utils.spec.js +55 -55
- package/build/utils/test.js +59 -59
- package/build/utils/utils.js +47 -43
- package/package.json +11 -11
|
@@ -58,20 +58,20 @@ var generateDot_1 = require("../generateDot");
|
|
|
58
58
|
var utils_2 = require("../../../utils");
|
|
59
59
|
var types_1 = require("../../../types");
|
|
60
60
|
describe('sasjs doc lineage', function () {
|
|
61
|
-
var appName = "test-app-doc-"
|
|
61
|
+
var appName = "test-app-doc-".concat((0, utils_1.generateTimestamp)());
|
|
62
62
|
var docOutputDefault = path_1.default.join(__dirname, appName, 'sasjsbuild', 'docs');
|
|
63
63
|
var defaultTarget;
|
|
64
64
|
var defaultConfig;
|
|
65
65
|
beforeAll(function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
66
66
|
return __generator(this, function (_a) {
|
|
67
67
|
switch (_a.label) {
|
|
68
|
-
case 0: return [4 /*yield*/, test_1.createTestApp(__dirname, appName)];
|
|
68
|
+
case 0: return [4 /*yield*/, (0, test_1.createTestApp)(__dirname, appName)];
|
|
69
69
|
case 1:
|
|
70
70
|
_a.sent();
|
|
71
|
-
return [4 /*yield*/, utils_2.findTargetInConfiguration('viya', types_1.TargetScope.Local)];
|
|
71
|
+
return [4 /*yield*/, (0, utils_2.findTargetInConfiguration)('viya', types_1.TargetScope.Local)];
|
|
72
72
|
case 2:
|
|
73
73
|
(defaultTarget = (_a.sent()).target);
|
|
74
|
-
return [4 /*yield*/, utils_2.getLocalConfig()];
|
|
74
|
+
return [4 /*yield*/, (0, utils_2.getLocalConfig)()];
|
|
75
75
|
case 3:
|
|
76
76
|
defaultConfig = _a.sent();
|
|
77
77
|
return [2 /*return*/];
|
|
@@ -81,7 +81,7 @@ describe('sasjs doc lineage', function () {
|
|
|
81
81
|
afterEach(function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
82
82
|
return __generator(this, function (_a) {
|
|
83
83
|
switch (_a.label) {
|
|
84
|
-
case 0: return [4 /*yield*/, utils_1.deleteFolder(docOutputDefault)];
|
|
84
|
+
case 0: return [4 /*yield*/, (0, utils_1.deleteFolder)(docOutputDefault)];
|
|
85
85
|
case 1:
|
|
86
86
|
_a.sent();
|
|
87
87
|
return [2 /*return*/];
|
|
@@ -91,7 +91,7 @@ describe('sasjs doc lineage', function () {
|
|
|
91
91
|
afterAll(function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
92
92
|
return __generator(this, function (_a) {
|
|
93
93
|
switch (_a.label) {
|
|
94
|
-
case 0: return [4 /*yield*/, test_1.removeTestApp(__dirname, appName)];
|
|
94
|
+
case 0: return [4 /*yield*/, (0, test_1.removeTestApp)(__dirname, appName)];
|
|
95
95
|
case 1:
|
|
96
96
|
_a.sent();
|
|
97
97
|
return [2 /*return*/];
|
|
@@ -101,12 +101,12 @@ describe('sasjs doc lineage', function () {
|
|
|
101
101
|
it("should generate dot-files", function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
102
102
|
return __generator(this, function (_a) {
|
|
103
103
|
switch (_a.label) {
|
|
104
|
-
case 0: return [4 /*yield*/, expect(generateDot_1.generateDot(defaultTarget, defaultConfig)).resolves.toEqual({
|
|
104
|
+
case 0: return [4 /*yield*/, expect((0, generateDot_1.generateDot)(defaultTarget, defaultConfig)).resolves.toEqual({
|
|
105
105
|
outDirectory: docOutputDefault
|
|
106
106
|
})];
|
|
107
107
|
case 1:
|
|
108
108
|
_a.sent();
|
|
109
|
-
return [4 /*yield*/, test_1.verifyDotFiles(docOutputDefault)];
|
|
109
|
+
return [4 /*yield*/, (0, test_1.verifyDotFiles)(docOutputDefault)];
|
|
110
110
|
case 2:
|
|
111
111
|
_a.sent();
|
|
112
112
|
return [2 /*return*/];
|
|
@@ -118,13 +118,13 @@ describe('sasjs doc lineage', function () {
|
|
|
118
118
|
return __generator(this, function (_a) {
|
|
119
119
|
switch (_a.label) {
|
|
120
120
|
case 0:
|
|
121
|
-
docOutputProvided = path_1.default.join(__dirname, appName, "my-docs-"
|
|
122
|
-
return [4 /*yield*/, expect(generateDot_1.generateDot(defaultTarget, defaultConfig, docOutputProvided)).resolves.toEqual({
|
|
121
|
+
docOutputProvided = path_1.default.join(__dirname, appName, "my-docs-".concat((0, utils_1.generateTimestamp)()));
|
|
122
|
+
return [4 /*yield*/, expect((0, generateDot_1.generateDot)(defaultTarget, defaultConfig, docOutputProvided)).resolves.toEqual({
|
|
123
123
|
outDirectory: docOutputProvided
|
|
124
124
|
})];
|
|
125
125
|
case 1:
|
|
126
126
|
_a.sent();
|
|
127
|
-
return [4 /*yield*/, test_1.verifyDotFiles(docOutputProvided)];
|
|
127
|
+
return [4 /*yield*/, (0, test_1.verifyDotFiles)(docOutputProvided)];
|
|
128
128
|
case 2:
|
|
129
129
|
_a.sent();
|
|
130
130
|
return [2 /*return*/];
|
|
@@ -136,14 +136,14 @@ describe('sasjs doc lineage', function () {
|
|
|
136
136
|
return __generator(this, function (_a) {
|
|
137
137
|
switch (_a.label) {
|
|
138
138
|
case 0:
|
|
139
|
-
docOutputProvided = path_1.default.join(__dirname, appName, "xyz-"
|
|
139
|
+
docOutputProvided = path_1.default.join(__dirname, appName, "xyz-".concat((0, utils_1.generateTimestamp)()));
|
|
140
140
|
target = new utils_1.Target(__assign(__assign({}, defaultTarget.toJson()), { docConfig: { outDirectory: docOutputProvided } }));
|
|
141
|
-
return [4 /*yield*/, expect(generateDot_1.generateDot(target, defaultConfig)).resolves.toEqual({
|
|
141
|
+
return [4 /*yield*/, expect((0, generateDot_1.generateDot)(target, defaultConfig)).resolves.toEqual({
|
|
142
142
|
outDirectory: docOutputProvided
|
|
143
143
|
})];
|
|
144
144
|
case 1:
|
|
145
145
|
_a.sent();
|
|
146
|
-
return [4 /*yield*/, test_1.verifyDotFiles(docOutputProvided)];
|
|
146
|
+
return [4 /*yield*/, (0, test_1.verifyDotFiles)(docOutputProvided)];
|
|
147
147
|
case 2:
|
|
148
148
|
_a.sent();
|
|
149
149
|
return [2 /*return*/];
|
|
@@ -156,12 +156,12 @@ describe('sasjs doc lineage', function () {
|
|
|
156
156
|
switch (_a.label) {
|
|
157
157
|
case 0:
|
|
158
158
|
target = new utils_1.Target(__assign(__assign({}, defaultTarget.toJson()), { docConfig: { outDirectory: '' } }));
|
|
159
|
-
return [4 /*yield*/, expect(generateDot_1.generateDot(target, defaultConfig)).resolves.toEqual({
|
|
159
|
+
return [4 /*yield*/, expect((0, generateDot_1.generateDot)(target, defaultConfig)).resolves.toEqual({
|
|
160
160
|
outDirectory: docOutputDefault
|
|
161
161
|
})];
|
|
162
162
|
case 1:
|
|
163
163
|
_a.sent();
|
|
164
|
-
return [4 /*yield*/, test_1.verifyDotFiles(docOutputDefault)];
|
|
164
|
+
return [4 /*yield*/, (0, test_1.verifyDotFiles)(docOutputDefault)];
|
|
165
165
|
case 2:
|
|
166
166
|
_a.sent();
|
|
167
167
|
return [2 /*return*/];
|
|
@@ -176,12 +176,12 @@ describe('sasjs doc lineage', function () {
|
|
|
176
176
|
target = new utils_1.Target(__assign(__assign({}, defaultTarget.toJson()), { jobConfig: {
|
|
177
177
|
jobFolders: ['../testJobs']
|
|
178
178
|
} }));
|
|
179
|
-
return [4 /*yield*/, expect(generateDot_1.generateDot(target, defaultConfig)).resolves.toEqual({
|
|
179
|
+
return [4 /*yield*/, expect((0, generateDot_1.generateDot)(target, defaultConfig)).resolves.toEqual({
|
|
180
180
|
outDirectory: docOutputDefault
|
|
181
181
|
})];
|
|
182
182
|
case 1:
|
|
183
183
|
_a.sent();
|
|
184
|
-
return [4 /*yield*/, test_1.verifyDotFiles(docOutputDefault)];
|
|
184
|
+
return [4 /*yield*/, (0, test_1.verifyDotFiles)(docOutputDefault)];
|
|
185
185
|
case 2:
|
|
186
186
|
_a.sent();
|
|
187
187
|
return [4 /*yield*/, verifyCustomDotFiles(docOutputDefault)];
|
|
@@ -199,12 +199,12 @@ describe('sasjs doc lineage', function () {
|
|
|
199
199
|
target = new utils_1.Target(__assign(__assign({}, defaultTarget.toJson()), { jobConfig: {
|
|
200
200
|
jobFolders: ['../testJobHavingDoubleQoutes']
|
|
201
201
|
} }));
|
|
202
|
-
return [4 /*yield*/, expect(generateDot_1.generateDot(target, defaultConfig)).resolves.toEqual({
|
|
202
|
+
return [4 /*yield*/, expect((0, generateDot_1.generateDot)(target, defaultConfig)).resolves.toEqual({
|
|
203
203
|
outDirectory: docOutputDefault
|
|
204
204
|
})];
|
|
205
205
|
case 1:
|
|
206
206
|
_a.sent();
|
|
207
|
-
return [4 /*yield*/, test_1.verifyDotFiles(docOutputDefault)];
|
|
207
|
+
return [4 /*yield*/, (0, test_1.verifyDotFiles)(docOutputDefault)];
|
|
208
208
|
case 2:
|
|
209
209
|
_a.sent();
|
|
210
210
|
return [2 /*return*/];
|
|
@@ -219,12 +219,12 @@ describe('sasjs doc lineage', function () {
|
|
|
219
219
|
target = new utils_1.Target(__assign(__assign({}, defaultTarget.toJson()), { jobConfig: {
|
|
220
220
|
jobFolders: ['../testJobHavingBackSlashes']
|
|
221
221
|
} }));
|
|
222
|
-
return [4 /*yield*/, expect(generateDot_1.generateDot(target, defaultConfig)).resolves.toEqual({
|
|
222
|
+
return [4 /*yield*/, expect((0, generateDot_1.generateDot)(target, defaultConfig)).resolves.toEqual({
|
|
223
223
|
outDirectory: docOutputDefault
|
|
224
224
|
})];
|
|
225
225
|
case 1:
|
|
226
226
|
_a.sent();
|
|
227
|
-
return [4 /*yield*/, test_1.verifyDotFiles(docOutputDefault)];
|
|
227
|
+
return [4 /*yield*/, (0, test_1.verifyDotFiles)(docOutputDefault)];
|
|
228
228
|
case 2:
|
|
229
229
|
_a.sent();
|
|
230
230
|
return [2 /*return*/];
|
|
@@ -238,7 +238,7 @@ var verifyCustomDotFiles = function (docsFolder) { return __awaiter(void 0, void
|
|
|
238
238
|
switch (_d.label) {
|
|
239
239
|
case 0:
|
|
240
240
|
dotCodeFile = path_1.default.join(docsFolder, 'data_lineage.dot');
|
|
241
|
-
return [4 /*yield*/, utils_1.readFile(dotCodeFile)];
|
|
241
|
+
return [4 /*yield*/, (0, utils_1.readFile)(dotCodeFile)];
|
|
242
242
|
case 1:
|
|
243
243
|
dotFileContent = _d.sent();
|
|
244
244
|
_c = (_b = JSON).parse;
|
|
@@ -16,12 +16,12 @@ describe('getDocConfig', function () {
|
|
|
16
16
|
var target = {
|
|
17
17
|
docConfig: { doxyContent: { path: '//server1/unc/path' } }
|
|
18
18
|
};
|
|
19
|
-
expect(function () { return getDocConfig_1.getDocConfig(target); }).toThrowError(UNCErrorMessage);
|
|
19
|
+
expect(function () { return (0, getDocConfig_1.getDocConfig)(target); }).toThrowError(UNCErrorMessage);
|
|
20
20
|
});
|
|
21
21
|
it('should throw for having UNC path picked up from config', function () {
|
|
22
22
|
var config = {
|
|
23
23
|
docConfig: { doxyContent: { path: '//server1/unc/path' } }
|
|
24
24
|
};
|
|
25
|
-
expect(function () { return getDocConfig_1.getDocConfig(undefined, config); }).toThrowError(UNCErrorMessage);
|
|
25
|
+
expect(function () { return (0, getDocConfig_1.getDocConfig)(undefined, config); }).toThrowError(UNCErrorMessage);
|
|
26
26
|
});
|
|
27
27
|
});
|
|
@@ -48,7 +48,7 @@ describe('sasjs doc', function () {
|
|
|
48
48
|
afterEach(function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
49
49
|
return __generator(this, function (_a) {
|
|
50
50
|
switch (_a.label) {
|
|
51
|
-
case 0: return [4 /*yield*/, test_1.removeTestApp(__dirname, appName)];
|
|
51
|
+
case 0: return [4 /*yield*/, (0, test_1.removeTestApp)(__dirname, appName)];
|
|
52
52
|
case 1:
|
|
53
53
|
_a.sent();
|
|
54
54
|
return [2 /*return*/];
|
|
@@ -60,21 +60,21 @@ describe('sasjs doc', function () {
|
|
|
60
60
|
return __generator(this, function (_a) {
|
|
61
61
|
switch (_a.label) {
|
|
62
62
|
case 0:
|
|
63
|
-
appName = "test-app-doc-"
|
|
63
|
+
appName = "test-app-doc-".concat((0, utils_1.generateTimestamp)());
|
|
64
64
|
doxypath = path_1.default.join(__dirname, appName, 'sasjs', 'doxy');
|
|
65
|
-
return [4 /*yield*/, test_1.createTestApp(__dirname, appName)];
|
|
65
|
+
return [4 /*yield*/, (0, test_1.createTestApp)(__dirname, appName)];
|
|
66
66
|
case 1:
|
|
67
67
|
_a.sent();
|
|
68
|
-
return [4 /*yield*/, utils_1.deleteFolder(doxypath)];
|
|
68
|
+
return [4 /*yield*/, (0, utils_1.deleteFolder)(doxypath)];
|
|
69
69
|
case 2:
|
|
70
70
|
_a.sent();
|
|
71
|
-
return [4 /*yield*/, expect(utils_1.folderExists(doxypath)).resolves.toEqual(false)];
|
|
71
|
+
return [4 /*yield*/, expect((0, utils_1.folderExists)(doxypath)).resolves.toEqual(false)];
|
|
72
72
|
case 3:
|
|
73
73
|
_a.sent();
|
|
74
|
-
return [4 /*yield*/, expect(initDocs_1.initDocs()).resolves.not.toThrow()];
|
|
74
|
+
return [4 /*yield*/, expect((0, initDocs_1.initDocs)()).resolves.not.toThrow()];
|
|
75
75
|
case 4:
|
|
76
76
|
_a.sent();
|
|
77
|
-
return [4 /*yield*/, expect(utils_1.folderExists(doxypath)).resolves.toEqual(true)];
|
|
77
|
+
return [4 /*yield*/, expect((0, utils_1.folderExists)(doxypath)).resolves.toEqual(true)];
|
|
78
78
|
case 5:
|
|
79
79
|
_a.sent();
|
|
80
80
|
return [2 /*return*/];
|
|
@@ -65,12 +65,12 @@ function execute(target, sasjs, authConfig, source, logFolder, csvFile, streamLo
|
|
|
65
65
|
var _e;
|
|
66
66
|
return __generator(this, function (_f) {
|
|
67
67
|
switch (_f.label) {
|
|
68
|
-
case 0: return [4 /*yield*/, internal_1.validateParams(target, source, csvFile, logFolder)];
|
|
68
|
+
case 0: return [4 /*yield*/, (0, internal_1.validateParams)(target, source, csvFile, logFolder)];
|
|
69
69
|
case 1:
|
|
70
70
|
_a = _f.sent(), terminate = _a.terminate, message = _a.message, flows = _a.flows, csvFileRealPath = _a.csvFile, logFolderRealPath = _a.logFolder;
|
|
71
71
|
if (terminate)
|
|
72
72
|
return [2 /*return*/, reject(message)];
|
|
73
|
-
_b = internal_1.checkPredecessorDeadlock(flows), predecessorDeadlock = _b.present, deadlockChain = _b.chain;
|
|
73
|
+
_b = (0, internal_1.checkPredecessorDeadlock)(flows), predecessorDeadlock = _b.present, deadlockChain = _b.chain;
|
|
74
74
|
if (predecessorDeadlock)
|
|
75
75
|
return [2 /*return*/, reject('Circular dependency found in flows, cannot proceed\n- ' +
|
|
76
76
|
deadlockChain.join(' -> '))];
|
|
@@ -80,7 +80,7 @@ function execute(target, sasjs, authConfig, source, logFolder, csvFile, streamLo
|
|
|
80
80
|
streamLog: streamLog,
|
|
81
81
|
logFolderPath: logFolderRealPath
|
|
82
82
|
};
|
|
83
|
-
(_e = process.logger) === null || _e === void 0 ? void 0 : _e.info("Executing flow for '"
|
|
83
|
+
(_e = process.logger) === null || _e === void 0 ? void 0 : _e.info("Executing flow for '".concat(target.name, "' target with app location '").concat(target.appLoc, "':"));
|
|
84
84
|
preExecuteFlow = function (flowName) { return __awaiter(_this, void 0, void 0, function () {
|
|
85
85
|
var flow, predecessors, predecessors_1, predecessors_1_1, predecessorName, e_1_1, _a, jobStatus, flowStatus, _b, completed, completedWithAllSuccess;
|
|
86
86
|
var e_1, _c;
|
|
@@ -104,11 +104,11 @@ function execute(target, sasjs, authConfig, source, logFolder, csvFile, streamLo
|
|
|
104
104
|
if (!!predecessors_1_1.done) return [3 /*break*/, 7];
|
|
105
105
|
predecessorName = predecessors_1_1.value;
|
|
106
106
|
if (!!Object.keys(flows).includes(predecessorName)) return [3 /*break*/, 3];
|
|
107
|
-
displayResult_1.displayError({}, "Predecessor '"
|
|
107
|
+
(0, displayResult_1.displayError)({}, "Predecessor '".concat(predecessorName, "' mentioned in '").concat(flowName, "' flow does not exist."));
|
|
108
108
|
return [3 /*break*/, 6];
|
|
109
109
|
case 3:
|
|
110
110
|
if (!(predecessorName === flowName)) return [3 /*break*/, 4];
|
|
111
|
-
displayResult_1.displayError({}, "Predecessor '"
|
|
111
|
+
(0, displayResult_1.displayError)({}, "Predecessor '".concat(predecessorName, "' mentioned in '").concat(flowName, "' cannot point to itself."));
|
|
112
112
|
return [3 /*break*/, 6];
|
|
113
113
|
case 4:
|
|
114
114
|
if (!!flows[predecessorName].execution) return [3 /*break*/, 6];
|
|
@@ -133,14 +133,14 @@ function execute(target, sasjs, authConfig, source, logFolder, csvFile, streamLo
|
|
|
133
133
|
case 10:
|
|
134
134
|
if (flow.execution)
|
|
135
135
|
return [2 /*return*/];
|
|
136
|
-
return [4 /*yield*/, internal_1.executeFlow(flow, sasjs, pollOptions, target, authConfig, csvFileRealPath)];
|
|
136
|
+
return [4 /*yield*/, (0, internal_1.executeFlow)(flow, sasjs, pollOptions, target, authConfig, csvFileRealPath)];
|
|
137
137
|
case 11:
|
|
138
138
|
_a = _d.sent(), jobStatus = _a.jobStatus, flowStatus = _a.flowStatus;
|
|
139
139
|
if (!jobStatus)
|
|
140
|
-
internal_1.failAllSuccessors(flows, flowName);
|
|
140
|
+
(0, internal_1.failAllSuccessors)(flows, flowName);
|
|
141
141
|
if (flowStatus.terminate)
|
|
142
142
|
reject(flowStatus.message);
|
|
143
|
-
_b = internal_1.allFlowsCompleted(flows), completed = _b.completed, completedWithAllSuccess = _b.completedWithAllSuccess;
|
|
143
|
+
_b = (0, internal_1.allFlowsCompleted)(flows), completed = _b.completed, completedWithAllSuccess = _b.completedWithAllSuccess;
|
|
144
144
|
if (completed) {
|
|
145
145
|
if (completedWithAllSuccess)
|
|
146
146
|
resolve(csvFileRealPath);
|
|
@@ -129,8 +129,8 @@ var FlowCommand = /** @class */ (function (_super) {
|
|
|
129
129
|
appLoc: target.appLoc,
|
|
130
130
|
serverType: target.serverType
|
|
131
131
|
});
|
|
132
|
-
return [4 /*yield*/, utils_1.getAuthConfig(target).catch(function (err) {
|
|
133
|
-
utils_1.displayError(err, 'Error while getting access token.');
|
|
132
|
+
return [4 /*yield*/, (0, utils_1.getAuthConfig)(target).catch(function (err) {
|
|
133
|
+
(0, utils_1.displayError)(err, 'Error while getting access token.');
|
|
134
134
|
return null;
|
|
135
135
|
})];
|
|
136
136
|
case 2:
|
|
@@ -160,15 +160,15 @@ var FlowCommand = /** @class */ (function (_super) {
|
|
|
160
160
|
csvFile = this.parsed.csvFile;
|
|
161
161
|
logFolder = this.parsed.logFolder;
|
|
162
162
|
streamLog = this.parsed.streamLog;
|
|
163
|
-
return [4 /*yield*/, execute_1.execute(target, sasjs, authConfig, source, logFolder, csvFile, streamLog)
|
|
163
|
+
return [4 /*yield*/, (0, execute_1.execute)(target, sasjs, authConfig, source, logFolder, csvFile, streamLog)
|
|
164
164
|
.then(function (csvFilePath) {
|
|
165
165
|
var _a;
|
|
166
166
|
var pathSepRegExp = new RegExp(path_1.default.sep.replace(/\\/g, '\\\\'), 'g');
|
|
167
|
-
(_a = process.logger) === null || _a === void 0 ? void 0 : _a.info("CSV file located at: "
|
|
167
|
+
(_a = process.logger) === null || _a === void 0 ? void 0 : _a.info("CSV file located at: ".concat(csvFilePath.replace(pathSepRegExp, '/')));
|
|
168
168
|
return command_1.ReturnCode.Success;
|
|
169
169
|
})
|
|
170
170
|
.catch(function (err) {
|
|
171
|
-
utils_1.displayError(err, 'An error has occurred when executing this flow.');
|
|
171
|
+
(0, utils_1.displayError)(err, 'An error has occurred when executing this flow.');
|
|
172
172
|
return command_1.ReturnCode.InternalError;
|
|
173
173
|
})];
|
|
174
174
|
case 1:
|
|
@@ -15,10 +15,14 @@ var __read = (this && this.__read) || function (o, n) {
|
|
|
15
15
|
}
|
|
16
16
|
return ar;
|
|
17
17
|
};
|
|
18
|
-
var __spreadArray = (this && this.__spreadArray) || function (to, from) {
|
|
19
|
-
for (var i = 0,
|
|
20
|
-
|
|
21
|
-
|
|
18
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
19
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
20
|
+
if (ar || !(i in from)) {
|
|
21
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
22
|
+
ar[i] = from[i];
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
22
26
|
};
|
|
23
27
|
var __values = (this && this.__values) || function(o) {
|
|
24
28
|
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
|
|
@@ -46,15 +50,15 @@ var checkPredecessorDeadlockRecursive = function (flows, flowName, chain) {
|
|
|
46
50
|
var e_1, _a;
|
|
47
51
|
var _b;
|
|
48
52
|
if (chain.includes(flowName))
|
|
49
|
-
return { chain: __spreadArray(__spreadArray([], __read(chain)), [flowName]), present: true };
|
|
53
|
+
return { chain: __spreadArray(__spreadArray([], __read(chain), false), [flowName], false), present: true };
|
|
50
54
|
var predecessors = (_b = flows[flowName]) === null || _b === void 0 ? void 0 : _b.predecessors;
|
|
51
55
|
if (predecessors)
|
|
52
56
|
try {
|
|
53
57
|
for (var predecessors_1 = __values(predecessors), predecessors_1_1 = predecessors_1.next(); !predecessors_1_1.done; predecessors_1_1 = predecessors_1.next()) {
|
|
54
58
|
var predecessorName = predecessors_1_1.value;
|
|
55
|
-
var result = checkPredecessorDeadlockRecursive(flows, predecessorName, __spreadArray(__spreadArray([], __read(chain)), [
|
|
59
|
+
var result = checkPredecessorDeadlockRecursive(flows, predecessorName, __spreadArray(__spreadArray([], __read(chain), false), [
|
|
56
60
|
flowName
|
|
57
|
-
]));
|
|
61
|
+
], false));
|
|
58
62
|
if (result.present)
|
|
59
63
|
return result;
|
|
60
64
|
}
|
|
@@ -51,7 +51,7 @@ var executeFlow = function (flow, sasjs, pollOptions, target, authConfig, csvFil
|
|
|
51
51
|
case 0:
|
|
52
52
|
logFolder = pollOptions.logFolderPath;
|
|
53
53
|
flowName = flow.name;
|
|
54
|
-
utils_1.displaySuccess("'"
|
|
54
|
+
(0, utils_1.displaySuccess)("'".concat(flowName, "' flow started."));
|
|
55
55
|
jobStatus = true, flowStatus = { terminate: false, message: '' };
|
|
56
56
|
flow.execution = 'started';
|
|
57
57
|
return [4 /*yield*/, Promise.all(flow.jobs.map(function (job) { return __awaiter(void 0, void 0, void 0, function () {
|
|
@@ -60,11 +60,11 @@ var executeFlow = function (flow, sasjs, pollOptions, target, authConfig, csvFil
|
|
|
60
60
|
return __generator(this, function (_c) {
|
|
61
61
|
switch (_c.label) {
|
|
62
62
|
case 0:
|
|
63
|
-
jobLocation = utils_1.prefixAppLoc(target.appLoc, job.location);
|
|
64
|
-
utils_1.displaySuccess("'"
|
|
63
|
+
jobLocation = (0, utils_1.prefixAppLoc)(target.appLoc, job.location);
|
|
64
|
+
(0, utils_1.displaySuccess)("'".concat(job.location, "' has been submitted for execution."));
|
|
65
65
|
logName = '';
|
|
66
66
|
if (pollOptions.streamLog) {
|
|
67
|
-
logName = logFolder
|
|
67
|
+
logName = "".concat(logFolder, "/").concat((0, _1.generateFileName)(flowName, jobLocation));
|
|
68
68
|
}
|
|
69
69
|
return [4 /*yield*/, sasjs
|
|
70
70
|
.startComputeJob(jobLocation, null, {
|
|
@@ -76,7 +76,7 @@ var executeFlow = function (flow, sasjs, pollOptions, target, authConfig, csvFil
|
|
|
76
76
|
return __generator(this, function (_e) {
|
|
77
77
|
switch (_e.label) {
|
|
78
78
|
case 0:
|
|
79
|
-
_1.printError(job, flowName, err);
|
|
79
|
+
(0, _1.printError)(job, flowName, err);
|
|
80
80
|
if (typeof err === 'string' &&
|
|
81
81
|
err.includes('Could not get session state')) {
|
|
82
82
|
flowStatus = {
|
|
@@ -84,12 +84,12 @@ var executeFlow = function (flow, sasjs, pollOptions, target, authConfig, csvFil
|
|
|
84
84
|
message: 'Flow has been terminated.'
|
|
85
85
|
};
|
|
86
86
|
}
|
|
87
|
-
return [4 /*yield*/, _1.saveLog((_b = (_a = err === null || err === void 0 ? void 0 : err.job) === null || _a === void 0 ? void 0 : _a.links) !== null && _b !== void 0 ? _b : [], flowName, jobLocation, logFolder, sasjs, target.serverUrl, authConfig.access_token, 1000000).catch(function (err) {
|
|
88
|
-
utils_1.displayError(err, 'Error while saving log file.');
|
|
87
|
+
return [4 /*yield*/, (0, _1.saveLog)((_b = (_a = err === null || err === void 0 ? void 0 : err.job) === null || _a === void 0 ? void 0 : _a.links) !== null && _b !== void 0 ? _b : [], flowName, jobLocation, logFolder, sasjs, target.serverUrl, authConfig.access_token, 1000000).catch(function (err) {
|
|
88
|
+
(0, utils_1.displayError)(err, 'Error while saving log file.');
|
|
89
89
|
})];
|
|
90
90
|
case 1:
|
|
91
91
|
logName = _e.sent();
|
|
92
|
-
logName = logName ? logFolder
|
|
92
|
+
logName = logName ? "".concat(logFolder, "/").concat(logName) : '';
|
|
93
93
|
predecessors = ((_c = flow.predecessors) === null || _c === void 0 ? void 0 : _c.length)
|
|
94
94
|
? flow.predecessors
|
|
95
95
|
: ['none'];
|
|
@@ -101,18 +101,18 @@ var executeFlow = function (flow, sasjs, pollOptions, target, authConfig, csvFil
|
|
|
101
101
|
logName,
|
|
102
102
|
(err === null || err === void 0 ? void 0 : err.message) || ''
|
|
103
103
|
];
|
|
104
|
-
return [4 /*yield*/, _1.saveToCsv(csvFile, data, Object.values(csvColumns_1.default), 'id').catch(function (err) {
|
|
105
|
-
utils_1.displayError(err, 'Error while saving CSV file.');
|
|
104
|
+
return [4 /*yield*/, (0, _1.saveToCsv)(csvFile, data, Object.values(csvColumns_1.default), 'id').catch(function (err) {
|
|
105
|
+
(0, utils_1.displayError)(err, 'Error while saving CSV file.');
|
|
106
106
|
})];
|
|
107
107
|
case 2:
|
|
108
108
|
_e.sent();
|
|
109
109
|
job.status = flow_1.FlowWaveJobStatus.Failure;
|
|
110
110
|
if (logName) {
|
|
111
|
-
(_d = process.logger) === null || _d === void 0 ? void 0 : _d.info("Log file located at: "
|
|
111
|
+
(_d = process.logger) === null || _d === void 0 ? void 0 : _d.info("Log file located at: ".concat((0, _1.normalizeFilePath)(logName)));
|
|
112
112
|
}
|
|
113
113
|
if (flow.jobs.filter(function (j) { return j.hasOwnProperty('status'); })
|
|
114
114
|
.length === flow.jobs.length) {
|
|
115
|
-
utils_1.displayError({}, "'"
|
|
115
|
+
(0, utils_1.displayError)({}, "'".concat(flowName, "' flow failed!"));
|
|
116
116
|
jobStatus = false;
|
|
117
117
|
}
|
|
118
118
|
return [2 /*return*/];
|
|
@@ -123,14 +123,14 @@ var executeFlow = function (flow, sasjs, pollOptions, target, authConfig, csvFil
|
|
|
123
123
|
submittedJob = _c.sent();
|
|
124
124
|
if (!(submittedJob === null || submittedJob === void 0 ? void 0 : submittedJob.job)) return [3 /*break*/, 5];
|
|
125
125
|
submittedJob = submittedJob.job;
|
|
126
|
-
details = _1.parseJobDetails(submittedJob);
|
|
126
|
+
details = (0, _1.parseJobDetails)(submittedJob);
|
|
127
127
|
if (!!pollOptions.streamLog) return [3 /*break*/, 3];
|
|
128
|
-
return [4 /*yield*/, _1.saveLog(submittedJob.links, flowName, jobLocation, logFolder, sasjs, target.serverUrl, authConfig.access_token, details === null || details === void 0 ? void 0 : details.lineCount).catch(function (err) {
|
|
129
|
-
utils_1.displayError(err, 'Error while saving log file.');
|
|
128
|
+
return [4 /*yield*/, (0, _1.saveLog)(submittedJob.links, flowName, jobLocation, logFolder, sasjs, target.serverUrl, authConfig.access_token, details === null || details === void 0 ? void 0 : details.lineCount).catch(function (err) {
|
|
129
|
+
(0, utils_1.displayError)(err, 'Error while saving log file.');
|
|
130
130
|
})];
|
|
131
131
|
case 2:
|
|
132
132
|
logName = (_c.sent());
|
|
133
|
-
logName = logName ? logFolder
|
|
133
|
+
logName = logName ? "".concat(logFolder, "/").concat(logName) : '';
|
|
134
134
|
_c.label = 3;
|
|
135
135
|
case 3:
|
|
136
136
|
predecessors = ((_a = flow.predecessors) === null || _a === void 0 ? void 0 : _a.length)
|
|
@@ -144,7 +144,7 @@ var executeFlow = function (flow, sasjs, pollOptions, target, authConfig, csvFil
|
|
|
144
144
|
logName,
|
|
145
145
|
details === null || details === void 0 ? void 0 : details.details
|
|
146
146
|
];
|
|
147
|
-
return [4 /*yield*/, _1.saveToCsv(csvFile, data, Object.values(csvColumns_1.default), 'id').catch(function (err) { return utils_1.displayError(err, 'Error while saving CSV file.'); })];
|
|
147
|
+
return [4 /*yield*/, (0, _1.saveToCsv)(csvFile, data, Object.values(csvColumns_1.default), 'id').catch(function (err) { return (0, utils_1.displayError)(err, 'Error while saving CSV file.'); })];
|
|
148
148
|
case 4:
|
|
149
149
|
_c.sent();
|
|
150
150
|
job.status =
|
|
@@ -152,23 +152,23 @@ var executeFlow = function (flow, sasjs, pollOptions, target, authConfig, csvFil
|
|
|
152
152
|
? 'success'
|
|
153
153
|
: submittedJob.state || 'failure';
|
|
154
154
|
if (job.status === 'success') {
|
|
155
|
-
utils_1.displaySuccess("'"
|
|
155
|
+
(0, utils_1.displaySuccess)("'".concat(flowName, "' flow's job located at: '").concat(job.location, "' completed."));
|
|
156
156
|
}
|
|
157
157
|
else {
|
|
158
|
-
utils_1.displayError({}, "'"
|
|
159
|
-
? " Job had been aborted due to timeout("
|
|
158
|
+
(0, utils_1.displayError)({}, "'".concat(flowName, "' flow's job located at: '").concat(job.location, "' failed with the status '").concat(job.status, "'.").concat(job.status === 'running'
|
|
159
|
+
? " Job had been aborted due to timeout(".concat((0, utils_1.millisecondsToDdHhMmSs)(pollOptions.maxPollCount * pollOptions.pollInterval), ").")
|
|
160
160
|
: ''));
|
|
161
161
|
}
|
|
162
162
|
if (logName) {
|
|
163
|
-
(_b = process.logger) === null || _b === void 0 ? void 0 : _b.info("Log file located at: "
|
|
163
|
+
(_b = process.logger) === null || _b === void 0 ? void 0 : _b.info("Log file located at: ".concat((0, _1.normalizeFilePath)(logName)));
|
|
164
164
|
}
|
|
165
165
|
if (flow.jobs.filter(function (j) { return j.status === 'success'; })
|
|
166
166
|
.length === flow.jobs.length) {
|
|
167
|
-
utils_1.displaySuccess("'"
|
|
167
|
+
(0, utils_1.displaySuccess)("'".concat(flowName, "' flow completed successfully!"));
|
|
168
168
|
}
|
|
169
169
|
else if (flow.jobs.filter(function (j) { return j.hasOwnProperty('status'); })
|
|
170
170
|
.length === flow.jobs.length) {
|
|
171
|
-
utils_1.displayError({}, "'"
|
|
171
|
+
(0, utils_1.displayError)({}, "'".concat(flowName, "' flow failed!"));
|
|
172
172
|
jobStatus = false;
|
|
173
173
|
}
|
|
174
174
|
_c.label = 5;
|
|
@@ -7,7 +7,7 @@ var failAllSuccessors = function (flows, flowName) {
|
|
|
7
7
|
successors.forEach(function (successor) {
|
|
8
8
|
flows[successor].jobs.map(function (job) { return (job.status = flow_1.FlowWaveJobStatus.Failure); });
|
|
9
9
|
flows[successor].execution = 'failedByPredecessor';
|
|
10
|
-
exports.failAllSuccessors(flows, successor);
|
|
10
|
+
(0, exports.failAllSuccessors)(flows, successor);
|
|
11
11
|
});
|
|
12
12
|
};
|
|
13
13
|
exports.failAllSuccessors = failAllSuccessors;
|
|
@@ -3,10 +3,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.generateFileName = void 0;
|
|
4
4
|
var utils_1 = require("@sasjs/utils");
|
|
5
5
|
var generateFileName = function (flowName, jobLocation) {
|
|
6
|
-
return flowName
|
|
6
|
+
return "".concat(flowName, "_").concat(jobLocation
|
|
7
7
|
.split('/')
|
|
8
8
|
.splice(-1, 1)
|
|
9
9
|
.join('')
|
|
10
|
-
.replace(/\W/g, '_')
|
|
10
|
+
.replace(/\W/g, '_'), "_").concat((0, utils_1.generateTimestamp)('_'), ".log");
|
|
11
11
|
};
|
|
12
12
|
exports.generateFileName = generateFileName;
|
|
@@ -8,6 +8,6 @@ var utils_1 = require("@sasjs/utils");
|
|
|
8
8
|
var path_1 = __importDefault(require("path"));
|
|
9
9
|
var normalizeFilePath = function (filePath) {
|
|
10
10
|
var pathSepRegExp = new RegExp(path_1.default.sep.replace(/\\/g, '\\\\'), 'g');
|
|
11
|
-
return utils_1.getRealPath(filePath).replace(pathSepRegExp, '/');
|
|
11
|
+
return (0, utils_1.getRealPath)(filePath).replace(pathSepRegExp, '/');
|
|
12
12
|
};
|
|
13
13
|
exports.normalizeFilePath = normalizeFilePath;
|
|
@@ -7,9 +7,9 @@ var parseJobDetails = function (response) {
|
|
|
7
7
|
var details = '';
|
|
8
8
|
var concatDetails = function (data, title) {
|
|
9
9
|
if (data)
|
|
10
|
-
details = details.concat(details.length ? ' | ' : '', title
|
|
11
|
-
.map(function (key) { return key
|
|
12
|
-
.join('; '));
|
|
10
|
+
details = details.concat(details.length ? ' | ' : '', "".concat(title, ": ").concat(Object.keys(data)
|
|
11
|
+
.map(function (key) { return "".concat(key, ": ").concat(data[key]); })
|
|
12
|
+
.join('; ')));
|
|
13
13
|
};
|
|
14
14
|
concatDetails(response.statistics, 'Statistics');
|
|
15
15
|
concatDetails(response.listingStatistics, 'Listing Statistics');
|
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.printError = void 0;
|
|
4
4
|
var printError = function (job, flowName, err) {
|
|
5
5
|
var _a;
|
|
6
|
-
(_a = process.logger) === null || _a === void 0 ? void 0 : _a.error("An error has occurred when executing '"
|
|
6
|
+
(_a = process.logger) === null || _a === void 0 ? void 0 : _a.error("An error has occurred when executing '".concat(flowName, "' flow's job located at: '").concat(job.location, "'. ").concat(typeof err === 'object'
|
|
7
7
|
? (err === null || err === void 0 ? void 0 : err.name) === 'NotFoundError'
|
|
8
8
|
? 'Job was not found.'
|
|
9
9
|
: (err === null || err === void 0 ? void 0 : err.message) || ''
|
|
@@ -61,21 +61,21 @@ var saveLog = function (links, flowName, jobLocation, logFolder, sasjs, serverUr
|
|
|
61
61
|
logObj = links.find(function (link) { return link.rel === 'log' && link.method === 'GET'; });
|
|
62
62
|
if (!logObj) return [3 /*break*/, 6];
|
|
63
63
|
logUrl = serverUrl + logObj.href;
|
|
64
|
-
return [4 /*yield*/, fetchLogFileContent_1.fetchLogFileContent(sasjs, access_token, logUrl, lineCount)];
|
|
64
|
+
return [4 /*yield*/, (0, fetchLogFileContent_1.fetchLogFileContent)(sasjs, access_token, logUrl, lineCount)];
|
|
65
65
|
case 1:
|
|
66
66
|
logJson = _a.sent();
|
|
67
|
-
logParsed = utils_2.parseLogLines(logJson);
|
|
68
|
-
logName = generateFileName_1.generateFileName(flowName, jobLocation);
|
|
67
|
+
logParsed = (0, utils_2.parseLogLines)(logJson);
|
|
68
|
+
logName = (0, generateFileName_1.generateFileName)(flowName, jobLocation);
|
|
69
69
|
_a.label = 2;
|
|
70
|
-
case 2: return [4 /*yield*/, utils_1.fileExists(path_1.default.join(logFolder, logName)).catch(function (err) {
|
|
71
|
-
return displayResult_1.displayError(err, 'Error while checking if log file exists.');
|
|
70
|
+
case 2: return [4 /*yield*/, (0, utils_1.fileExists)(path_1.default.join(logFolder, logName)).catch(function (err) {
|
|
71
|
+
return (0, displayResult_1.displayError)(err, 'Error while checking if log file exists.');
|
|
72
72
|
})];
|
|
73
73
|
case 3:
|
|
74
74
|
if (!_a.sent()) return [3 /*break*/, 4];
|
|
75
|
-
logName = generateFileName_1.generateFileName(flowName, jobLocation);
|
|
75
|
+
logName = (0, generateFileName_1.generateFileName)(flowName, jobLocation);
|
|
76
76
|
return [3 /*break*/, 2];
|
|
77
|
-
case 4: return [4 /*yield*/, utils_1.createFile(path_1.default.join(logFolder, logName), logParsed).catch(function (err) {
|
|
78
|
-
return displayResult_1.displayError(err, 'Error while creating log file.');
|
|
77
|
+
case 4: return [4 /*yield*/, (0, utils_1.createFile)(path_1.default.join(logFolder, logName), logParsed).catch(function (err) {
|
|
78
|
+
return (0, displayResult_1.displayError)(err, 'Error while creating log file.');
|
|
79
79
|
})];
|
|
80
80
|
case 5:
|
|
81
81
|
_a.sent();
|
|
@@ -57,7 +57,7 @@ var saveToCsv = function (csvFileRealPath, data, columns, prependId) { return __
|
|
|
57
57
|
_a.label = 1;
|
|
58
58
|
case 1:
|
|
59
59
|
_a.trys.push([1, 3, , 4]);
|
|
60
|
-
return [4 /*yield*/, utils_1.updateCsv(csvFileRealPath, data, columns, prependId)];
|
|
60
|
+
return [4 /*yield*/, (0, utils_1.updateCsv)(csvFileRealPath, data, columns, prependId)];
|
|
61
61
|
case 2:
|
|
62
62
|
_a.sent();
|
|
63
63
|
process.csvFileAbleToSave = true;
|
|
@@ -65,7 +65,7 @@ var saveToCsv = function (csvFileRealPath, data, columns, prependId) { return __
|
|
|
65
65
|
return [3 /*break*/, 4];
|
|
66
66
|
case 3:
|
|
67
67
|
error_1 = _a.sent();
|
|
68
|
-
displayResult_1.displayError(error_1);
|
|
68
|
+
(0, displayResult_1.displayError)(error_1);
|
|
69
69
|
reject(error_1);
|
|
70
70
|
return [3 /*break*/, 4];
|
|
71
71
|
case 4: return [2 /*return*/];
|