@osaas/cli 4.29.0 → 4.30.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.
@@ -1 +1 @@
1
- {"version":3,"file":"cmd.d.ts","sourceRoot":"","sources":["../../src/admin/cmd.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAsBpC,MAAM,CAAC,OAAO,UAAU,QAAQ,YAgP/B"}
1
+ {"version":3,"file":"cmd.d.ts","sourceRoot":"","sources":["../../src/admin/cmd.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA2BpC,MAAM,CAAC,OAAO,UAAU,QAAQ,YA4R/B"}
package/dist/admin/cmd.js CHANGED
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const commander_1 = require("commander");
4
4
  const token_1 = require("./token");
5
5
  const client_core_1 = require("@osaas/client-core");
6
+ const syncfork_1 = require("./syncfork");
6
7
  const instance_1 = require("./instance");
7
8
  const util_1 = require("../user/util");
8
9
  const subscription_1 = require("./subscription");
@@ -196,6 +197,38 @@ function cmdAdmin() {
196
197
  console.log(err.message);
197
198
  }
198
199
  });
200
+ admin
201
+ .command('sync-fork')
202
+ .description('Trigger a fork sync for an OSC service')
203
+ .argument('<serviceId>', 'The OSC service ID (e.g. eyevinn-web-runner)')
204
+ .action(async (serviceId, options, command) => {
205
+ try {
206
+ const globalOpts = command.optsWithGlobals();
207
+ const environment = globalOpts?.env || 'prod';
208
+ const platform = new client_core_1.Platform({ environment });
209
+ (0, client_core_1.Log)().info(`Looking up repository URL for service ${serviceId} in ${environment}`);
210
+ const repoUrl = await (0, syncfork_1.getServiceRepoUrl)(serviceId, environment, platform.getApiKey());
211
+ (0, client_core_1.Log)().info(`Repository URL: ${repoUrl}`);
212
+ (0, client_core_1.Log)().info(`Triggering sync fork for ${repoUrl}`);
213
+ const jobId = await (0, syncfork_1.triggerSyncFork)(repoUrl, platform);
214
+ (0, client_core_1.Log)().info(`Sync fork job started: ${jobId}`);
215
+ console.log(`Sync fork job started (jobId: ${jobId})`);
216
+ const status = await (0, syncfork_1.getSyncForkStatus)(repoUrl, platform);
217
+ if (status) {
218
+ console.log(`Sync fork status: ${status.status}`);
219
+ if (status.status === 'failed' && status.error) {
220
+ console.log(`Sync fork failed: [${status.error.type}] ${status.error.message}`);
221
+ if (status.error.conflictFiles?.length) {
222
+ console.log(`Conflict files: ${status.error.conflictFiles.join(', ')}`);
223
+ }
224
+ return;
225
+ }
226
+ }
227
+ }
228
+ catch (err) {
229
+ console.log(err.message);
230
+ }
231
+ });
199
232
  return admin;
200
233
  }
201
234
  exports.default = cmdAdmin;
@@ -1 +1 @@
1
- {"version":3,"file":"cmd.js","sourceRoot":"","sources":["../../src/admin/cmd.ts"],"names":[],"mappings":";;AAAA,yCAAoC;AACpC,mCAAsC;AACtC,oDAM4B;AAC5B,yCAKoB;AACpB,uCAAuC;AACvC,iDAGwB;AACxB,mCAAiE;AAEjE,SAAwB,QAAQ;IAC9B,MAAM,KAAK,GAAG,IAAI,mBAAO,CAAC,OAAO,CAAC,CAAC;IACnC,KAAK;SACF,OAAO,CAAC,SAAS,CAAC;SAClB,WAAW,CAAC,kCAAkC,CAAC;SAC/C,QAAQ,CAAC,YAAY,EAAE,eAAe,CAAC;SACvC,QAAQ,CAAC,YAAY,EAAE,cAAc,CAAC;SACtC,MAAM,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE;QAC7B,IAAI;YACF,MAAM,GAAG,GAAG,IAAA,mBAAW,EAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAC5C,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;SAClB;QAAC,OAAO,GAAG,EAAE;YACZ,OAAO,CAAC,GAAG,CAAE,GAAa,CAAC,OAAO,CAAC,CAAC;SACrC;IACH,CAAC,CAAC,CAAC;IACL,KAAK;SACF,OAAO,CAAC,gBAAgB,CAAC;SACzB,WAAW,CAAC,6CAA6C,CAAC;SAC1D,QAAQ,CAAC,YAAY,EAAE,eAAe,CAAC;SACvC,QAAQ,CAAC,aAAa,EAAE,gBAAgB,CAAC;SACzC,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE;QACtD,IAAI;YACF,MAAM,UAAU,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;YAC7C,MAAM,WAAW,GAAG,UAAU,EAAE,GAAG,IAAI,MAAM,CAAC;YAC9C,IAAA,iBAAG,GAAE,CAAC,IAAI,CACR,+BAA+B,QAAQ,gBAAgB,SAAS,OAAO,WAAW,EAAE,CACrF,CAAC;YACF,MAAM,SAAS,GAAG,MAAM,IAAA,iCAAsB,EAC5C,QAAQ,EACR,SAAS,EACT,WAAW,CACZ,CAAC;YACF,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;SACxD;QAAC,OAAO,GAAG,EAAE;YACZ,OAAO,CAAC,GAAG,CAAE,GAAa,CAAC,OAAO,CAAC,CAAC;SACrC;IACH,CAAC,CAAC,CAAC;IACL,KAAK;SACF,OAAO,CAAC,iBAAiB,CAAC;SAC1B,WAAW,CAAC,oBAAoB,CAAC;SACjC,QAAQ,CAAC,YAAY,EAAE,eAAe,CAAC;SACvC,QAAQ,CAAC,aAAa,EAAE,gBAAgB,CAAC;SACzC,QAAQ,CAAC,QAAQ,EAAE,mBAAmB,CAAC;SACvC,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE;QAC5D,IAAI;YACF,MAAM,UAAU,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;YAC7C,MAAM,WAAW,GAAG,UAAU,EAAE,GAAG,IAAI,MAAM,CAAC;YAC9C,IAAA,iBAAG,GAAE,CAAC,IAAI,CACR,qBAAqB,IAAI,eAAe,QAAQ,gBAAgB,SAAS,OAAO,WAAW,EAAE,CAC9F,CAAC;YACF,MAAM,IAAA,cAAO,EACX,0DAA0D,CAC3D,CAAC;YACF,MAAM,IAAA,kCAAuB,EAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;SACvE;QAAC,OAAO,GAAG,EAAE;YACZ,OAAO,CAAC,GAAG,CAAE,GAAa,CAAC,OAAO,CAAC,CAAC;SACrC;IACH,CAAC,CAAC,CAAC;IACL,KAAK;SACF,OAAO,CAAC,mCAAmC,CAAC;SAC5C,WAAW,CACV,2EAA2E,CAC5E;SACA,MAAM,CAAC,SAAS,EAAE,sDAAsD,CAAC;SACzE,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE;QACjC,IAAI;YACF,MAAM,UAAU,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;YAC7C,MAAM,WAAW,GAAG,UAAU,EAAE,GAAG,IAAI,MAAM,CAAC;YAC9C,MAAM,aAAa,GAAG,MAAM,IAAA,wBAAgB,EAAC,WAAW,CAAC,CAAC;YAC1D,MAAM,WAAW,GAAG,MAAM,IAAA,4BAAoB,EAAC,WAAW,CAAC,CAAC;YAC5D,MAAM,gBAAgB,GAAG,WAAW,CAAC,MAAM,CACzC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,eAAe,GAAG,CAAC,GAAG,CAC1C,CAAC;YACF,IAAI,kBAAkB,GAAG,CAAC,CAAC;YAC3B,MAAM,qBAAqB,GAAG,gBAAgB,CAAC,MAAM,CAAC;YACtD,KAAK,MAAM,MAAM,IAAI,gBAAgB,EAAE;gBACrC,IAAI,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,QAAQ,KAAK,MAAM,EAAE;oBACvD,IAAI;wBACF,MAAM,iBAAiB,GAAG,MAAM,IAAA,+BAAoB,EAClD,MAAM,CAAC,QAAQ,EACf,WAAW,CACZ,CAAC;wBACF,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE;4BAChC,OAAO,CAAC,GAAG,CACT,UAAU,MAAM,CAAC,QAAQ,2CAA2C,MAAM,CAAC,eAAe,mCAAmC,CAC9H,CAAC;4BACF,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;4BAC3D,KAAK,MAAM,IAAI,IAAI,iBAAiB,EAAE;gCACpC,OAAO,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;gCACtD,IAAI,OAAO,CAAC,KAAK,EAAE;oCACjB,MAAM,IAAA,mCAAwB,EAC5B,MAAM,CAAC,QAAQ,EACf,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,QAAQ,EACb,WAAW,CACZ,CAAC;oCACF,kBAAkB,EAAE,CAAC;oCACrB,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;iCAC1B;6BACF;yBACF;qBACF;oBAAC,OAAO,GAAG,EAAE;wBACZ,OAAO,CAAC,GAAG,CACT,4BAA4B,MAAM,CAAC,QAAQ,KACxC,GAAa,CAAC,OACjB,EAAE,CACH,CAAC;qBACH;iBACF;aACF;YACD,OAAO,CAAC,GAAG,CACT,GAAG,qBAAqB,MACtB,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAC7B,uCAAuC,kBAAkB,YAAY,CACtE,CAAC;SACH;QAAC,OAAO,GAAG,EAAE;YACZ,OAAO,CAAC,GAAG,CAAE,GAAa,CAAC,OAAO,CAAC,CAAC;SACrC;IACH,CAAC,CAAC,CAAC;IACL,KAAK;SACF,OAAO,CAAC,sBAAsB,CAAC;SAC/B,QAAQ,CAAC,YAAY,EAAE,eAAe,CAAC;SACvC,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE;QAC3C,IAAI;YACF,MAAM,UAAU,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;YAC7C,MAAM,WAAW,GAAG,UAAU,EAAE,GAAG,IAAI,MAAM,CAAC;YAC9C,MAAM,iBAAiB,GAAG,MAAM,IAAA,+BAAoB,EAClD,QAAQ,EACR,WAAW,CACZ,CAAC;YACF,IAAI,iBAAiB,CAAC,MAAM,KAAK,CAAC,EAAE;gBAClC,IAAA,iBAAG,GAAE,CAAC,IAAI,CACR,iCAAiC,QAAQ,OAAO,WAAW,EAAE,CAC9D,CAAC;gBACF,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;gBACvC,OAAO;aACR;YACD,iBAAiB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAC7B,OAAO,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC,CACtD,CAAC;YACF,MAAM,IAAA,cAAO,EACX,wEAAwE;gBACtE,GAAG,QAAQ,OAAO,WAAW,aAAa,CAC7C,CAAC;YACF,KAAK,MAAM,IAAI,IAAI,iBAAiB,EAAE;gBACpC,MAAM,IAAA,kCAAuB,EAC3B,QAAQ,EACR,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,QAAQ,EACb,WAAW,CACZ,CAAC;aACH;SACF;QAAC,OAAO,GAAG,EAAE;YACZ,OAAO,CAAC,GAAG,CAAE,GAAa,CAAC,OAAO,CAAC,CAAC;SACrC;IACH,CAAC,CAAC,CAAC;IACL,KAAK;SACF,OAAO,CAAC,oBAAoB,CAAC;SAC7B,WAAW,CAAC,qCAAqC,CAAC;SAClD,QAAQ,CAAC,YAAY,EAAE,eAAe,CAAC;SACvC,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE;QAC3C,IAAI;YACF,MAAM,UAAU,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;YAC7C,MAAM,WAAW,GAAG,UAAU,EAAE,GAAG,IAAI,MAAM,CAAC;YAC9C,IAAA,iBAAG,GAAE,CAAC,IAAI,CACR,oCAAoC,QAAQ,OAAO,WAAW,EAAE,CACjE,CAAC;YACF,MAAM,aAAa,GAAG,MAAM,IAAA,yCAA0B,EACpD,QAAQ,EACR,WAAW,CACZ,CAAC;YACF,aAAa,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC;SACpE;QAAC,OAAO,GAAG,EAAE;YACZ,OAAO,CAAC,GAAG,CAAE,GAAa,CAAC,OAAO,CAAC,CAAC;SACrC;IACH,CAAC,CAAC,CAAC;IACL,KAAK;SACF,OAAO,CAAC,qBAAqB,CAAC;SAC9B,WAAW,CAAC,oCAAoC,CAAC;SACjD,QAAQ,CAAC,YAAY,EAAE,eAAe,CAAC;SACvC,QAAQ,CAAC,aAAa,EAAE,gBAAgB,CAAC;SACzC,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE;QACtD,IAAI;YACF,MAAM,UAAU,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;YAC7C,MAAM,WAAW,GAAG,UAAU,EAAE,GAAG,IAAI,MAAM,CAAC;YAC9C,IAAA,iBAAG,GAAE,CAAC,IAAI,CACR,YAAY,SAAS,4BAA4B,QAAQ,OAAO,WAAW,EAAE,CAC9E,CAAC;YACF,MAAM,aAAa,GAAG,MAAM,IAAA,yCAA0B,EACpD,QAAQ,EACR,WAAW,CACZ,CAAC;YACF,IAAI,aAAa,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;gBACrC,MAAM,IAAA,cAAO,EACX,gEAAgE,SAAS,aAAa,CACvF,CAAC;gBACF,MAAM,IAAA,0CAA2B,EAAC,QAAQ,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;aACrE;SACF;QAAC,OAAO,GAAG,EAAE;YACZ,OAAO,CAAC,GAAG,CAAE,GAAa,CAAC,OAAO,CAAC,CAAC;SACrC;IACH,CAAC,CAAC,CAAC;IACL,KAAK;SACF,OAAO,CAAC,cAAc,CAAC;SACvB,WAAW,CAAC,iBAAiB,CAAC;SAC9B,MAAM,CAAC,WAAW,EAAE,mBAAmB,CAAC;SACxC,MAAM,CAAC,YAAY,EAAE,gCAAgC,CAAC;SACtD,QAAQ,CAAC,aAAa,EAAE,iCAAiC,CAAC;SAC1D,MAAM,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE;QAC5C,IAAI;YACF,MAAM,UAAU,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;YAC7C,MAAM,WAAW,GAAG,UAAU,EAAE,GAAG,IAAI,MAAM,CAAC;YAC9C,MAAM,QAAQ,GAAG,IAAI,sBAAQ,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;YAE/C,IAAA,iBAAG,GAAE,CAAC,IAAI,CAAC,kBAAkB,SAAS,OAAO,WAAW,EAAE,CAAC,CAAC;YAC5D,MAAM,OAAO,GAAG,MAAM,IAAA,8BAAgB,EAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;YAC5D,IAAI,OAAO,EAAE;gBACX,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE;oBAChB,MAAM,IAAA,cAAO,EACX,8CAA8C,SAAS,cAAc,CACtE,CAAC;iBACH;gBACD,MAAM,UAAU,GAAG,MAAM,IAAA,yBAAW,EAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBACxD,IAAI,UAAU,EAAE;oBACd,IAAI,OAAO,CAAC,IAAI,EAAE;wBAChB,IAAA,iBAAG,GAAE,CAAC,IAAI,CAAC,qBAAqB,SAAS,iBAAiB,CAAC,CAAC;wBAC5D,MAAM,IAAA,0BAAY,EAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;wBACzC,IAAA,iBAAG,GAAE,CAAC,IAAI,CAAC,SAAS,SAAS,+BAA+B,CAAC,CAAC;qBAC/D;iBACF;qBAAM;oBACL,IAAA,iBAAG,GAAE,CAAC,KAAK,CAAC,0BAA0B,SAAS,EAAE,CAAC,CAAC;iBACpD;aACF;iBAAM;gBACL,IAAA,iBAAG,GAAE,CAAC,IAAI,CAAC,SAAS,SAAS,YAAY,CAAC,CAAC;aAC5C;SACF;QAAC,OAAO,GAAG,EAAE;YACZ,OAAO,CAAC,GAAG,CAAE,GAAa,CAAC,OAAO,CAAC,CAAC;SACrC;IACH,CAAC,CAAC,CAAC;IACL,OAAO,KAAK,CAAC;AACf,CAAC;AAhPD,2BAgPC"}
1
+ {"version":3,"file":"cmd.js","sourceRoot":"","sources":["../../src/admin/cmd.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import { Platform } from '@osaas/client-core';
2
+ interface SyncForkStatus {
3
+ jobId: string;
4
+ repositoryUrl: string;
5
+ status: string;
6
+ error?: {
7
+ type: string;
8
+ message: string;
9
+ conflictFiles?: string[];
10
+ };
11
+ }
12
+ export declare function getServiceRepoUrl(serviceId: string, environment: string, apiKey: string | undefined): Promise<string>;
13
+ export declare function triggerSyncFork(repositoryUrl: string, platform: Platform): Promise<string>;
14
+ export declare function getSyncForkStatus(repositoryUrl: string, platform: Platform): Promise<SyncForkStatus | undefined>;
15
+ export {};
16
+ //# sourceMappingURL=syncfork.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"syncfork.d.ts","sourceRoot":"","sources":["../../src/admin/syncfork.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAiBvE,UAAU,cAAc;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;KAC1B,CAAC;CACH;AAED,wBAAsB,iBAAiB,CACrC,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,GAAG,SAAS,GACzB,OAAO,CAAC,MAAM,CAAC,CAiBjB;AAED,wBAAsB,eAAe,CACnC,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,QAAQ,GACjB,OAAO,CAAC,MAAM,CAAC,CAajB;AAED,wBAAsB,iBAAiB,CACrC,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,QAAQ,GACjB,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,CAkBrC"}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getSyncForkStatus = exports.triggerSyncFork = exports.getServiceRepoUrl = void 0;
4
+ const client_core_1 = require("@osaas/client-core");
5
+ async function getServiceRepoUrl(serviceId, environment, apiKey) {
6
+ const catalogUrl = new URL(`https://catalog.svc.${environment}.osaas.io/service/${serviceId}`);
7
+ const service = await (0, client_core_1.createFetch)(catalogUrl, {
8
+ headers: {
9
+ Authorization: `Bearer ${apiKey}`,
10
+ 'Content-Type': 'application/json'
11
+ }
12
+ });
13
+ const repoUrl = service.serviceMetadata?.repoUrl;
14
+ if (!repoUrl) {
15
+ throw new Error(`Service ${serviceId} does not have a repository URL in the catalog`);
16
+ }
17
+ return repoUrl;
18
+ }
19
+ exports.getServiceRepoUrl = getServiceRepoUrl;
20
+ async function triggerSyncFork(repositoryUrl, platform) {
21
+ const syncUrl = new URL(`https://maker.svc.${platform.getEnvironment()}.osaas.io/sync-fork`);
22
+ const res = await (0, client_core_1.createFetch)(syncUrl, {
23
+ method: 'POST',
24
+ headers: {
25
+ Authorization: `Bearer ${platform.getApiKey()}`,
26
+ 'Content-Type': 'application/json'
27
+ },
28
+ body: JSON.stringify({ repositoryUrl })
29
+ });
30
+ return res.jobId;
31
+ }
32
+ exports.triggerSyncFork = triggerSyncFork;
33
+ async function getSyncForkStatus(repositoryUrl, platform) {
34
+ const statusUrl = new URL(`https://maker.svc.${platform.getEnvironment()}.osaas.io/sync-fork/by-repo`);
35
+ statusUrl.searchParams.append('repositoryUrl', repositoryUrl);
36
+ try {
37
+ return await (0, client_core_1.createFetch)(statusUrl, {
38
+ headers: {
39
+ Authorization: `Bearer ${platform.getApiKey()}`,
40
+ 'Content-Type': 'application/json'
41
+ }
42
+ });
43
+ }
44
+ catch (err) {
45
+ if (err instanceof client_core_1.FetchError && err.httpCode === 404) {
46
+ return undefined;
47
+ }
48
+ throw err;
49
+ }
50
+ }
51
+ exports.getSyncForkStatus = getSyncForkStatus;
52
+ //# sourceMappingURL=syncfork.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"syncfork.js","sourceRoot":"","sources":["../../src/admin/syncfork.ts"],"names":[],"mappings":";;;AAAA,oDAAuE;AA4BhE,KAAK,UAAU,iBAAiB,CACrC,SAAiB,EACjB,WAAmB,EACnB,MAA0B;IAE1B,MAAM,UAAU,GAAG,IAAI,GAAG,CACxB,uBAAuB,WAAW,qBAAqB,SAAS,EAAE,CACnE,CAAC;IACF,MAAM,OAAO,GAAG,MAAM,IAAA,yBAAW,EAAkB,UAAU,EAAE;QAC7D,OAAO,EAAE;YACP,aAAa,EAAE,UAAU,MAAM,EAAE;YACjC,cAAc,EAAE,kBAAkB;SACnC;KACF,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,OAAO,CAAC,eAAe,EAAE,OAAO,CAAC;IACjD,IAAI,CAAC,OAAO,EAAE;QACZ,MAAM,IAAI,KAAK,CACb,WAAW,SAAS,gDAAgD,CACrE,CAAC;KACH;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AArBD,8CAqBC;AAEM,KAAK,UAAU,eAAe,CACnC,aAAqB,EACrB,QAAkB;IAElB,MAAM,OAAO,GAAG,IAAI,GAAG,CACrB,qBAAqB,QAAQ,CAAC,cAAc,EAAE,qBAAqB,CACpE,CAAC;IACF,MAAM,GAAG,GAAG,MAAM,IAAA,yBAAW,EAAmB,OAAO,EAAE;QACvD,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,aAAa,EAAE,UAAU,QAAQ,CAAC,SAAS,EAAE,EAAE;YAC/C,cAAc,EAAE,kBAAkB;SACnC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,aAAa,EAAE,CAAC;KACxC,CAAC,CAAC;IACH,OAAO,GAAG,CAAC,KAAK,CAAC;AACnB,CAAC;AAhBD,0CAgBC;AAEM,KAAK,UAAU,iBAAiB,CACrC,aAAqB,EACrB,QAAkB;IAElB,MAAM,SAAS,GAAG,IAAI,GAAG,CACvB,qBAAqB,QAAQ,CAAC,cAAc,EAAE,6BAA6B,CAC5E,CAAC;IACF,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;IAC9D,IAAI;QACF,OAAO,MAAM,IAAA,yBAAW,EAAiB,SAAS,EAAE;YAClD,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,QAAQ,CAAC,SAAS,EAAE,EAAE;gBAC/C,cAAc,EAAE,kBAAkB;aACnC;SACF,CAAC,CAAC;KACJ;IAAC,OAAO,GAAG,EAAE;QACZ,IAAI,GAAG,YAAY,wBAAU,IAAI,GAAG,CAAC,QAAQ,KAAK,GAAG,EAAE;YACrD,OAAO,SAAS,CAAC;SAClB;QACD,MAAM,GAAG,CAAC;KACX;AACH,CAAC;AArBD,8CAqBC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@osaas/cli",
3
- "version": "4.29.0",
3
+ "version": "4.30.0",
4
4
  "description": "Open Source Cloud CLI",
5
5
  "author": "Eyevinn Open Source Cloud <osc@eyevinn.se>",
6
6
  "homepage": "https://www.osaas.io",
@@ -37,5 +37,5 @@
37
37
  "publishConfig": {
38
38
  "access": "public"
39
39
  },
40
- "gitHead": "fef2059e35c5b53476859b47c9e371c38aa79305"
40
+ "gitHead": "73def9adf914c2308e10d9d673fcc1c8daad51d6"
41
41
  }
package/src/admin/cmd.ts CHANGED
@@ -7,6 +7,11 @@ import {
7
7
  remakeOrder,
8
8
  waitForOrder
9
9
  } from '@osaas/client-core';
10
+ import {
11
+ getServiceRepoUrl,
12
+ getSyncForkStatus,
13
+ triggerSyncFork
14
+ } from './syncfork';
10
15
  import {
11
16
  getInstancesToRemove,
12
17
  listInstancesForTenant,
@@ -259,5 +264,49 @@ export default function cmdAdmin() {
259
264
  console.log((err as Error).message);
260
265
  }
261
266
  });
267
+ admin
268
+ .command('sync-fork')
269
+ .description('Trigger a fork sync for an OSC service')
270
+ .argument('<serviceId>', 'The OSC service ID (e.g. eyevinn-web-runner)')
271
+ .action(async (serviceId, options, command) => {
272
+ try {
273
+ const globalOpts = command.optsWithGlobals();
274
+ const environment = globalOpts?.env || 'prod';
275
+ const platform = new Platform({ environment });
276
+
277
+ Log().info(
278
+ `Looking up repository URL for service ${serviceId} in ${environment}`
279
+ );
280
+ const repoUrl = await getServiceRepoUrl(
281
+ serviceId,
282
+ environment,
283
+ platform.getApiKey()
284
+ );
285
+ Log().info(`Repository URL: ${repoUrl}`);
286
+
287
+ Log().info(`Triggering sync fork for ${repoUrl}`);
288
+ const jobId = await triggerSyncFork(repoUrl, platform);
289
+ Log().info(`Sync fork job started: ${jobId}`);
290
+ console.log(`Sync fork job started (jobId: ${jobId})`);
291
+
292
+ const status = await getSyncForkStatus(repoUrl, platform);
293
+ if (status) {
294
+ console.log(`Sync fork status: ${status.status}`);
295
+ if (status.status === 'failed' && status.error) {
296
+ console.log(
297
+ `Sync fork failed: [${status.error.type}] ${status.error.message}`
298
+ );
299
+ if (status.error.conflictFiles?.length) {
300
+ console.log(
301
+ `Conflict files: ${status.error.conflictFiles.join(', ')}`
302
+ );
303
+ }
304
+ return;
305
+ }
306
+ }
307
+ } catch (err) {
308
+ console.log((err as Error).message);
309
+ }
310
+ });
262
311
  return admin;
263
312
  }
@@ -0,0 +1,91 @@
1
+ import { createFetch, FetchError, Platform } from '@osaas/client-core';
2
+
3
+ interface ServiceMetadata {
4
+ repoUrl?: string;
5
+ title?: string;
6
+ description?: string;
7
+ }
8
+
9
+ interface ServiceResponse {
10
+ serviceId: string;
11
+ serviceMetadata: ServiceMetadata;
12
+ }
13
+
14
+ interface SyncForkResponse {
15
+ jobId: string;
16
+ }
17
+
18
+ interface SyncForkStatus {
19
+ jobId: string;
20
+ repositoryUrl: string;
21
+ status: string;
22
+ error?: {
23
+ type: string;
24
+ message: string;
25
+ conflictFiles?: string[];
26
+ };
27
+ }
28
+
29
+ export async function getServiceRepoUrl(
30
+ serviceId: string,
31
+ environment: string,
32
+ apiKey: string | undefined
33
+ ): Promise<string> {
34
+ const catalogUrl = new URL(
35
+ `https://catalog.svc.${environment}.osaas.io/service/${serviceId}`
36
+ );
37
+ const service = await createFetch<ServiceResponse>(catalogUrl, {
38
+ headers: {
39
+ Authorization: `Bearer ${apiKey}`,
40
+ 'Content-Type': 'application/json'
41
+ }
42
+ });
43
+ const repoUrl = service.serviceMetadata?.repoUrl;
44
+ if (!repoUrl) {
45
+ throw new Error(
46
+ `Service ${serviceId} does not have a repository URL in the catalog`
47
+ );
48
+ }
49
+ return repoUrl;
50
+ }
51
+
52
+ export async function triggerSyncFork(
53
+ repositoryUrl: string,
54
+ platform: Platform
55
+ ): Promise<string> {
56
+ const syncUrl = new URL(
57
+ `https://maker.svc.${platform.getEnvironment()}.osaas.io/sync-fork`
58
+ );
59
+ const res = await createFetch<SyncForkResponse>(syncUrl, {
60
+ method: 'POST',
61
+ headers: {
62
+ Authorization: `Bearer ${platform.getApiKey()}`,
63
+ 'Content-Type': 'application/json'
64
+ },
65
+ body: JSON.stringify({ repositoryUrl })
66
+ });
67
+ return res.jobId;
68
+ }
69
+
70
+ export async function getSyncForkStatus(
71
+ repositoryUrl: string,
72
+ platform: Platform
73
+ ): Promise<SyncForkStatus | undefined> {
74
+ const statusUrl = new URL(
75
+ `https://maker.svc.${platform.getEnvironment()}.osaas.io/sync-fork/by-repo`
76
+ );
77
+ statusUrl.searchParams.append('repositoryUrl', repositoryUrl);
78
+ try {
79
+ return await createFetch<SyncForkStatus>(statusUrl, {
80
+ headers: {
81
+ Authorization: `Bearer ${platform.getApiKey()}`,
82
+ 'Content-Type': 'application/json'
83
+ }
84
+ });
85
+ } catch (err) {
86
+ if (err instanceof FetchError && err.httpCode === 404) {
87
+ return undefined;
88
+ }
89
+ throw err;
90
+ }
91
+ }