trm-core 6.4.1 → 6.5.0
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/changelog.txt +6 -0
- package/dist/actions/checkPackageDependencies/analyze.js +7 -7
- package/dist/actions/checkPackageDependencies/index.js +3 -3
- package/dist/actions/checkPackageDependencies/init.js +2 -2
- package/dist/actions/checkSapEntries/analyze.js +8 -8
- package/dist/actions/checkSapEntries/index.js +3 -3
- package/dist/actions/checkSapEntries/init.js +2 -2
- package/dist/actions/commons/setSystemPackages.js +3 -3
- package/dist/actions/findDependencies/index.js +3 -3
- package/dist/actions/findDependencies/init.js +4 -4
- package/dist/actions/findDependencies/parseSenvi.js +10 -10
- package/dist/actions/findDependencies/print.js +4 -4
- package/dist/actions/findDependencies/readRepositoryEnvironment.js +6 -6
- package/dist/actions/findDependencies/setObjects.js +6 -7
- package/dist/actions/findDependencies/setTrmDependencies.js +16 -16
- package/dist/actions/install/addNamespace.js +10 -11
- package/dist/actions/install/checkAlreadyInstalled.js +6 -6
- package/dist/actions/install/checkDependencies.js +9 -9
- package/dist/actions/install/checkIntegrity.js +6 -6
- package/dist/actions/install/checkObjectTypes.js +6 -6
- package/dist/actions/install/checkSapEntries.js +8 -8
- package/dist/actions/install/checkTransports.js +32 -32
- package/dist/actions/install/executePostActivities.js +15 -8
- package/dist/actions/install/generateDevclass.js +17 -11
- package/dist/actions/install/generateInstallTransport.js +26 -24
- package/dist/actions/install/importCustTransport.js +10 -10
- package/dist/actions/install/importDevcTransport.js +11 -11
- package/dist/actions/install/importLangTransport.js +10 -10
- package/dist/actions/install/importTadirTransport.js +22 -17
- package/dist/actions/install/index.js +5 -3
- package/dist/actions/install/init.js +11 -11
- package/dist/actions/install/installDependencies.js +16 -17
- package/dist/actions/install/migrate.js +5 -5
- package/dist/actions/install/readDevc.js +5 -5
- package/dist/actions/install/readTadir.js +9 -9
- package/dist/actions/install/refreshTmsTxt.js +11 -6
- package/dist/actions/install/setInstallDevclass.js +5 -6
- package/dist/actions/install/setPackageIntegrity.js +3 -3
- package/dist/actions/install/setR3trans.js +7 -7
- package/dist/actions/install/setTrmServerUpgradeService.d.ts +3 -0
- package/dist/actions/install/setTrmServerUpgradeService.js +32 -0
- package/dist/actions/installDependency/findInstallRelease.js +2 -2
- package/dist/actions/installDependency/index.js +3 -3
- package/dist/actions/installDependency/init.js +6 -7
- package/dist/actions/installDependency/installRelease.js +4 -4
- package/dist/actions/publish/finalizePublish.js +7 -7
- package/dist/actions/publish/findDependencies.js +21 -22
- package/dist/actions/publish/generateCustTransport.js +10 -10
- package/dist/actions/publish/generateDevcTransport.js +8 -8
- package/dist/actions/publish/generateLangTransport.js +12 -12
- package/dist/actions/publish/generateTadirTransport.js +9 -9
- package/dist/actions/publish/getSourceCode.js +5 -5
- package/dist/actions/publish/index.js +3 -3
- package/dist/actions/publish/init.js +16 -16
- package/dist/actions/publish/publishToRegistry.js +4 -4
- package/dist/actions/publish/releaseTransports.js +8 -9
- package/dist/actions/publish/setCustomizingTransports.js +10 -11
- package/dist/actions/publish/setDevclass.js +10 -10
- package/dist/actions/publish/setManifestValues.js +11 -11
- package/dist/actions/publish/setReadme.js +5 -6
- package/dist/actions/publish/setTransportTarget.js +7 -7
- package/dist/client/ClientError.d.ts +7 -0
- package/dist/client/ClientError.js +13 -0
- package/dist/client/RESTClient.js +13 -14
- package/dist/client/RESTClientError.d.ts +10 -0
- package/dist/client/RESTClientError.js +15 -0
- package/dist/client/RFCClient.js +32 -28
- package/dist/client/RFCClientError.d.ts +8 -0
- package/dist/client/RFCClientError.js +15 -0
- package/dist/client/index.d.ts +3 -0
- package/dist/client/index.js +3 -0
- package/dist/commons/TrmServerUpgradeService.d.ts +15 -0
- package/dist/commons/TrmServerUpgradeService.js +81 -0
- package/dist/commons/getAxiosInstance.js +8 -8
- package/dist/commons/getNodePackage.js +47 -6
- package/dist/commons/getNpmGlobalPath.js +3 -3
- package/dist/commons/index.d.ts +1 -0
- package/dist/commons/index.js +1 -0
- package/dist/index.d.ts +0 -2
- package/dist/index.js +0 -2
- package/dist/manifest/Manifest.js +3 -3
- package/dist/manifest/PostActivity.js +5 -5
- package/dist/registry/Registry.js +12 -13
- package/dist/systemConnector/RESTSystemConnector.js +6 -6
- package/dist/systemConnector/RFCSystemConnector.js +4 -4
- package/dist/systemConnector/SystemConnectorBase.js +29 -29
- package/dist/transport/Transport.js +48 -50
- package/dist/trmPackage/TrmArtifact.js +11 -11
- package/dist/trmPackage/TrmPackage.js +2 -2
- package/dist/{inquirer/validators → validators}/validateDevclass.d.ts +1 -1
- package/dist/{inquirer/validators → validators}/validateDevclass.js +1 -1
- package/dist/{inquirer/validators → validators}/validatePackageVisibility.d.ts +1 -1
- package/dist/{inquirer/validators → validators}/validatePackageVisibility.js +2 -2
- package/dist/{inquirer/validators → validators}/validateTransportTarget.d.ts +1 -1
- package/package.json +2 -4
- package/dist/inquirer/CliInquirer.d.ts +0 -10
- package/dist/inquirer/CliInquirer.js +0 -103
- package/dist/inquirer/IInquirer.d.ts +0 -7
- package/dist/inquirer/IInquirer.js +0 -2
- package/dist/inquirer/Inquirer.d.ts +0 -9
- package/dist/inquirer/Inquirer.js +0 -31
- package/dist/inquirer/Question.d.ts +0 -12
- package/dist/inquirer/Question.js +0 -2
- package/dist/inquirer/index.d.ts +0 -5
- package/dist/inquirer/index.js +0 -21
- package/dist/logger/CliLogFileLogger.d.ts +0 -25
- package/dist/logger/CliLogFileLogger.js +0 -92
- package/dist/logger/CliLogger.d.ts +0 -25
- package/dist/logger/CliLogger.js +0 -227
- package/dist/logger/ConsoleLogger.d.ts +0 -21
- package/dist/logger/ConsoleLogger.js +0 -104
- package/dist/logger/DummyLogger.d.ts +0 -20
- package/dist/logger/DummyLogger.js +0 -22
- package/dist/logger/ILogger.d.ts +0 -18
- package/dist/logger/ILogger.js +0 -2
- package/dist/logger/JSONLog.d.ts +0 -4
- package/dist/logger/JSONLog.js +0 -2
- package/dist/logger/Logger.d.ts +0 -21
- package/dist/logger/Logger.js +0 -86
- package/dist/logger/TreeLog.d.ts +0 -4
- package/dist/logger/TreeLog.js +0 -2
- package/dist/logger/index.d.ts +0 -8
- package/dist/logger/index.js +0 -24
- /package/dist/{inquirer/validators → validators}/index.d.ts +0 -0
- /package/dist/{inquirer/validators → validators}/index.js +0 -0
- /package/dist/{inquirer/validators → validators}/validateTransportTarget.js +0 -0
|
@@ -10,17 +10,16 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.addNamespace = void 0;
|
|
13
|
-
const
|
|
13
|
+
const trm_commons_1 = require("trm-commons");
|
|
14
14
|
const commons_1 = require("../../commons");
|
|
15
15
|
const systemConnector_1 = require("../../systemConnector");
|
|
16
|
-
const inquirer_1 = require("../../inquirer");
|
|
17
16
|
exports.addNamespace = {
|
|
18
17
|
name: 'add-namespace',
|
|
19
18
|
run: (context) => __awaiter(void 0, void 0, void 0, function* () {
|
|
20
|
-
|
|
19
|
+
trm_commons_1.Logger.log('Add namespace step', true);
|
|
21
20
|
context.runtime.rollback = true;
|
|
22
21
|
var originalNamespace = (0, commons_1.getPackageNamespace)(context.runtime.originalData.hierarchy.devclass);
|
|
23
|
-
|
|
22
|
+
trm_commons_1.Logger.log(`Package original namespace is ${originalNamespace}`, true);
|
|
24
23
|
if (!context.rawInput.installData.installDevclass.keepOriginal && context.rawInput.installData.installDevclass.replacements.length > 0) {
|
|
25
24
|
context.runtime.installData.namespace = (0, commons_1.getPackageNamespace)(context.rawInput.installData.installDevclass.replacements[0].installDevclass);
|
|
26
25
|
}
|
|
@@ -28,17 +27,17 @@ exports.addNamespace = {
|
|
|
28
27
|
context.runtime.installData.namespace = originalNamespace;
|
|
29
28
|
}
|
|
30
29
|
if (context.runtime.installData.namespace[0] !== '/') {
|
|
31
|
-
|
|
30
|
+
trm_commons_1.Logger.log(`Package install namespace is ${context.runtime.installData.namespace}`, true);
|
|
32
31
|
return;
|
|
33
32
|
}
|
|
34
|
-
|
|
33
|
+
trm_commons_1.Logger.loading(`Checking namespace ${context.runtime.installData.namespace}...`);
|
|
35
34
|
var namespace;
|
|
36
35
|
const namespaceCheck = yield systemConnector_1.SystemConnector.getNamespace(context.runtime.installData.namespace);
|
|
37
36
|
if (namespaceCheck) {
|
|
38
37
|
namespace = namespaceCheck.trnspacet;
|
|
39
38
|
}
|
|
40
39
|
if (namespace) {
|
|
41
|
-
|
|
40
|
+
trm_commons_1.Logger.log(`Namespace ${context.runtime.installData.namespace} already defined`, true);
|
|
42
41
|
return;
|
|
43
42
|
}
|
|
44
43
|
var replicense;
|
|
@@ -46,7 +45,7 @@ exports.addNamespace = {
|
|
|
46
45
|
var aTexts = [];
|
|
47
46
|
if (context.runtime.installData.namespace !== originalNamespace) {
|
|
48
47
|
if (!context.rawInput.contextData.noInquirer) {
|
|
49
|
-
replicense = (yield
|
|
48
|
+
replicense = (yield trm_commons_1.Inquirer.prompt({
|
|
50
49
|
message: `Input repair license for namespace ${context.runtime.installData.namespace}`,
|
|
51
50
|
name: 'replicense',
|
|
52
51
|
type: 'input',
|
|
@@ -59,7 +58,7 @@ exports.addNamespace = {
|
|
|
59
58
|
}
|
|
60
59
|
}
|
|
61
60
|
})).replicense;
|
|
62
|
-
texts = yield
|
|
61
|
+
texts = yield trm_commons_1.Inquirer.prompt([{
|
|
63
62
|
message: `dummy`,
|
|
64
63
|
name: 'namespace',
|
|
65
64
|
type: 'input',
|
|
@@ -94,7 +93,7 @@ exports.addNamespace = {
|
|
|
94
93
|
}
|
|
95
94
|
else {
|
|
96
95
|
if (!context.rawInput.contextData.noInquirer) {
|
|
97
|
-
texts = (yield
|
|
96
|
+
texts = (yield trm_commons_1.Inquirer.prompt({
|
|
98
97
|
type: 'list',
|
|
99
98
|
message: 'Choose namespace install text',
|
|
100
99
|
name: 'choice',
|
|
@@ -127,7 +126,7 @@ exports.addNamespace = {
|
|
|
127
126
|
aTexts.push(Object.assign(Object.assign({}, texts), { spras: systemConnector_1.SystemConnector.getLogonLanguage(true) }));
|
|
128
127
|
}
|
|
129
128
|
}
|
|
130
|
-
|
|
129
|
+
trm_commons_1.Logger.loading(`Installing namespace ${context.runtime.installData.namespace}...`);
|
|
131
130
|
yield systemConnector_1.SystemConnector.addNamespace(context.runtime.installData.namespace, replicense, aTexts);
|
|
132
131
|
context.runtime.generatedData.namespace = context.runtime.installData.namespace;
|
|
133
132
|
}),
|
|
@@ -10,13 +10,13 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.checkAlreadyInstalled = void 0;
|
|
13
|
-
const
|
|
13
|
+
const trm_commons_1 = require("trm-commons");
|
|
14
14
|
const manifest_1 = require("../../manifest");
|
|
15
15
|
const semver_1 = require("semver");
|
|
16
16
|
exports.checkAlreadyInstalled = {
|
|
17
17
|
name: 'check-already-installed',
|
|
18
18
|
run: (context) => __awaiter(void 0, void 0, void 0, function* () {
|
|
19
|
-
|
|
19
|
+
trm_commons_1.Logger.log('Check already installed step', true);
|
|
20
20
|
const installedPackages = context.rawInput.contextData.systemPackages;
|
|
21
21
|
const manifest = context.runtime.remotePackageData.manifest;
|
|
22
22
|
const trmManifest = context.runtime.remotePackageData.trmManifest;
|
|
@@ -27,7 +27,7 @@ exports.checkAlreadyInstalled = {
|
|
|
27
27
|
context.runtime.update = true;
|
|
28
28
|
if ((0, semver_1.eq)(installVersion, installedVersion)) {
|
|
29
29
|
if (context.rawInput.packageData.overwrite) {
|
|
30
|
-
|
|
30
|
+
trm_commons_1.Logger.info(`Package "${trmManifest.name}" version ${installedVersion} already installed.`);
|
|
31
31
|
}
|
|
32
32
|
else {
|
|
33
33
|
throw new Error(`Package "${trmManifest.name}" version ${installedVersion} already installed.`);
|
|
@@ -35,16 +35,16 @@ exports.checkAlreadyInstalled = {
|
|
|
35
35
|
}
|
|
36
36
|
else {
|
|
37
37
|
if ((0, semver_1.gt)(installVersion, installedVersion)) {
|
|
38
|
-
|
|
38
|
+
trm_commons_1.Logger.info(`Upgrading ${installedVersion} -> ${installVersion}`);
|
|
39
39
|
}
|
|
40
40
|
else {
|
|
41
|
-
|
|
41
|
+
trm_commons_1.Logger.warning(`Downgrading ${installedVersion} -> ${installVersion}`);
|
|
42
42
|
}
|
|
43
43
|
}
|
|
44
44
|
}
|
|
45
45
|
else {
|
|
46
46
|
context.runtime.update = false;
|
|
47
|
-
|
|
47
|
+
trm_commons_1.Logger.info(`Package not installed yet`, true);
|
|
48
48
|
}
|
|
49
49
|
})
|
|
50
50
|
};
|
|
@@ -10,14 +10,14 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.checkDependencies = void 0;
|
|
13
|
-
const
|
|
13
|
+
const trm_commons_1 = require("trm-commons");
|
|
14
14
|
const checkPackageDependencies_1 = require("../checkPackageDependencies");
|
|
15
15
|
const SUBWORKFLOW_NAME = 'check-package-dependencies-sub-install';
|
|
16
16
|
exports.checkDependencies = {
|
|
17
17
|
name: 'check-dependencies',
|
|
18
18
|
filter: (context) => __awaiter(void 0, void 0, void 0, function* () {
|
|
19
19
|
if (context.rawInput.installData.checks.noDependencies) {
|
|
20
|
-
|
|
20
|
+
trm_commons_1.Logger.log(`Skipping dependencies check (user input)`, true);
|
|
21
21
|
return false;
|
|
22
22
|
}
|
|
23
23
|
else {
|
|
@@ -25,7 +25,7 @@ exports.checkDependencies = {
|
|
|
25
25
|
}
|
|
26
26
|
}),
|
|
27
27
|
run: (context) => __awaiter(void 0, void 0, void 0, function* () {
|
|
28
|
-
|
|
28
|
+
trm_commons_1.Logger.log('Check dependencies step', true);
|
|
29
29
|
const inputData = {
|
|
30
30
|
packageData: {
|
|
31
31
|
package: context.runtime.remotePackageData.trmPackage
|
|
@@ -38,16 +38,16 @@ exports.checkDependencies = {
|
|
|
38
38
|
information: false
|
|
39
39
|
}
|
|
40
40
|
};
|
|
41
|
-
|
|
42
|
-
|
|
41
|
+
trm_commons_1.Logger.loading(`Checking dependencies...`);
|
|
42
|
+
trm_commons_1.Logger.log(`Ready to execute sub-workflow ${SUBWORKFLOW_NAME}, input data: ${(0, trm_commons_1.inspect)(inputData, { breakLength: Infinity, compact: true })}`, true);
|
|
43
43
|
const result = yield (0, checkPackageDependencies_1.checkPackageDependencies)(inputData);
|
|
44
|
-
|
|
44
|
+
trm_commons_1.Logger.log(`Workflow ${SUBWORKFLOW_NAME} result: ${(0, trm_commons_1.inspect)(result, { breakLength: Infinity, compact: true })}`, true);
|
|
45
45
|
if (result.dependencies.length > 0) {
|
|
46
46
|
if (result.dependencies.length === 1) {
|
|
47
|
-
|
|
47
|
+
trm_commons_1.Logger.info(`"${context.rawInput.packageData.name}" has ${result.dependencies.length} dependency: ${result.dependencyStatus.filter(o => o.match).length} installed, ${result.dependencyStatus.filter(o => !o.match).length} missing.`);
|
|
48
48
|
}
|
|
49
49
|
else {
|
|
50
|
-
|
|
50
|
+
trm_commons_1.Logger.info(`"${context.rawInput.packageData.name}" has ${result.dependencies.length} dependencies: ${result.dependencyStatus.filter(o => o.match).length} installed, ${result.dependencyStatus.filter(o => !o.match).length} missing.`);
|
|
51
51
|
}
|
|
52
52
|
}
|
|
53
53
|
result.dependencyStatus.forEach(o => {
|
|
@@ -60,7 +60,7 @@ exports.checkDependencies = {
|
|
|
60
60
|
throw new Error(`Dependency "${o.dependency.name}" is installed, but integrity doesn't match.`);
|
|
61
61
|
}
|
|
62
62
|
else {
|
|
63
|
-
|
|
63
|
+
trm_commons_1.Logger.warning(`Dependency "${o.dependency.name}" is installed, but integrity doesn't match.`);
|
|
64
64
|
}
|
|
65
65
|
}
|
|
66
66
|
}
|
|
@@ -10,11 +10,11 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.checkIntegrity = void 0;
|
|
13
|
-
const
|
|
13
|
+
const trm_commons_1 = require("trm-commons");
|
|
14
14
|
exports.checkIntegrity = {
|
|
15
15
|
name: 'check-integrity',
|
|
16
16
|
run: (context) => __awaiter(void 0, void 0, void 0, function* () {
|
|
17
|
-
|
|
17
|
+
trm_commons_1.Logger.log('Check integrity step', true);
|
|
18
18
|
const inputIntegrity = context.rawInput.packageData.integrity;
|
|
19
19
|
const safe = context.rawInput.installData.checks.safe;
|
|
20
20
|
if (!inputIntegrity) {
|
|
@@ -28,11 +28,11 @@ exports.checkIntegrity = {
|
|
|
28
28
|
const trmManifest = context.runtime.remotePackageData.trmManifest;
|
|
29
29
|
const installIntegrity = context.runtime.remotePackageData.integrity;
|
|
30
30
|
if (installIntegrity !== inputIntegrity) {
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
31
|
+
trm_commons_1.Logger.warning(`ATTENTION!! Integrity check failed on package ${trmManifest.name}, version ${trmManifest.version}.`);
|
|
32
|
+
trm_commons_1.Logger.warning(` Local: ${inputIntegrity}`);
|
|
33
|
+
trm_commons_1.Logger.warning(` Remote: ${installIntegrity}`);
|
|
34
34
|
if (safe) {
|
|
35
|
-
|
|
35
|
+
trm_commons_1.Logger.warning(` Install will continue.`);
|
|
36
36
|
}
|
|
37
37
|
else {
|
|
38
38
|
throw new Error(`Safe mode: package installation aborted due to integrity check failure.`);
|
|
@@ -10,13 +10,13 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.checkObjectTypes = void 0;
|
|
13
|
-
const
|
|
13
|
+
const trm_commons_1 = require("trm-commons");
|
|
14
14
|
const systemConnector_1 = require("../../systemConnector");
|
|
15
15
|
exports.checkObjectTypes = {
|
|
16
16
|
name: 'check-object-types',
|
|
17
17
|
filter: (context) => __awaiter(void 0, void 0, void 0, function* () {
|
|
18
18
|
if (context.rawInput.installData.checks.noObjectTypes) {
|
|
19
|
-
|
|
19
|
+
trm_commons_1.Logger.log(`Skipping object types check (user input)`, true);
|
|
20
20
|
return false;
|
|
21
21
|
}
|
|
22
22
|
else {
|
|
@@ -24,8 +24,8 @@ exports.checkObjectTypes = {
|
|
|
24
24
|
}
|
|
25
25
|
}),
|
|
26
26
|
run: (context) => __awaiter(void 0, void 0, void 0, function* () {
|
|
27
|
-
|
|
28
|
-
|
|
27
|
+
trm_commons_1.Logger.log('Check object types step', true);
|
|
28
|
+
trm_commons_1.Logger.loading(`Checking package objects types...`);
|
|
29
29
|
const systemObjectList = yield systemConnector_1.SystemConnector.getObjectsList();
|
|
30
30
|
var unsupportedObjectTypes = [];
|
|
31
31
|
context.runtime.packageTransportsData.e071.forEach(o => {
|
|
@@ -40,9 +40,9 @@ exports.checkObjectTypes = {
|
|
|
40
40
|
}
|
|
41
41
|
});
|
|
42
42
|
if (unsupportedObjectTypes.length > 0) {
|
|
43
|
-
|
|
43
|
+
trm_commons_1.Logger.error(`Package contains ${unsupportedObjectTypes.length} unsupported objects:`);
|
|
44
44
|
unsupportedObjectTypes.forEach(o => {
|
|
45
|
-
|
|
45
|
+
trm_commons_1.Logger.error(` ${o.text}`);
|
|
46
46
|
});
|
|
47
47
|
throw new Error(`Package is not supported on ${systemConnector_1.SystemConnector.getDest()}.`);
|
|
48
48
|
}
|
|
@@ -10,14 +10,14 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.checkSapEntries = void 0;
|
|
13
|
-
const
|
|
13
|
+
const trm_commons_1 = require("trm-commons");
|
|
14
14
|
const checkSapEntries_1 = require("../checkSapEntries");
|
|
15
15
|
const SUBWORKFLOW_NAME = 'check-sap-entries-sub-install';
|
|
16
16
|
exports.checkSapEntries = {
|
|
17
17
|
name: 'check-sap-entries',
|
|
18
18
|
filter: (context) => __awaiter(void 0, void 0, void 0, function* () {
|
|
19
19
|
if (context.rawInput.installData.checks.noSapEntries) {
|
|
20
|
-
|
|
20
|
+
trm_commons_1.Logger.log(`Skipping SAP entries check (user input)`, true);
|
|
21
21
|
return false;
|
|
22
22
|
}
|
|
23
23
|
else {
|
|
@@ -25,7 +25,7 @@ exports.checkSapEntries = {
|
|
|
25
25
|
}
|
|
26
26
|
}),
|
|
27
27
|
run: (context) => __awaiter(void 0, void 0, void 0, function* () {
|
|
28
|
-
|
|
28
|
+
trm_commons_1.Logger.log('Check sap entries step', true);
|
|
29
29
|
const inputData = {
|
|
30
30
|
packageData: {
|
|
31
31
|
package: context.runtime.remotePackageData.trmPackage
|
|
@@ -35,21 +35,21 @@ exports.checkSapEntries = {
|
|
|
35
35
|
information: false
|
|
36
36
|
}
|
|
37
37
|
};
|
|
38
|
-
|
|
39
|
-
|
|
38
|
+
trm_commons_1.Logger.loading(`Checking SAP entries...`);
|
|
39
|
+
trm_commons_1.Logger.log(`Ready to execute sub-workflow ${SUBWORKFLOW_NAME}, input data: ${(0, trm_commons_1.inspect)(inputData, { breakLength: Infinity, compact: true })}`, true);
|
|
40
40
|
const result = yield (0, checkSapEntries_1.checkSapEntries)(inputData);
|
|
41
|
-
|
|
41
|
+
trm_commons_1.Logger.log(`Workflow ${SUBWORKFLOW_NAME} result: ${(0, trm_commons_1.inspect)(result, { breakLength: Infinity, compact: true })}`, true);
|
|
42
42
|
const sapEntriesOutput = result.sapEntriesStatus;
|
|
43
43
|
var missingEntries = [];
|
|
44
44
|
Object.keys(sapEntriesOutput).forEach(t => {
|
|
45
45
|
missingEntries = missingEntries.concat(sapEntriesOutput[t].filter(o => !o.status));
|
|
46
46
|
});
|
|
47
47
|
if (missingEntries.length > 0) {
|
|
48
|
-
|
|
48
|
+
trm_commons_1.Logger.error(JSON.stringify(missingEntries), true);
|
|
49
49
|
throw new Error(`Package requires ${missingEntries.length} SAP entries that don't exist on your system (run in verbose for more detail).`);
|
|
50
50
|
}
|
|
51
51
|
else {
|
|
52
|
-
|
|
52
|
+
trm_commons_1.Logger.success(`SAP entries checked.`);
|
|
53
53
|
}
|
|
54
54
|
})
|
|
55
55
|
};
|
|
@@ -10,19 +10,19 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.checkTransports = void 0;
|
|
13
|
-
const
|
|
13
|
+
const trm_commons_1 = require("trm-commons");
|
|
14
14
|
const transport_1 = require("../../transport");
|
|
15
15
|
const commons_1 = require("../../commons");
|
|
16
|
-
const
|
|
16
|
+
const trm_commons_2 = require("trm-commons");
|
|
17
17
|
const systemConnector_1 = require("../../systemConnector");
|
|
18
18
|
exports.checkTransports = {
|
|
19
19
|
name: 'check-transports',
|
|
20
20
|
run: (context) => __awaiter(void 0, void 0, void 0, function* () {
|
|
21
|
-
|
|
21
|
+
trm_commons_1.Logger.log('Check transports step', true);
|
|
22
22
|
var checkExistance = [];
|
|
23
|
-
|
|
23
|
+
trm_commons_1.Logger.loading(`Checking package transports...`);
|
|
24
24
|
const aTransports = yield context.runtime.remotePackageData.artifact.getTransportBinaries(context.rawInput.contextData.r3transOptions);
|
|
25
|
-
|
|
25
|
+
trm_commons_1.Logger.log(`Package content: ${aTransports.map(o => {
|
|
26
26
|
return {
|
|
27
27
|
trkorr: o.trkorr,
|
|
28
28
|
type: o.type
|
|
@@ -31,10 +31,10 @@ exports.checkTransports = {
|
|
|
31
31
|
for (const transport of aTransports) {
|
|
32
32
|
const valid = yield context.runtime.r3trans.isTransportValid(transport.binaries.data);
|
|
33
33
|
if (valid) {
|
|
34
|
-
|
|
34
|
+
trm_commons_1.Logger.log(`Transport ${transport.trkorr} is valid.`, true);
|
|
35
35
|
}
|
|
36
36
|
else {
|
|
37
|
-
|
|
37
|
+
trm_commons_1.Logger.error(`Transport ${transport.trkorr} is invalid.`, true);
|
|
38
38
|
throw new Error(`Package contains invalid transports`);
|
|
39
39
|
}
|
|
40
40
|
}
|
|
@@ -43,32 +43,32 @@ exports.checkTransports = {
|
|
|
43
43
|
const aLangTransports = aTransports.filter(o => o.type === transport_1.TrmTransportIdentifier.LANG);
|
|
44
44
|
const aCustTransports = aTransports.filter(o => o.type === transport_1.TrmTransportIdentifier.CUST);
|
|
45
45
|
if (aDevcTransports.length !== 1) {
|
|
46
|
-
|
|
46
|
+
trm_commons_1.Logger.error(`Zero or multiple DEVC transports found`, true);
|
|
47
47
|
throw new Error(`Unexpected content in package.`);
|
|
48
48
|
}
|
|
49
49
|
else {
|
|
50
50
|
context.runtime.packageTransports.devc.binaries = aDevcTransports[0];
|
|
51
|
-
|
|
51
|
+
trm_commons_1.Logger.log(`DEVC transport is ${context.runtime.packageTransports.devc.binaries.trkorr}.`, true);
|
|
52
52
|
if (context.rawInput.installData.installDevclass.keepOriginal) {
|
|
53
53
|
checkExistance.push(context.runtime.packageTransports.devc.binaries.trkorr);
|
|
54
54
|
}
|
|
55
55
|
}
|
|
56
56
|
if (aTadirTransports.length !== 1) {
|
|
57
|
-
|
|
57
|
+
trm_commons_1.Logger.error(`Zero or multiple TADIR transports found`, true);
|
|
58
58
|
throw new Error(`Unexpected content in package.`);
|
|
59
59
|
}
|
|
60
60
|
else {
|
|
61
61
|
context.runtime.packageTransports.tadir.binaries = aTadirTransports[0];
|
|
62
|
-
|
|
62
|
+
trm_commons_1.Logger.log(`TADIR transport is ${context.runtime.packageTransports.tadir.binaries.trkorr}.`, true);
|
|
63
63
|
checkExistance.push(context.runtime.packageTransports.tadir.binaries.trkorr);
|
|
64
64
|
const tadirE071 = (0, commons_1.normalize)(yield context.runtime.r3trans.getTableEntries(context.runtime.packageTransports.tadir.binaries.binaries.data, 'E071'));
|
|
65
|
-
|
|
65
|
+
trm_commons_1.Logger.log(`TADIR E071: ${JSON.stringify(tadirE071)}`, true);
|
|
66
66
|
context.runtime.packageTransportsData.e071 = context.runtime.packageTransportsData.e071.concat(tadirE071);
|
|
67
67
|
}
|
|
68
68
|
if (aLangTransports.length > 0) {
|
|
69
69
|
if (context.rawInput.installData.import.noLang === undefined) {
|
|
70
70
|
if (!context.rawInput.contextData.noInquirer) {
|
|
71
|
-
context.rawInput.installData.import.noLang = !(yield
|
|
71
|
+
context.rawInput.installData.import.noLang = !(yield trm_commons_2.Inquirer.prompt({
|
|
72
72
|
type: `confirm`,
|
|
73
73
|
name: `noLang`,
|
|
74
74
|
message: `Import translations transport?`,
|
|
@@ -78,23 +78,23 @@ exports.checkTransports = {
|
|
|
78
78
|
}
|
|
79
79
|
if (!context.rawInput.installData.import.noLang) {
|
|
80
80
|
if (aLangTransports.length !== 1) {
|
|
81
|
-
|
|
81
|
+
trm_commons_1.Logger.error(`Multiple LANG transports found`, true);
|
|
82
82
|
throw new Error(`Unexpected content in package.`);
|
|
83
83
|
}
|
|
84
84
|
context.runtime.packageTransports.lang.binaries = aLangTransports[0];
|
|
85
|
-
|
|
85
|
+
trm_commons_1.Logger.log(`LANG transport is ${context.runtime.packageTransports.lang.binaries.trkorr}.`, true);
|
|
86
86
|
if (!context.rawInput.installData.import.noLang) {
|
|
87
87
|
checkExistance.push(context.runtime.packageTransports.lang.binaries.trkorr);
|
|
88
88
|
}
|
|
89
89
|
const langE071 = (0, commons_1.normalize)(yield context.runtime.r3trans.getTableEntries(context.runtime.packageTransports.lang.binaries.binaries.data, 'E071'));
|
|
90
|
-
|
|
90
|
+
trm_commons_1.Logger.log(`LANG E071: ${JSON.stringify(langE071)}`, true);
|
|
91
91
|
context.runtime.packageTransportsData.e071 = context.runtime.packageTransportsData.e071.concat(langE071);
|
|
92
92
|
}
|
|
93
93
|
}
|
|
94
94
|
if (aCustTransports.length > 0) {
|
|
95
95
|
if (context.rawInput.installData.import.noCust === undefined) {
|
|
96
96
|
if (!context.rawInput.contextData.noInquirer) {
|
|
97
|
-
context.rawInput.installData.import.noCust = !(yield
|
|
97
|
+
context.rawInput.installData.import.noCust = !(yield trm_commons_2.Inquirer.prompt({
|
|
98
98
|
type: `confirm`,
|
|
99
99
|
name: `noCust`,
|
|
100
100
|
message: `Import customizing transport?`,
|
|
@@ -104,16 +104,16 @@ exports.checkTransports = {
|
|
|
104
104
|
}
|
|
105
105
|
if (!context.rawInput.installData.import.noCust) {
|
|
106
106
|
if (aCustTransports.length !== 1) {
|
|
107
|
-
|
|
107
|
+
trm_commons_1.Logger.error(`Multiple CUST transports found`, true);
|
|
108
108
|
throw new Error(`Unexpected content in package.`);
|
|
109
109
|
}
|
|
110
110
|
context.runtime.packageTransports.cust.binaries = aCustTransports[0];
|
|
111
|
-
|
|
111
|
+
trm_commons_1.Logger.log(`CUST transport is ${context.runtime.packageTransports.cust.binaries.trkorr}.`, true);
|
|
112
112
|
if (!context.rawInput.installData.import.noCust) {
|
|
113
113
|
checkExistance.push(context.runtime.packageTransports.cust.binaries.trkorr);
|
|
114
114
|
}
|
|
115
115
|
const custE071 = (0, commons_1.normalize)(yield context.runtime.r3trans.getTableEntries(context.runtime.packageTransports.cust.binaries.binaries.data, 'E071'));
|
|
116
|
-
|
|
116
|
+
trm_commons_1.Logger.log(`CUST E071: ${JSON.stringify(custE071)}`, true);
|
|
117
117
|
context.runtime.packageTransportsData.e071 = context.runtime.packageTransportsData.e071.concat(custE071);
|
|
118
118
|
}
|
|
119
119
|
}
|
|
@@ -121,45 +121,45 @@ exports.checkTransports = {
|
|
|
121
121
|
throw new Error(`Package has undeclared devclass.`);
|
|
122
122
|
}
|
|
123
123
|
var devcE071 = (0, commons_1.normalize)(yield context.runtime.r3trans.getTableEntries(context.runtime.packageTransports.devc.binaries.binaries.data, 'E071'));
|
|
124
|
-
|
|
124
|
+
trm_commons_1.Logger.log(`DEVC E071: ${JSON.stringify(devcE071)}`, true);
|
|
125
125
|
devcE071 = devcE071.filter(o => o.pgmid === 'R3TR' && o.object === 'DEVC');
|
|
126
126
|
if (devcE071.length === 0) {
|
|
127
127
|
throw new Error(`Package has no devclass.`);
|
|
128
128
|
}
|
|
129
129
|
context.runtime.packageTransportsData.e071 = context.runtime.packageTransportsData.e071.concat(devcE071);
|
|
130
130
|
context.runtime.installData.entries = context.runtime.packageTransportsData.e071;
|
|
131
|
-
|
|
131
|
+
trm_commons_1.Logger.loading(`Checking if ${checkExistance.length} transports exist before importing them`, true);
|
|
132
132
|
for (const trkorr of checkExistance) {
|
|
133
133
|
const oTransport = new transport_1.Transport(trkorr);
|
|
134
134
|
const e070 = yield oTransport.getE070();
|
|
135
135
|
if (e070) {
|
|
136
|
-
|
|
136
|
+
trm_commons_1.Logger.warning(`${trkorr} already exists in system!`, true);
|
|
137
137
|
const trmRelevant = yield oTransport.isTrmRelevant();
|
|
138
138
|
const linkedPackage = yield oTransport.getLinkedPackage();
|
|
139
139
|
if (linkedPackage) {
|
|
140
|
-
|
|
140
|
+
trm_commons_1.Logger.log(`${trkorr} package is ${linkedPackage.packageName}`, true);
|
|
141
141
|
if (linkedPackage.compareName(context.runtime.remotePackageData.trmManifest.name) && linkedPackage.compareRegistry(context.runtime.registry)) {
|
|
142
|
-
|
|
142
|
+
trm_commons_1.Logger.log(`${trkorr} same package (updating?)`, true);
|
|
143
143
|
}
|
|
144
144
|
else {
|
|
145
|
-
|
|
145
|
+
trm_commons_1.Logger.log(`${trkorr} is linked to another package, will later be migrated`, true);
|
|
146
146
|
context.runtime.generatedData.migrations.push(oTransport);
|
|
147
147
|
context.runtime.generatedData.tmsTxtRefresh.push(oTransport);
|
|
148
148
|
}
|
|
149
149
|
}
|
|
150
150
|
else if (trmRelevant) {
|
|
151
|
-
|
|
151
|
+
trm_commons_1.Logger.log(`${trkorr} is TRM relevant but no linked package (could be DEVC, LANG etc..). No migration, just tms refresh`, true);
|
|
152
152
|
context.runtime.generatedData.tmsTxtRefresh.push(oTransport);
|
|
153
153
|
}
|
|
154
154
|
else {
|
|
155
155
|
if (yield oTransport.isReleased()) {
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
156
|
+
trm_commons_1.Logger.warning(`Transport ${trkorr} already exists in target system ${systemConnector_1.SystemConnector.getDest()}`);
|
|
157
|
+
trm_commons_1.Logger.warning(`If you continue, TRM will replace the content of transport ${trkorr} with the content of the transport with the same number of package "${context.runtime.remotePackageData.trmManifest.name}".`);
|
|
158
|
+
trm_commons_1.Logger.warning(`All of the content of the existing transport will remain untouched, however you need to manually create a new transport if you want to use it again in the future.`);
|
|
159
159
|
if (!context.rawInput.installData.import.replaceExistingTransports) {
|
|
160
160
|
var continueInstall;
|
|
161
161
|
if (!context.rawInput.contextData.noInquirer) {
|
|
162
|
-
continueInstall = (yield
|
|
162
|
+
continueInstall = (yield trm_commons_2.Inquirer.prompt({
|
|
163
163
|
name: `continue`,
|
|
164
164
|
message: `Continue install?`,
|
|
165
165
|
type: `confirm`,
|
|
@@ -183,7 +183,7 @@ exports.checkTransports = {
|
|
|
183
183
|
}
|
|
184
184
|
}
|
|
185
185
|
else {
|
|
186
|
-
|
|
186
|
+
trm_commons_1.Logger.success(`${trkorr} does not exist in system.`, true);
|
|
187
187
|
}
|
|
188
188
|
}
|
|
189
189
|
})
|
|
@@ -10,31 +10,38 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.executePostActivities = void 0;
|
|
13
|
-
const
|
|
13
|
+
const trm_commons_1 = require("trm-commons");
|
|
14
14
|
const manifest_1 = require("../../manifest");
|
|
15
|
+
const commons_1 = require("../../commons");
|
|
15
16
|
exports.executePostActivities = {
|
|
16
17
|
name: 'execute-post-activities',
|
|
17
18
|
filter: (context) => __awaiter(void 0, void 0, void 0, function* () {
|
|
18
19
|
if (context.rawInput.installData.skipPostActivities) {
|
|
19
|
-
|
|
20
|
+
trm_commons_1.Logger.log(`Skipping post activities (user input)`, true);
|
|
20
21
|
return false;
|
|
21
22
|
}
|
|
22
23
|
else {
|
|
23
24
|
if (context.runtime.remotePackageData.trmManifest.postActivities && context.runtime.remotePackageData.trmManifest.postActivities.length > 0) {
|
|
24
|
-
|
|
25
|
+
if (commons_1.TrmServerUpgrade.getInstance().executePostActivities()) {
|
|
26
|
+
return true;
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
trm_commons_1.Logger.warning(`Coudln't execute post activities! After trm-server upgrade, run them manually!`, true);
|
|
30
|
+
return false;
|
|
31
|
+
}
|
|
25
32
|
}
|
|
26
33
|
else {
|
|
27
|
-
|
|
34
|
+
trm_commons_1.Logger.log(`Skipping post activities (none defined)`, true);
|
|
28
35
|
return false;
|
|
29
36
|
}
|
|
30
37
|
}
|
|
31
38
|
}),
|
|
32
39
|
run: (context) => __awaiter(void 0, void 0, void 0, function* () {
|
|
33
|
-
|
|
40
|
+
trm_commons_1.Logger.log('Execute post activities step', true);
|
|
34
41
|
var counter = 0;
|
|
35
42
|
for (var data of context.runtime.remotePackageData.trmManifest.postActivities) {
|
|
36
43
|
counter++;
|
|
37
|
-
|
|
44
|
+
trm_commons_1.Logger.setPrefix(`(${counter}/${context.runtime.remotePackageData.trmManifest.postActivities.length}) `);
|
|
38
45
|
try {
|
|
39
46
|
if (Array.isArray(data.parameters)) {
|
|
40
47
|
data.parameters.forEach(param => {
|
|
@@ -54,9 +61,9 @@ exports.executePostActivities = {
|
|
|
54
61
|
yield postActivity.execute();
|
|
55
62
|
}
|
|
56
63
|
catch (e) {
|
|
57
|
-
|
|
64
|
+
trm_commons_1.Logger.error(`Failed execution of post activity: ${e.toString()}`);
|
|
58
65
|
}
|
|
59
|
-
|
|
66
|
+
trm_commons_1.Logger.removePrefix();
|
|
60
67
|
}
|
|
61
68
|
})
|
|
62
69
|
};
|
|
@@ -10,14 +10,15 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.generateDevclass = void 0;
|
|
13
|
-
const
|
|
13
|
+
const trm_commons_1 = require("trm-commons");
|
|
14
14
|
const commons_1 = require("../../commons");
|
|
15
15
|
const systemConnector_1 = require("../../systemConnector");
|
|
16
|
+
const TrmServerUpgradeService_1 = require("../../commons/TrmServerUpgradeService");
|
|
16
17
|
exports.generateDevclass = {
|
|
17
18
|
name: 'generate-devclass',
|
|
18
19
|
filter: (context) => __awaiter(void 0, void 0, void 0, function* () {
|
|
19
20
|
if (context.rawInput.installData.installDevclass.keepOriginal) {
|
|
20
|
-
|
|
21
|
+
trm_commons_1.Logger.log(`Skipping generate devclass devclass (user input)`, true);
|
|
21
22
|
return false;
|
|
22
23
|
}
|
|
23
24
|
else {
|
|
@@ -26,26 +27,26 @@ exports.generateDevclass = {
|
|
|
26
27
|
}),
|
|
27
28
|
run: (context) => __awaiter(void 0, void 0, void 0, function* () {
|
|
28
29
|
var _a, _b;
|
|
29
|
-
|
|
30
|
-
|
|
30
|
+
trm_commons_1.Logger.log('Generate devclass step', true);
|
|
31
|
+
trm_commons_1.Logger.loading(`Checking ABAP packages...`);
|
|
31
32
|
var generate = [];
|
|
32
33
|
for (const replacement of context.rawInput.installData.installDevclass.replacements) {
|
|
33
|
-
|
|
34
|
+
trm_commons_1.Logger.loading(`Checking existance of devclass ${replacement.installDevclass}...`, true);
|
|
34
35
|
const oDevclass = yield systemConnector_1.SystemConnector.getDevclass(replacement.installDevclass);
|
|
35
36
|
if (oDevclass) {
|
|
36
|
-
|
|
37
|
+
trm_commons_1.Logger.log(`Devclass ${replacement.installDevclass} exists, skipping generation`, true);
|
|
37
38
|
}
|
|
38
39
|
else {
|
|
39
|
-
|
|
40
|
+
trm_commons_1.Logger.log(`Devclass ${replacement.installDevclass} doesn't exist, will be generated`, true);
|
|
40
41
|
generate.push(replacement.installDevclass);
|
|
41
42
|
}
|
|
42
43
|
}
|
|
43
44
|
if (generate.length > 0) {
|
|
44
45
|
const dlvunit = context.runtime.installData.namespace === '$' ? 'LOCAL' : 'HOME';
|
|
45
46
|
for (const devclass of generate) {
|
|
46
|
-
|
|
47
|
+
trm_commons_1.Logger.loading(`Creating package ${devclass}...`);
|
|
47
48
|
const originalDevclass = context.rawInput.installData.installDevclass.replacements.find(o => o.installDevclass === devclass).originalDevclass;
|
|
48
|
-
|
|
49
|
+
trm_commons_1.Logger.log(`Original devclass ${originalDevclass}`, true);
|
|
49
50
|
const ctext = ((_a = context.runtime.packageTransportsData.tdevct.find(o => o.devclass === originalDevclass)) === null || _a === void 0 ? void 0 : _a.ctext) || `TRM ${context.rawInput.packageData.name}`;
|
|
50
51
|
yield systemConnector_1.SystemConnector.createPackage({
|
|
51
52
|
as4user: systemConnector_1.SystemConnector.getLogonUser(),
|
|
@@ -66,7 +67,7 @@ exports.generateDevclass = {
|
|
|
66
67
|
}
|
|
67
68
|
}
|
|
68
69
|
}
|
|
69
|
-
|
|
70
|
+
trm_commons_1.Logger.loading(`Updating ABAP packages hierarchy...`);
|
|
70
71
|
const aDummyTdevc = [];
|
|
71
72
|
const originalPackageHierarchy = (0, commons_1.getPackageHierarchy)(context.runtime.packageTransportsData.tdevc);
|
|
72
73
|
for (const packageReplacement of context.rawInput.installData.installDevclass.replacements) {
|
|
@@ -97,7 +98,12 @@ exports.generateDevclass = {
|
|
|
97
98
|
const installParentCl = (_b = context.rawInput.installData.installDevclass.replacements.find(o => o.originalDevclass === originalParentCl)) === null || _b === void 0 ? void 0 : _b.installDevclass;
|
|
98
99
|
if (installParentCl) {
|
|
99
100
|
if (!installRoot) {
|
|
100
|
-
|
|
101
|
+
try {
|
|
102
|
+
yield systemConnector_1.SystemConnector.setPackageSuperpackage(packageReplacement.installDevclass, installParentCl);
|
|
103
|
+
}
|
|
104
|
+
catch (e) {
|
|
105
|
+
TrmServerUpgradeService_1.TrmServerUpgrade.getInstance().throwError(e);
|
|
106
|
+
}
|
|
101
107
|
}
|
|
102
108
|
}
|
|
103
109
|
}
|