trm-core 8.1.2 → 8.1.4

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 CHANGED
@@ -8,6 +8,14 @@ Legend
8
8
  + : added
9
9
  - : removed
10
10
 
11
+ 2025-11-16 v8.1.4
12
+ -------------------
13
+ + execute trm-server post activities if necessary
14
+
15
+ 2025-11-15 v8.1.3
16
+ -------------------
17
+ * multiple dependencies detected for same object
18
+
11
19
  2025-11-07 v8.1.2
12
20
  -------------------
13
21
  - encode uri in registry endpoint
@@ -1,3 +1,4 @@
1
1
  export * from "./IActionContext";
2
2
  export * from "./setSystemPackages";
3
3
  export * from "./checkServerAuth";
4
+ export * from "./trmServerPa";
@@ -17,3 +17,4 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./IActionContext"), exports);
18
18
  __exportStar(require("./setSystemPackages"), exports);
19
19
  __exportStar(require("./checkServerAuth"), exports);
20
+ __exportStar(require("./trmServerPa"), exports);
@@ -0,0 +1,3 @@
1
+ import { Step } from "@simonegaffurini/sammarksworkflow";
2
+ import { IActionContext } from "..";
3
+ export declare const trmServerPa: Step<IActionContext>;
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.trmServerPa = void 0;
13
+ const trm_commons_1 = require("trm-commons");
14
+ const systemConnector_1 = require("../../systemConnector");
15
+ const registry_1 = require("../../registry");
16
+ const manifest_1 = require("../../manifest");
17
+ exports.trmServerPa = {
18
+ name: 'trm-server-pa',
19
+ run: (context) => __awaiter(void 0, void 0, void 0, function* () {
20
+ var _a, _b, _c, _d;
21
+ trm_commons_1.Logger.log('Run trm-server pa step', true);
22
+ const trmServerPackage = (_b = (_a = context.rawInput.contextData) === null || _a === void 0 ? void 0 : _a.systemPackages) === null || _b === void 0 ? void 0 : _b.find(o => o.packageName === systemConnector_1.TRM_SERVER_PACKAGE_NAME && o.compareRegistry(registry_1.RegistryProvider.getRegistry()));
23
+ if (trmServerPackage) {
24
+ const pa = (_c = trmServerPackage.manifest) === null || _c === void 0 ? void 0 : _c.get().postActivities;
25
+ if (pa) {
26
+ trm_commons_1.Logger.setPrefix(`Initialize trm-server v${(_d = trmServerPackage.manifest) === null || _d === void 0 ? void 0 : _d.get().version} -> `);
27
+ for (const data of pa) {
28
+ try {
29
+ const postActivity = new manifest_1.PostActivity(data);
30
+ yield postActivity.execute();
31
+ }
32
+ catch (e) {
33
+ trm_commons_1.Logger.error(e.toString(), true);
34
+ }
35
+ }
36
+ trm_commons_1.Logger.removePrefix();
37
+ }
38
+ }
39
+ })
40
+ };
@@ -58,10 +58,15 @@ const _addEntry = (tableName, sapEntries, dependencyIn, dependency) => {
58
58
  });
59
59
  index--;
60
60
  }
61
- sapEntries[index].dependencies.push({
62
- foundIn: dependencyIn,
63
- object: dependency
64
- });
61
+ if (sapEntries[index].dependencies.find(o => _.isEqual(o.object, dependency))) {
62
+ trm_commons_1.Logger.log(`Skipping, dependency with ${JSON.stringify(dependency)} already declared`, true);
63
+ }
64
+ else {
65
+ sapEntries[index].dependencies.push({
66
+ foundIn: dependencyIn,
67
+ object: dependency
68
+ });
69
+ }
65
70
  return sapEntries;
66
71
  };
67
72
  exports.parseSenvi = {
@@ -50,6 +50,7 @@ function install(inputData) {
50
50
  __1.checkServerAuth,
51
51
  init_1.init,
52
52
  setSystemPackages_1.setSystemPackages,
53
+ __1.trmServerPa,
53
54
  setTrmServerUpgradeService_1.setTrmServerUpgradeService,
54
55
  checkAlreadyInstalled_1.checkAlreadyInstalled,
55
56
  checkSapEntries_1.checkSapEntries,
@@ -55,7 +55,7 @@ exports.init = {
55
55
  }
56
56
  manifest = artifact.getManifest().get();
57
57
  }
58
- trm_commons_1.Logger.info(`Ready to install ${manifest.name} v${manifest.version}${!(0, semver_1.valid)(context.rawInput.packageData.version) ? ' (' + context.rawInput.packageData.version + ')' : ''}.`);
58
+ trm_commons_1.Logger.info(`Ready to install ${manifest.name} v${manifest.version}${!(0, semver_1.valid)(context.rawInput.packageData.version) ? ' (' + context.rawInput.packageData.version || 'latest' + ')' : ''}.`);
59
59
  context.runtime = {
60
60
  registry: actualRegistry || registry,
61
61
  update: undefined,
@@ -18,7 +18,7 @@ exports.findInstallRelease = {
18
18
  name: 'find-install-release',
19
19
  run: (context) => __awaiter(void 0, void 0, void 0, function* () {
20
20
  trm_commons_1.Logger.log('Find install release step', true);
21
- const lock = context.rawInput.installData.checks.lockfile ? context.rawInput.installData.checks.lockfile.getLock(context.runtime.trmPackage) : null;
21
+ const lock = context.rawInput.installData.checks.lockfile ? context.rawInput.installData.checks.lockfile.getLock(context.runtime.trmPackage, context.rawInput.dependencyDataPackage.versionRange) : null;
22
22
  if (lock) {
23
23
  const testLock = yield lockfile_1.Lockfile.testReleaseByLock(lock);
24
24
  if (!testLock) {
@@ -40,6 +40,7 @@ function publish(inputData) {
40
40
  __1.checkServerAuth,
41
41
  init_1.init,
42
42
  __1.setSystemPackages,
43
+ __1.trmServerPa,
43
44
  setTransportTarget_1.setTransportTarget,
44
45
  setDevclass_1.setDevclass,
45
46
  findDependencies_1.findDependencies,
@@ -18,6 +18,6 @@ export declare class Lockfile {
18
18
  static generate(root: TrmPackage, packages?: TrmPackage[]): Promise<Lockfile>;
19
19
  static fromJson(json: any): Lockfile;
20
20
  toJson(): string;
21
- getLock(trmPackage: TrmPackage): Lock;
21
+ getLock(trmPackage: TrmPackage, versionRange: string): Lock;
22
22
  static testReleaseByLock(lock: Lock): Promise<boolean>;
23
23
  }
@@ -15,6 +15,7 @@ const registry_1 = require("../registry");
15
15
  const systemConnector_1 = require("../systemConnector");
16
16
  const commons_1 = require("../commons");
17
17
  const crypto_1 = require("crypto");
18
+ const semver_1 = require("semver");
18
19
  class Lockfile {
19
20
  constructor(lockfile) {
20
21
  this.lockfile = lockfile;
@@ -79,10 +80,10 @@ class Lockfile {
79
80
  ];
80
81
  return (0, commons_1.jsonStringifyWithKeyOrder)(this.lockfile, KEYS_ORDER, 2);
81
82
  }
82
- getLock(trmPackage) {
83
+ getLock(trmPackage, versionRange) {
83
84
  var _a;
84
85
  const lock = (_a = this.lockfile.packages) === null || _a === void 0 ? void 0 : _a.find(o => trmPackage.compareName(o.name) && trmPackage.compareRegistry(registry_1.RegistryProvider.getRegistry(o.registry)));
85
- if (!lock) {
86
+ if (!lock || !(0, semver_1.satisfies)(lock.version, versionRange)) {
86
87
  throw new Error(`Lock for package "${trmPackage.packageName}", registry "${trmPackage.registry.endpoint}" not found`);
87
88
  }
88
89
  return lock;
@@ -342,6 +342,17 @@ class SystemConnectorBase {
342
342
  generatedTrmServerPackage.manifest = trmServerPackage.manifest;
343
343
  }
344
344
  }
345
+ else {
346
+ trm_commons_1.Logger.log(`trm-server from abapgit is the one currenlty in use, setting manifest value from registry`, true);
347
+ try {
348
+ const registryPackage = yield registry_1.RegistryProvider.getRegistry().getPackage(exports.TRM_SERVER_PACKAGE_NAME, generatedTrmServerPackage.manifest.get().version);
349
+ generatedTrmServerPackage.manifest = new manifest_1.Manifest(registryPackage.manifest);
350
+ }
351
+ catch (e) {
352
+ trm_commons_1.Logger.error(`Error fetching trm-server manifest in registry`, true);
353
+ trm_commons_1.Logger.error(e.toString(), true);
354
+ }
355
+ }
345
356
  trmPackages = trmPackages.filter(o => !(o.packageName === exports.TRM_SERVER_PACKAGE_NAME && o.compareRegistry(registry_1.RegistryProvider.getRegistry())));
346
357
  trmPackages.push(generatedTrmServerPackage);
347
358
  }
@@ -359,6 +370,17 @@ class SystemConnectorBase {
359
370
  generatedTrmRestPackage.manifest = trmRestPackage.manifest;
360
371
  }
361
372
  }
373
+ else {
374
+ trm_commons_1.Logger.log(`trm-rest from abapgit is the one currenlty in use, setting manifest value from registry`, true);
375
+ try {
376
+ const registryPackage = yield registry_1.RegistryProvider.getRegistry().getPackage(exports.TRM_REST_PACKAGE_NAME, generatedTrmRestPackage.manifest.get().version);
377
+ generatedTrmRestPackage.manifest = new manifest_1.Manifest(registryPackage.manifest);
378
+ }
379
+ catch (e) {
380
+ trm_commons_1.Logger.error(`Error fetching trm-rest manifest in registry`, true);
381
+ trm_commons_1.Logger.error(e.toString(), true);
382
+ }
383
+ }
362
384
  trmPackages = trmPackages.filter(o => !(o.packageName === exports.TRM_REST_PACKAGE_NAME && o.compareRegistry(registry_1.RegistryProvider.getRegistry())));
363
385
  trmPackages.push(generatedTrmRestPackage);
364
386
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "trm-core",
3
- "version": "8.1.2",
3
+ "version": "8.1.4",
4
4
  "description": "TRM (Transport Request Manager) Core",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",