trm-core 7.5.6 → 8.0.1

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.
Files changed (61) hide show
  1. package/changelog.txt +15 -0
  2. package/dist/actions/checkPackageDependencies/analyze.js +5 -51
  3. package/dist/actions/checkPackageDependencies/index.d.ts +2 -5
  4. package/dist/actions/checkPackageDependencies/init.js +5 -7
  5. package/dist/actions/checkSapEntries/analyze.js +2 -2
  6. package/dist/actions/checkSapEntries/index.d.ts +2 -2
  7. package/dist/actions/checkSapEntries/init.js +1 -4
  8. package/dist/actions/findDependencies/index.d.ts +0 -2
  9. package/dist/actions/findDependencies/setTrmDependencies.js +11 -55
  10. package/dist/actions/install/addNamespace.js +14 -9
  11. package/dist/actions/install/checkAlreadyInstalled.js +2 -2
  12. package/dist/actions/install/checkDependencies.js +2 -16
  13. package/dist/actions/install/checkSapEntries.js +1 -1
  14. package/dist/actions/install/checkTransports.js +2 -2
  15. package/dist/actions/install/executePostActivities.js +3 -3
  16. package/dist/actions/install/generateInstallTransport.js +40 -5
  17. package/dist/actions/install/index.d.ts +6 -10
  18. package/dist/actions/install/index.js +2 -4
  19. package/dist/actions/install/init.js +37 -45
  20. package/dist/actions/install/installDependencies.js +0 -1
  21. package/dist/actions/install/setPackageIntegrity.js +1 -1
  22. package/dist/actions/install/setTrmServerUpgradeService.js +1 -1
  23. package/dist/actions/installDependency/findInstallRelease.js +18 -18
  24. package/dist/actions/installDependency/index.d.ts +0 -1
  25. package/dist/actions/installDependency/init.js +0 -7
  26. package/dist/actions/installDependency/installRelease.js +0 -1
  27. package/dist/actions/publish/findDependencies.js +0 -12
  28. package/dist/actions/publish/generateCustTransport.js +0 -3
  29. package/dist/actions/publish/generateDevcTransport.js +0 -4
  30. package/dist/actions/publish/generateLangTransport.js +0 -3
  31. package/dist/actions/publish/getSourceCode.js +1 -1
  32. package/dist/actions/publish/index.d.ts +1 -1
  33. package/dist/actions/publish/init.js +71 -95
  34. package/dist/actions/publish/setManifestValues.js +4 -13
  35. package/dist/commons/getAxiosInstance.d.ts +1 -1
  36. package/dist/manifest/Manifest.d.ts +2 -0
  37. package/dist/manifest/Manifest.js +47 -17
  38. package/dist/manifest/TrmManifestDependency.d.ts +0 -1
  39. package/dist/registry/AbstractRegistry.d.ts +7 -7
  40. package/dist/registry/FileSystem.d.ts +7 -6
  41. package/dist/registry/FileSystem.js +35 -34
  42. package/dist/registry/RegistryProvider.js +4 -4
  43. package/dist/registry/{Registry.d.ts → RegistryV2.d.ts} +11 -10
  44. package/dist/registry/{Registry.js → RegistryV2.js} +146 -74
  45. package/dist/registry/index.d.ts +1 -1
  46. package/dist/registry/index.js +1 -1
  47. package/dist/systemConnector/ISystemConnectorBase.d.ts +1 -1
  48. package/dist/systemConnector/SystemConnector.d.ts +1 -1
  49. package/dist/systemConnector/SystemConnector.js +3 -3
  50. package/dist/systemConnector/SystemConnectorBase.d.ts +1 -1
  51. package/dist/systemConnector/SystemConnectorBase.js +33 -11
  52. package/dist/transport/Transport.d.ts +4 -1
  53. package/dist/transport/Transport.js +54 -31
  54. package/dist/trmPackage/TrmArtifact.js +3 -5
  55. package/dist/trmPackage/TrmPackage.d.ts +0 -16
  56. package/dist/trmPackage/TrmPackage.js +10 -133
  57. package/dist/validators/validatePackageVisibility.d.ts +1 -1
  58. package/dist/validators/validatePackageVisibility.js +2 -16
  59. package/package.json +4 -3
  60. package/dist/actions/install/checkIntegrity.d.ts +0 -3
  61. package/dist/actions/install/checkIntegrity.js +0 -42
package/changelog.txt CHANGED
@@ -8,6 +8,21 @@ Legend
8
8
  + : added
9
9
  - : removed
10
10
 
11
+ 2025-10-24 v8.0.1
12
+ -------------------
13
+ * fix transport relevant for dependency detection issue
14
+
15
+ 2025-10-21 v8.0.0
16
+ -------------------
17
+ ! implement registry v2
18
+ - misuse of integrity
19
+ * error messages on publish rollback
20
+ ! trm-registry-types ^2.0.0
21
+ ! transport rc read
22
+ ! get workbench method
23
+ + handle install transport for same package local/remote
24
+ ! manifest.json keys order
25
+
11
26
  2025-10-01 v7.5.5
12
27
  -------------------
13
28
  ! trm-commons ^3.4.2
@@ -14,7 +14,6 @@ const trm_commons_1 = require("trm-commons");
14
14
  const trmPackage_1 = require("../../trmPackage");
15
15
  const registry_1 = require("../../registry");
16
16
  const semver_1 = require("semver");
17
- const systemConnector_1 = require("../../systemConnector");
18
17
  exports.analyze = {
19
18
  name: 'analyze',
20
19
  filter: (context) => __awaiter(void 0, void 0, void 0, function* () {
@@ -22,15 +21,15 @@ exports.analyze = {
22
21
  return true;
23
22
  }
24
23
  else {
25
- trm_commons_1.Logger.info(`Package ${context.rawInput.packageData.package.packageName} has no TRM package dependencies`, !context.rawInput.printOptions.information);
24
+ trm_commons_1.Logger.info(`Package ${context.rawInput.packageData.manifest.name} has no TRM package dependencies`, !context.rawInput.printOptions.information);
26
25
  return false;
27
26
  }
28
27
  }),
29
28
  run: (context) => __awaiter(void 0, void 0, void 0, function* () {
30
29
  trm_commons_1.Logger.log('Analyze step', true);
31
- trm_commons_1.Logger.info(`Package ${context.rawInput.packageData.package.packageName} has ${context.output.dependencies.length} TRM package dependencies`, !context.rawInput.printOptions.information);
30
+ trm_commons_1.Logger.info(`Package ${context.rawInput.packageData.manifest.name} has ${context.output.dependencies.length} TRM package dependencies`, !context.rawInput.printOptions.information);
32
31
  var table = {
33
- header: ['Dependency', 'Registry', 'Dependency range', 'Version on system', 'Version status', 'Integrity status'],
32
+ header: ['Dependency', 'Registry', 'Dependency range', 'Version on system', 'Version status'],
34
33
  data: []
35
34
  };
36
35
  var tableData;
@@ -55,23 +54,6 @@ exports.analyze = {
55
54
  tableData.push('ERR!');
56
55
  context.runtime.dependenciesStatus.badVersion.push(dependency);
57
56
  }
58
- try {
59
- const installedPackageIntegrity = yield systemConnector_1.SystemConnector.getPackageIntegrity(systemInstalledPackage);
60
- if (installedPackageIntegrity === dependency.integrity) {
61
- tableData.push('Safe');
62
- context.runtime.dependenciesStatus.goodIntegrity.push(dependency);
63
- }
64
- else {
65
- tableData.push('Unsafe');
66
- context.runtime.dependenciesStatus.badIntegrity.push(dependency);
67
- }
68
- }
69
- catch (e) {
70
- tableData.push('Unknown');
71
- context.runtime.dependenciesStatus.badIntegrity.push(dependency);
72
- trm_commons_1.Logger.error(e.toString(), true);
73
- trm_commons_1.Logger.error(`Couldn't retrieve package integrity`, true);
74
- }
75
57
  table.data.push(tableData);
76
58
  }
77
59
  trm_commons_1.Logger.table(table.header, table.data, !context.rawInput.printOptions.dependencyStatus);
@@ -83,8 +65,7 @@ exports.analyze = {
83
65
  else {
84
66
  context.output.dependencyStatus.push({
85
67
  dependency: o,
86
- match: true,
87
- safe: null
68
+ match: true
88
69
  });
89
70
  }
90
71
  });
@@ -96,34 +77,7 @@ exports.analyze = {
96
77
  else {
97
78
  context.output.dependencyStatus.push({
98
79
  dependency: o,
99
- match: false,
100
- safe: null
101
- });
102
- }
103
- });
104
- context.runtime.dependenciesStatus.goodIntegrity.forEach(o => {
105
- const i = context.output.dependencyStatus.findIndex(k => k.dependency.name === o.name && k.dependency.registry === o.registry);
106
- if (i >= 0) {
107
- context.output.dependencyStatus[i].safe = true;
108
- }
109
- else {
110
- context.output.dependencyStatus.push({
111
- dependency: o,
112
- match: null,
113
- safe: true
114
- });
115
- }
116
- });
117
- context.runtime.dependenciesStatus.badIntegrity.forEach(o => {
118
- const i = context.output.dependencyStatus.findIndex(k => k.dependency.name === o.name && k.dependency.registry === o.registry);
119
- if (i >= 0) {
120
- context.output.dependencyStatus[i].safe = false;
121
- }
122
- else {
123
- context.output.dependencyStatus.push({
124
- dependency: o,
125
- match: null,
126
- safe: false
80
+ match: false
127
81
  });
128
82
  }
129
83
  });
@@ -1,12 +1,12 @@
1
1
  import { TrmPackage } from "../../trmPackage";
2
2
  import { IActionContext } from "../commons";
3
- import { TrmManifestDependency } from "../../manifest";
3
+ import { TrmManifest, TrmManifestDependency } from "../../manifest";
4
4
  export interface CheckPackageDependenciesActionInput {
5
5
  contextData?: {
6
6
  systemPackages?: TrmPackage[];
7
7
  };
8
8
  packageData: {
9
- package: TrmPackage;
9
+ manifest: TrmManifest;
10
10
  };
11
11
  printOptions?: {
12
12
  dependencyStatus?: boolean;
@@ -17,8 +17,6 @@ type WorkflowRuntime = {
17
17
  dependenciesStatus: {
18
18
  goodVersion: TrmManifestDependency[];
19
19
  badVersion: TrmManifestDependency[];
20
- goodIntegrity: TrmManifestDependency[];
21
- badIntegrity: TrmManifestDependency[];
22
20
  };
23
21
  };
24
22
  export type CheckPackageDependenciesActionOutput = {
@@ -26,7 +24,6 @@ export type CheckPackageDependenciesActionOutput = {
26
24
  dependencyStatus: {
27
25
  dependency: TrmManifestDependency;
28
26
  match: boolean;
29
- safe: boolean;
30
27
  }[];
31
28
  };
32
29
  export interface CheckPackageDependenciesWorkflowContext extends IActionContext {
@@ -22,17 +22,15 @@ exports.init = {
22
22
  context.runtime = {
23
23
  dependenciesStatus: {
24
24
  goodVersion: [],
25
- badVersion: [],
26
- goodIntegrity: [],
27
- badIntegrity: []
25
+ badVersion: []
28
26
  }
29
27
  };
30
- if (context.rawInput.packageData.package.manifest) {
31
- const manifest = context.rawInput.packageData.package.manifest.get();
32
- context.output.dependencies = manifest.dependencies || [];
33
- }
28
+ context.output.dependencies = context.rawInput.packageData.manifest.dependencies || [];
34
29
  if (!context.rawInput.printOptions) {
35
30
  context.rawInput.printOptions = {};
36
31
  }
32
+ if (!context.rawInput.contextData) {
33
+ context.rawInput.contextData = {};
34
+ }
37
35
  })
38
36
  };
@@ -19,7 +19,7 @@ exports.analyze = {
19
19
  return true;
20
20
  }
21
21
  else {
22
- trm_commons_1.Logger.info(`Package ${context.rawInput.packageData.package.packageName} has no SAP entries`, !context.rawInput.printOptions.information);
22
+ trm_commons_1.Logger.info(`Package ${context.rawInput.packageData.manifest.name} has no SAP entries`, !context.rawInput.printOptions.information);
23
23
  return false;
24
24
  }
25
25
  }),
@@ -43,7 +43,7 @@ exports.analyze = {
43
43
  fields: aFields
44
44
  });
45
45
  });
46
- trm_commons_1.Logger.info(`Package ${context.rawInput.packageData.package.packageName} has ${entriesCount} SAP entries`, !context.rawInput.printOptions.information);
46
+ trm_commons_1.Logger.info(`Package ${context.rawInput.packageData.manifest.name} has ${entriesCount} SAP entries`, !context.rawInput.printOptions.information);
47
47
  if (entriesCount === 0) {
48
48
  return;
49
49
  }
@@ -1,7 +1,7 @@
1
- import { TrmPackage } from "../../trmPackage";
1
+ import { TrmManifest } from "../../manifest";
2
2
  export interface CheckSapEntriesActionInput {
3
3
  packageData: {
4
- package: TrmPackage;
4
+ manifest: TrmManifest;
5
5
  };
6
6
  printOptions?: {
7
7
  entriesStatus?: boolean;
@@ -26,10 +26,7 @@ exports.init = {
26
26
  },
27
27
  missingTables: []
28
28
  };
29
- if (context.rawInput.packageData.package.manifest) {
30
- const manifest = context.rawInput.packageData.package.manifest.get();
31
- context.output.sapEntries = manifest.sapEntries || {};
32
- }
29
+ context.output.sapEntries = context.rawInput.packageData.manifest.sapEntries || {};
33
30
  if (!context.rawInput.printOptions) {
34
31
  context.rawInput.printOptions = {};
35
32
  }
@@ -29,8 +29,6 @@ export type SapEntriesDependency = {
29
29
  export type TrmDependency = {
30
30
  devclass: DEVCLASS;
31
31
  package: TrmPackage;
32
- ignoreNoIntegrity: boolean;
33
- integrity?: string;
34
32
  sapEntries: SapEntriesDependency[];
35
33
  };
36
34
  type WorkflowRuntime = {
@@ -55,31 +55,15 @@ const _getTadirDependencies = (tadirDependencies) => __awaiter(void 0, void 0, v
55
55
  var index = 0;
56
56
  if (!trmServerPackage) {
57
57
  try {
58
- const systemTrmServerPackage = yield systemConnector_1.SystemConnector.getTrmServerPackage();
59
- if (systemTrmServerPackage.manifest) {
60
- trmServerPackage = { package: systemTrmServerPackage };
61
- }
62
- else {
63
- trmServerPackage = {};
64
- }
65
- }
66
- catch (e) {
67
- trmServerPackage = {};
58
+ trmServerPackage = yield systemConnector_1.SystemConnector.getTrmServerPackage();
68
59
  }
60
+ catch (_a) { }
69
61
  }
70
62
  if (!trmRestPackage) {
71
63
  try {
72
- const systemTrmRestPackage = yield systemConnector_1.SystemConnector.getTrmRestPackage();
73
- if (systemTrmRestPackage.manifest) {
74
- trmRestPackage = { package: systemTrmRestPackage };
75
- }
76
- else {
77
- trmRestPackage = {};
78
- }
79
- }
80
- catch (e) {
81
- trmRestPackage = {};
64
+ trmRestPackage = yield systemConnector_1.SystemConnector.getTrmRestPackage();
82
65
  }
66
+ catch (_b) { }
83
67
  }
84
68
  for (const tadirDependency of tadirDependencies) {
85
69
  index++;
@@ -94,42 +78,23 @@ const _getTadirDependencies = (tadirDependencies) => __awaiter(void 0, void 0, v
94
78
  var latestTransport;
95
79
  var devclass;
96
80
  var trmPackage;
97
- var integrity;
98
81
  var arrayIndex1;
99
82
  var arrayIndex2;
100
83
  var append;
101
- var ignoreNoIntegrity;
102
84
  trmPackage = null;
103
- if (trmServerPackage.package && trmServerPackage.package.getDevclass() === tadir.devclass) {
85
+ if (trmServerPackage && trmServerPackage.getDevclass() === tadir.devclass) {
104
86
  trm_commons_1.Logger.log(`Dependency with TRM SERVER package`, true);
105
- devclass = trmServerPackage.package.getDevclass();
106
- trmPackage = trmServerPackage.package;
107
- if (trmServerPackage.integrity) {
108
- integrity = trmServerPackage.integrity;
109
- }
110
- else {
111
- integrity = yield systemConnector_1.SystemConnector.getPackageIntegrity(trmPackage);
112
- trmServerPackage.integrity = integrity;
113
- }
87
+ devclass = trmServerPackage.getDevclass();
88
+ trmPackage = trmServerPackage;
114
89
  append = true;
115
- ignoreNoIntegrity = true;
116
90
  }
117
- else if (trmRestPackage.package && trmRestPackage.package.getDevclass() === tadir.devclass) {
91
+ else if (trmRestPackage && trmRestPackage.getDevclass() === tadir.devclass) {
118
92
  trm_commons_1.Logger.log(`Dependency with TRM REST package`, true);
119
- devclass = trmRestPackage.package.getDevclass();
120
- trmPackage = trmRestPackage.package;
121
- if (trmRestPackage.integrity) {
122
- integrity = trmRestPackage.integrity;
123
- }
124
- else {
125
- integrity = yield systemConnector_1.SystemConnector.getPackageIntegrity(trmPackage);
126
- trmRestPackage.integrity = integrity;
127
- }
93
+ devclass = trmRestPackage.getDevclass();
94
+ trmPackage = trmRestPackage;
128
95
  append = true;
129
- ignoreNoIntegrity = true;
130
96
  }
131
97
  else {
132
- ignoreNoIntegrity = false;
133
98
  trm_commons_1.Logger.log(`Searching transports for object ${tadir.pgmid} ${tadir.object} ${tadir.objName}`, true);
134
99
  const allTransports = yield transport_1.Transport.getTransportsFromObject(tadir, transportsObjectCache);
135
100
  trm_commons_1.Logger.log(`Found ${allTransports.length} transports for object ${tadir.pgmid} ${tadir.object} ${tadir.objName}`, true);
@@ -160,23 +125,17 @@ const _getTadirDependencies = (tadirDependencies) => __awaiter(void 0, void 0, v
160
125
  if (latestTransport) {
161
126
  trm_commons_1.Logger.log(`Latest transport is ${latestTransport.trkorr}`, true);
162
127
  const iTransportsCache = transportsCache.findIndex(o => o.trkorr === latestTransport.trkorr);
163
- if (transportsCache[iTransportsCache].devclass && transportsCache[iTransportsCache].integrity) {
128
+ if (transportsCache[iTransportsCache].devclass) {
164
129
  trm_commons_1.Logger.log(`Transport ${latestTransport.trkorr} in cache, not reading again...`, true);
165
130
  devclass = transportsCache[iTransportsCache].devclass;
166
- integrity = transportsCache[iTransportsCache].integrity;
167
131
  }
168
132
  else {
169
133
  trmPackage = yield latestTransport.getLinkedPackage();
170
134
  const alreadyInArray = trmDependencies.find(o => o.package && trmPackage_1.TrmPackage.compare(o.package, trmPackage));
171
135
  if (alreadyInArray) {
172
136
  devclass = alreadyInArray.devclass;
173
- integrity = alreadyInArray.integrity;
174
137
  }
175
138
  else {
176
- integrity = yield systemConnector_1.SystemConnector.getPackageIntegrity(trmPackage);
177
- if (!integrity) {
178
- throw new Error(`Package "${trmPackage.packageName}", integrity not found!`);
179
- }
180
139
  try {
181
140
  devclass = yield latestTransport.getDevclass();
182
141
  }
@@ -185,7 +144,6 @@ const _getTadirDependencies = (tadirDependencies) => __awaiter(void 0, void 0, v
185
144
  }
186
145
  }
187
146
  transportsCache[iTransportsCache].devclass = devclass;
188
- transportsCache[iTransportsCache].integrity = integrity;
189
147
  }
190
148
  append = true;
191
149
  }
@@ -215,8 +173,6 @@ const _getTadirDependencies = (tadirDependencies) => __awaiter(void 0, void 0, v
215
173
  arrayIndex1 = trmDependencies.push({
216
174
  devclass,
217
175
  package: trmPackage,
218
- integrity,
219
- ignoreNoIntegrity,
220
176
  sapEntries: []
221
177
  });
222
178
  arrayIndex1--;
@@ -17,7 +17,6 @@ exports.addNamespace = {
17
17
  name: 'add-namespace',
18
18
  run: (context) => __awaiter(void 0, void 0, void 0, function* () {
19
19
  trm_commons_1.Logger.log('Add namespace step', true);
20
- context.runtime.rollback = true;
21
20
  var originalNamespace = (0, commons_1.getPackageNamespace)(context.runtime.originalData.hierarchy.devclass);
22
21
  trm_commons_1.Logger.log(`Package original namespace is ${originalNamespace}`, true);
23
22
  if (!context.rawInput.installData.installDevclass.keepOriginal && context.rawInput.installData.installDevclass.replacements.length > 0) {
@@ -30,6 +29,12 @@ exports.addNamespace = {
30
29
  trm_commons_1.Logger.log(`Package install namespace is ${context.runtime.installData.namespace}`, true);
31
30
  return;
32
31
  }
32
+ else {
33
+ if (context.rawInput.installData.installDevclass.skipNamespace) {
34
+ trm_commons_1.Logger.info(`Skipping install of namespace ${context.runtime.installData.namespace}`, false);
35
+ return;
36
+ }
37
+ }
33
38
  trm_commons_1.Logger.loading(`Checking namespace ${context.runtime.installData.namespace}...`);
34
39
  var namespace;
35
40
  const namespaceCheck = yield systemConnector_1.SystemConnector.getNamespace(context.runtime.installData.namespace);
@@ -80,15 +85,15 @@ exports.addNamespace = {
80
85
  }
81
86
  }
82
87
  else {
83
- if (context.runtime.remotePackageData.trmManifest.namespace) {
84
- replicense = context.runtime.remotePackageData.trmManifest.namespace.replicense;
85
- if (context.runtime.remotePackageData.trmManifest.namespace.texts && context.runtime.remotePackageData.trmManifest.namespace.texts.length > 0) {
86
- if (context.runtime.remotePackageData.trmManifest.namespace.texts.length === 1 || context.rawInput.contextData.noInquirer) {
88
+ if (context.runtime.remotePackageData.manifest.namespace) {
89
+ replicense = context.runtime.remotePackageData.manifest.namespace.replicense;
90
+ if (context.runtime.remotePackageData.manifest.namespace.texts && context.runtime.remotePackageData.manifest.namespace.texts.length > 0) {
91
+ if (context.runtime.remotePackageData.manifest.namespace.texts.length === 1 || context.rawInput.contextData.noInquirer) {
87
92
  texts = {
88
93
  namespace: context.runtime.installData.namespace,
89
- descriptn: context.runtime.remotePackageData.trmManifest.namespace.texts[0].description,
90
- owner: context.runtime.remotePackageData.trmManifest.namespace.texts[0].owner,
91
- spras: context.runtime.remotePackageData.trmManifest.namespace.texts[0].language
94
+ descriptn: context.runtime.remotePackageData.manifest.namespace.texts[0].description,
95
+ owner: context.runtime.remotePackageData.manifest.namespace.texts[0].owner,
96
+ spras: context.runtime.remotePackageData.manifest.namespace.texts[0].language
92
97
  };
93
98
  }
94
99
  else {
@@ -97,7 +102,7 @@ exports.addNamespace = {
97
102
  type: 'list',
98
103
  message: 'Choose namespace install text',
99
104
  name: 'choice',
100
- choices: context.runtime.remotePackageData.trmManifest.namespace.texts.map(o => {
105
+ choices: context.runtime.remotePackageData.manifest.namespace.texts.map(o => {
101
106
  return {
102
107
  name: `${o.language} ${o.description} ${o.owner}`,
103
108
  value: {
@@ -19,8 +19,8 @@ exports.checkAlreadyInstalled = {
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
- const trmManifest = context.runtime.remotePackageData.trmManifest;
23
- const installedPackage = installedPackages.find(o => manifest_1.Manifest.compare(o.manifest, manifest, false));
22
+ const trmManifest = context.runtime.remotePackageData.manifest;
23
+ const installedPackage = installedPackages.find(o => manifest_1.Manifest.compare(o.manifest, new manifest_1.Manifest(manifest), false));
24
24
  if (installedPackage) {
25
25
  const installVersion = trmManifest.version;
26
26
  const installedVersion = installedPackage.manifest.get().version;
@@ -28,7 +28,7 @@ exports.checkDependencies = {
28
28
  trm_commons_1.Logger.log('Check dependencies step', true);
29
29
  const inputData = {
30
30
  packageData: {
31
- package: context.runtime.remotePackageData.trmPackage
31
+ manifest: context.runtime.remotePackageData.manifest
32
32
  },
33
33
  contextData: {
34
34
  systemPackages: context.rawInput.contextData.systemPackages
@@ -50,20 +50,6 @@ exports.checkDependencies = {
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
- result.dependencyStatus.forEach(o => {
54
- if (!o.match) {
55
- context.runtime.dependenciesToInstall.push(o.dependency);
56
- }
57
- else {
58
- if (!o.safe) {
59
- if (context.rawInput.installData.checks.safe) {
60
- throw new Error(`Dependency "${o.dependency.name}" is installed, but integrity doesn't match.`);
61
- }
62
- else {
63
- trm_commons_1.Logger.warning(`Dependency "${o.dependency.name}" is installed, but integrity doesn't match.`);
64
- }
65
- }
66
- }
67
- });
53
+ context.runtime.dependenciesToInstall = result.dependencyStatus.filter(o => !o.match).map(k => k.dependency);
68
54
  })
69
55
  };
@@ -28,7 +28,7 @@ exports.checkSapEntries = {
28
28
  trm_commons_1.Logger.log('Check sap entries step', true);
29
29
  const inputData = {
30
30
  packageData: {
31
- package: context.runtime.remotePackageData.trmPackage
31
+ manifest: context.runtime.remotePackageData.manifest
32
32
  },
33
33
  printOptions: {
34
34
  entriesStatus: false,
@@ -138,7 +138,7 @@ exports.checkTransports = {
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
- if (linkedPackage.compareName(context.runtime.remotePackageData.trmManifest.name) && linkedPackage.compareRegistry(context.runtime.registry)) {
141
+ if (linkedPackage.compareName(context.runtime.remotePackageData.manifest.name) && linkedPackage.compareRegistry(context.runtime.registry)) {
142
142
  trm_commons_1.Logger.log(`${trkorr} same package (updating?)`, true);
143
143
  }
144
144
  else {
@@ -154,7 +154,7 @@ exports.checkTransports = {
154
154
  else {
155
155
  if (yield oTransport.isReleased()) {
156
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}".`);
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.manifest.name}".`);
158
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;
@@ -21,7 +21,7 @@ exports.executePostActivities = {
21
21
  return false;
22
22
  }
23
23
  else {
24
- if (context.runtime.remotePackageData.trmManifest.postActivities && context.runtime.remotePackageData.trmManifest.postActivities.length > 0) {
24
+ if (context.runtime.remotePackageData.manifest.postActivities && context.runtime.remotePackageData.manifest.postActivities.length > 0) {
25
25
  if (commons_1.TrmServerUpgrade.getInstance().executePostActivities()) {
26
26
  return true;
27
27
  }
@@ -39,9 +39,9 @@ exports.executePostActivities = {
39
39
  run: (context) => __awaiter(void 0, void 0, void 0, function* () {
40
40
  trm_commons_1.Logger.log('Execute post activities step', true);
41
41
  var counter = 0;
42
- for (var data of context.runtime.remotePackageData.trmManifest.postActivities) {
42
+ for (var data of context.runtime.remotePackageData.manifest.postActivities) {
43
43
  counter++;
44
- trm_commons_1.Logger.setPrefix(`(${counter}/${context.runtime.remotePackageData.trmManifest.postActivities.length}) `);
44
+ trm_commons_1.Logger.setPrefix(`(${counter}/${context.runtime.remotePackageData.manifest.postActivities.length}) `);
45
45
  try {
46
46
  if (Array.isArray(data.parameters)) {
47
47
  data.parameters.forEach(param => {
@@ -14,6 +14,9 @@ const trm_commons_1 = require("trm-commons");
14
14
  const commons_1 = require("../../commons");
15
15
  const systemConnector_1 = require("../../systemConnector");
16
16
  const transport_1 = require("../../transport");
17
+ const registry_1 = require("../../registry");
18
+ const trmPackage_1 = require("../../trmPackage");
19
+ const manifest_1 = require("../../manifest");
17
20
  exports.generateInstallTransport = {
18
21
  name: 'generate-install-transport',
19
22
  filter: (context) => __awaiter(void 0, void 0, void 0, function* () {
@@ -34,7 +37,39 @@ exports.generateInstallTransport = {
34
37
  }
35
38
  trm_commons_1.Logger.loading(`Checking install transport...`);
36
39
  if (context.runtime.update) {
37
- context.runtime.installData.transport = yield context.runtime.remotePackageData.trmPackage.getWbTransport();
40
+ context.runtime.installData.transport = yield (new trmPackage_1.TrmPackage(context.rawInput.packageData.name, context.rawInput.packageData.registry)).getWbTransport();
41
+ }
42
+ else {
43
+ if (!context.rawInput.contextData.noInquirer) {
44
+ var transports = yield systemConnector_1.SystemConnector.getWbTransports(context.rawInput.packageData.name);
45
+ if (context.runtime.registry.getRegistryType() !== registry_1.RegistryType.LOCAL) {
46
+ for (var i = transports.length - 1; i >= 0; i--) {
47
+ const linkedPackage = yield transports[i].getLinkedPackage();
48
+ if (linkedPackage.registry.getRegistryType() !== registry_1.RegistryType.LOCAL) {
49
+ transports.splice(i, 1);
50
+ }
51
+ }
52
+ }
53
+ if (transports.length > 0) {
54
+ const trkorr = (yield trm_commons_1.Inquirer.prompt({
55
+ name: 'trkorr',
56
+ message: `Found ${transports.length} install transport(s) that might be linked to ${context.rawInput.packageData.name}, do you want to use one of these?`,
57
+ type: 'select',
58
+ choices: transports.map(o => {
59
+ return {
60
+ name: o.trkorr,
61
+ value: o.trkorr
62
+ };
63
+ }).concat([{
64
+ name: 'Generate new',
65
+ value: null
66
+ }])
67
+ })).trkorr;
68
+ if (trkorr) {
69
+ context.runtime.installData.transport = transports.find(o => o.trkorr === trkorr);
70
+ }
71
+ }
72
+ }
38
73
  }
39
74
  if (context.runtime.installData.transport) {
40
75
  trm_commons_1.Logger.log(`Install transport (${context.runtime.installData.transport.trkorr}) already exists, won't create a new one.`, true);
@@ -54,10 +89,10 @@ exports.generateInstallTransport = {
54
89
  });
55
90
  trm_commons_1.Logger.log(`Generated transport ${context.runtime.installData.transport.trkorr}`, true);
56
91
  }
57
- yield context.runtime.installData.transport.addComment(`name=${context.runtime.remotePackageData.trmManifest.name}`);
58
- yield context.runtime.installData.transport.addComment(`version=${context.runtime.remotePackageData.trmManifest.version}`);
59
- yield context.runtime.installData.transport.setDocumentation(context.runtime.remotePackageData.manifest.getAbapXml());
60
- yield context.runtime.installData.transport.rename(`@X1@TRM: ${context.runtime.remotePackageData.trmManifest.name} v${context.runtime.remotePackageData.trmManifest.version}`);
92
+ yield context.runtime.installData.transport.addComment(`name=${context.runtime.remotePackageData.manifest.name}`);
93
+ yield context.runtime.installData.transport.addComment(`version=${context.runtime.remotePackageData.manifest.version}`);
94
+ yield context.runtime.installData.transport.setDocumentation(new manifest_1.Manifest(context.runtime.remotePackageData.manifest).getAbapXml());
95
+ yield context.runtime.installData.transport.rename(`@X1@TRM: ${context.runtime.remotePackageData.manifest.name} v${context.runtime.remotePackageData.manifest.version}`);
61
96
  var tadirObjects = context.runtime.packageTransportsData.tadir;
62
97
  if (context.rawInput.installData.installDevclass.keepOriginal) {
63
98
  tadirObjects = tadirObjects.concat(context.runtime.packageTransportsData.tdevc.map(o => {
@@ -1,11 +1,12 @@
1
1
  import { R3trans, R3transOptions } from "node-r3trans";
2
2
  import { Transport } from "../../transport";
3
3
  import { TransportBinary, TrmArtifact, TrmPackage } from "../../trmPackage";
4
- import { Manifest, TrmManifest, TrmManifestDependency } from "../../manifest";
4
+ import { TrmManifest, TrmManifestDependency } from "../../manifest";
5
5
  import { IActionContext } from "..";
6
6
  import { DEVCLASS, E071, NAMESPACE, TADIR, TDEVC, TDEVCT } from "../../client";
7
7
  import { PackageHierarchy } from "../../commons";
8
8
  import { AbstractRegistry } from "../../registry";
9
+ import { Package } from "trm-registry-types";
9
10
  export type InstallPackageReplacements = {
10
11
  originalDevclass: string;
11
12
  installDevclass: string;
@@ -24,7 +25,6 @@ export type InstallActionInputInstallData = {
24
25
  replaceExistingTransports?: boolean;
25
26
  };
26
27
  checks?: {
27
- safe?: boolean;
28
28
  noSapEntries?: boolean;
29
29
  noObjectTypes?: boolean;
30
30
  noDependencies?: boolean;
@@ -34,6 +34,7 @@ export type InstallActionInputInstallData = {
34
34
  keepOriginal?: boolean;
35
35
  transportLayer?: string;
36
36
  replacements?: InstallPackageReplacements[];
37
+ skipNamespace?: boolean;
37
38
  };
38
39
  installTransport?: {
39
40
  create?: boolean;
@@ -46,7 +47,6 @@ export interface InstallActionInput {
46
47
  packageData: {
47
48
  name: string;
48
49
  version?: string;
49
- integrity?: string;
50
50
  registry: AbstractRegistry;
51
51
  overwrite?: boolean;
52
52
  };
@@ -59,14 +59,10 @@ type TransportRuntime = {
59
59
  type WorkflowRuntime = {
60
60
  registry: AbstractRegistry;
61
61
  update: boolean;
62
- rollback: boolean;
63
62
  remotePackageData: {
64
- version: string;
65
- trmPackage: TrmPackage;
63
+ data: Package;
64
+ manifest: TrmManifest;
66
65
  artifact: TrmArtifact;
67
- manifest: Manifest;
68
- trmManifest: TrmManifest;
69
- integrity: string;
70
66
  };
71
67
  packageTransports: {
72
68
  devc: TransportRuntime;
@@ -98,7 +94,7 @@ type WorkflowRuntime = {
98
94
  };
99
95
  };
100
96
  export type InstallActionOutput = {
101
- trmPackage: TrmPackage;
97
+ manifest: TrmManifest;
102
98
  registry: AbstractRegistry;
103
99
  installTransport?: Transport;
104
100
  };