prodlysfcli 1.2.0 → 1.2.3

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 (71) hide show
  1. package/README.md +18 -16
  2. package/lib/commands/prodly/checkin.d.ts +20 -0
  3. package/lib/commands/prodly/checkin.js +130 -0
  4. package/lib/commands/prodly/checkin.js.map +1 -0
  5. package/lib/commands/prodly/checkout.d.ts +21 -0
  6. package/lib/commands/prodly/checkout.js +137 -0
  7. package/lib/commands/prodly/checkout.js.map +1 -0
  8. package/lib/commands/prodly/deploy.d.ts +26 -0
  9. package/lib/commands/prodly/deploy.js +264 -0
  10. package/lib/commands/prodly/deploy.js.map +1 -0
  11. package/lib/commands/prodly/jobs.d.ts +15 -0
  12. package/lib/commands/prodly/jobs.js +33 -0
  13. package/lib/commands/prodly/jobs.js.map +1 -0
  14. package/lib/commands/prodly/manage.d.ts +24 -0
  15. package/lib/commands/prodly/manage.js +167 -0
  16. package/lib/commands/prodly/manage.js.map +1 -0
  17. package/lib/commands/prodly/version.d.ts +16 -0
  18. package/lib/commands/prodly/version.js +88 -0
  19. package/lib/commands/prodly/version.js.map +1 -0
  20. package/lib/constants/index.d.ts +5 -0
  21. package/lib/constants/index.js +6 -0
  22. package/lib/constants/index.js.map +1 -0
  23. package/lib/helpers/index.d.ts +6 -0
  24. package/lib/helpers/index.js +17 -0
  25. package/lib/helpers/index.js.map +1 -0
  26. package/lib/index.d.ts +2 -0
  27. package/lib/index.js +2 -0
  28. package/lib/index.js.map +1 -0
  29. package/lib/services/connections.d.ts +7 -0
  30. package/lib/services/connections.js +109 -0
  31. package/lib/services/connections.js.map +1 -0
  32. package/lib/services/connections.types.d.ts +31 -0
  33. package/lib/services/connections.types.js +2 -0
  34. package/lib/services/connections.types.js.map +1 -0
  35. package/lib/services/jobs.d.ts +4 -0
  36. package/lib/services/jobs.js +26 -0
  37. package/lib/services/jobs.js.map +1 -0
  38. package/lib/services/jobs.types.d.ts +13 -0
  39. package/lib/services/jobs.types.js +2 -0
  40. package/lib/services/jobs.types.js.map +1 -0
  41. package/lib/services/manage-instances.d.ts +9 -0
  42. package/lib/services/manage-instances.js +116 -0
  43. package/lib/services/manage-instances.js.map +1 -0
  44. package/lib/services/manage-instances.types.d.ts +58 -0
  45. package/lib/services/manage-instances.types.js +2 -0
  46. package/lib/services/manage-instances.types.js.map +1 -0
  47. package/lib/services/queries.d.ts +8 -0
  48. package/lib/services/queries.js +54 -0
  49. package/lib/services/queries.js.map +1 -0
  50. package/lib/types/generic.d.ts +5 -0
  51. package/lib/types/generic.js +2 -0
  52. package/lib/types/generic.js.map +1 -0
  53. package/lib/types/prodly.d.ts +69 -0
  54. package/lib/types/prodly.js +2 -0
  55. package/lib/types/prodly.js.map +1 -0
  56. package/lib/types/salesforce.d.ts +14 -0
  57. package/lib/types/salesforce.js +2 -0
  58. package/lib/types/salesforce.js.map +1 -0
  59. package/lib/utils/index.d.ts +2 -0
  60. package/lib/utils/index.js +3 -0
  61. package/lib/utils/index.js.map +1 -0
  62. package/messages/prodly.checkin.md +1 -1
  63. package/messages/prodly.checkout.md +1 -1
  64. package/messages/prodly.deploy.md +2 -2
  65. package/messages/prodly.json +1 -0
  66. package/messages/prodly.manage.md +1 -1
  67. package/messages/prodly.version.md +3 -0
  68. package/npm-shrinkwrap.json +1715 -1090
  69. package/oclif.lock +2327 -2091
  70. package/oclif.manifest.json +708 -2
  71. package/package.json +10 -10
@@ -0,0 +1,88 @@
1
+ import { Messages, SfError } from '@salesforce/core';
2
+ import { Flags, SfCommand } from '@salesforce/sf-plugins-core';
3
+ import { getManagedInstance, getManagedInstances, postInstances, putInstances, } from '../../services/manage-instances.js';
4
+ Messages.importMessagesDirectoryFromMetaUrl(import.meta.url);
5
+ const messages = Messages.loadMessages('prodlysfcli', 'prodly.version');
6
+ const prodlyMessages = Messages.loadMessages('prodlysfcli', 'prodly');
7
+ export default class ProdlyVersion extends SfCommand {
8
+ static summary = messages.getMessage('summary');
9
+ static description = prodlyMessages.getMessage('descriptionVersionCommand');
10
+ static examples = messages.getMessages('examples');
11
+ static flags = {
12
+ 'new-branch': Flags.string({
13
+ summary: prodlyMessages.getMessage('newBranchFlagSummary'),
14
+ char: 'b',
15
+ required: false,
16
+ }),
17
+ 'source-branch': Flags.string({
18
+ summary: prodlyMessages.getMessage('sourceBranchFlagSummary'),
19
+ char: 's',
20
+ required: false,
21
+ }),
22
+ 'target-dev-hub': Flags.requiredHub(),
23
+ 'target-org': Flags.requiredOrg(),
24
+ instance: Flags.string({
25
+ summary: prodlyMessages.getMessage('instanceFlagDescription'),
26
+ char: 'i',
27
+ required: false,
28
+ }),
29
+ unlink: Flags.boolean({ char: 'x', summary: prodlyMessages.getMessage('unlinkBranchFlagDescription') }),
30
+ };
31
+ async run() {
32
+ const { flags } = await this.parse(ProdlyVersion);
33
+ const org = flags['target-org'];
34
+ const hubOrg = flags['target-dev-hub'];
35
+ const hubConn = hubOrg.getConnection();
36
+ const print = (message, ...args) => this.log(message, ...args);
37
+ const { instance, unlink } = flags;
38
+ if (!unlink && !flags['source-branch']) {
39
+ throw new SfError('Flag source-branch is required to version control managed environment');
40
+ }
41
+ let managedInstance;
42
+ // Check if managed instance Id is provided else get the managed instance from the target org
43
+ if (instance) {
44
+ print(`Managed instance ID provided, using instance with id ${instance}`);
45
+ const managedInstances = await getManagedInstances({ hubConn });
46
+ managedInstance = managedInstances.instances.find((inst) => inst.id === instance);
47
+ }
48
+ else {
49
+ print('Managed instance ID not provided, using the target org');
50
+ const orgId = org.getOrgId();
51
+ managedInstance = await getManagedInstance({ hubConn, orgId, print });
52
+ }
53
+ if (!managedInstance) {
54
+ throw new SfError(prodlyMessages.getMessage('errorManagedInstaceNotFound'));
55
+ }
56
+ if (unlink) {
57
+ await putInstances({
58
+ hubConn,
59
+ body: {
60
+ options: { checkin: false, checkout: false, commitMessage: '', environmentExists: true },
61
+ platformInstance: {
62
+ branchName: null,
63
+ connectionId: managedInstance.connectionId,
64
+ platformInstanceId: managedInstance.platformInstanceId,
65
+ sourceBranchName: null,
66
+ },
67
+ },
68
+ });
69
+ print('Version control managed environment unlinked');
70
+ return {};
71
+ }
72
+ const { jobId } = await postInstances({
73
+ hubConn,
74
+ body: {
75
+ options: { checkin: true, checkout: true, commitMessage: '', environmentExists: true },
76
+ platformInstance: {
77
+ branchName: flags['new-branch'],
78
+ connectionId: managedInstance.connectionId,
79
+ platformInstanceId: managedInstance.platformInstanceId,
80
+ sourceBranchName: flags['source-branch'],
81
+ },
82
+ },
83
+ });
84
+ print(`Version control managed environment launched with Job ID: ${jobId}`);
85
+ return { jobId };
86
+ }
87
+ }
88
+ //# sourceMappingURL=version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../../../src/commands/prodly/version.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export declare const ORG_ID_REG_EXP: RegExp;
2
+ export declare const ORG_TYPE_PRODUCTION = "Production";
3
+ export declare const ORG_TYPE_SANDBOX = "Sandbox";
4
+ export declare const ORG_TYPE_SCRATCH_ORG = "Scratch Org";
5
+ export declare const JOB_STATUS_COMPLETED = "COMPLETED";
@@ -0,0 +1,6 @@
1
+ export const ORG_ID_REG_EXP = /^([a-zA-Z0-9_-]){15,18}$/;
2
+ export const ORG_TYPE_PRODUCTION = 'Production';
3
+ export const ORG_TYPE_SANDBOX = 'Sandbox';
4
+ export const ORG_TYPE_SCRATCH_ORG = 'Scratch Org';
5
+ export const JOB_STATUS_COMPLETED = 'COMPLETED';
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/constants/index.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,cAAc,GAAG,0BAA0B,CAAC;AAEzD,MAAM,CAAC,MAAM,mBAAmB,GAAG,YAAY,CAAC;AAChD,MAAM,CAAC,MAAM,gBAAgB,GAAG,SAAS,CAAC;AAC1C,MAAM,CAAC,MAAM,oBAAoB,GAAG,aAAa,CAAC;AAElD,MAAM,CAAC,MAAM,oBAAoB,GAAG,WAAW,CAAC"}
@@ -0,0 +1,6 @@
1
+ declare const constructQueryFilter: (filterFlag: string | undefined) => {
2
+ filter?: string | null;
3
+ limit?: null;
4
+ orderBy?: null;
5
+ };
6
+ export { constructQueryFilter };
@@ -0,0 +1,17 @@
1
+ const constructQueryFilter = (filterFlag) => {
2
+ if (typeof filterFlag === 'string') {
3
+ if (filterFlag.length === 0) {
4
+ return {
5
+ filter: null,
6
+ limit: null,
7
+ orderBy: null,
8
+ };
9
+ }
10
+ else {
11
+ return { filter: filterFlag };
12
+ }
13
+ }
14
+ return {};
15
+ };
16
+ export { constructQueryFilter };
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/helpers/index.ts"],"names":[],"mappings":"AAAA,MAAM,oBAAoB,GAAG,CAC3B,UAA8B,EAC4B,EAAE;IAC5D,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;QACnC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO;gBACL,MAAM,EAAE,IAAI;gBACZ,KAAK,EAAE,IAAI;gBACX,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;QAChC,CAAC;IACH,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC,CAAC;AAEF,OAAO,EAAE,oBAAoB,EAAE,CAAC"}
package/lib/index.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ declare const _default: {};
2
+ export default _default;
package/lib/index.js ADDED
@@ -0,0 +1,2 @@
1
+ export default {};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,eAAe,EAAE,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { CreateConnectionFn, GetConnectionIdFn, QueryConnectionFn, QueryConnectionsFn, UpdateConnectionFn } from './connections.types.js';
2
+ declare const createConnection: CreateConnectionFn;
3
+ declare const getConnectionId: GetConnectionIdFn;
4
+ declare const queryConnection: QueryConnectionFn;
5
+ declare const queryConnections: QueryConnectionsFn;
6
+ declare const updateConnection: UpdateConnectionFn;
7
+ export { createConnection, getConnectionId, queryConnection, queryConnections, updateConnection };
@@ -0,0 +1,109 @@
1
+ /* eslint-disable camelcase */
2
+ import { Messages, SfError } from '@salesforce/core';
3
+ import { ORG_ID_REG_EXP, ORG_TYPE_PRODUCTION, ORG_TYPE_SANDBOX, ORG_TYPE_SCRATCH_ORG } from '../constants/index.js';
4
+ Messages.importMessagesDirectoryFromMetaUrl(import.meta.url);
5
+ const prodlyMessages = Messages.loadMessages('prodlysfcli', 'prodly');
6
+ const createConnection = async ({ hubConn, name, org }) => {
7
+ const trailSlashRegex = /\/$/;
8
+ let type = '';
9
+ if (await org.determineIfScratch())
10
+ type = ORG_TYPE_SCRATCH_ORG;
11
+ else if (await org.determineIfSandbox())
12
+ type = ORG_TYPE_SANDBOX;
13
+ else
14
+ type = ORG_TYPE_PRODUCTION;
15
+ const connection = {
16
+ Name: name ? name : `${org.getUsername() ?? ''} ${org.getOrgId()}`,
17
+ PDRI__Access_Token__c: org.getConnection().getConnectionOptions().accessToken,
18
+ PDRI__Active__c: true,
19
+ PDRI__Instance_URL__c: org.getConnection().getConnectionOptions().instanceUrl?.replace(trailSlashRegex, ''),
20
+ PDRI__Org_Type__c: type,
21
+ PDRI__OrganizationId__c: org.getOrgId(),
22
+ PDRI__User_Id__c: org.getConnection().getConnectionOptions().userId,
23
+ PDRI__Username__c: org.getUsername(),
24
+ };
25
+ const retrievedConnection = await hubConn.create('PDRI__Connection__c', connection);
26
+ return retrievedConnection.id;
27
+ };
28
+ const getConnectionId = async ({ hubConn, orgId, print }) => {
29
+ if (print)
30
+ print(`Retrieving the connection record ID for org ${orgId}.`);
31
+ const query = `
32
+ SELECT
33
+ Id
34
+ FROM
35
+ PDRI__Connection__c
36
+ WHERE
37
+ PDRI__OrganizationId__c = '${orgId}' AND PDRI__Active__c = true
38
+ ORDER BY
39
+ CreatedDate DESC
40
+ LIMIT 1`;
41
+ if (print)
42
+ print('Running query: ' + query);
43
+ // Query the org
44
+ const result = await hubConn.query(query);
45
+ if (print)
46
+ print('Query result: ', result);
47
+ if (!result?.records || result.records.length === 0) {
48
+ return null;
49
+ }
50
+ if (print)
51
+ print('Connection record: ' + result.records[0].Id);
52
+ return result.records[0].Id;
53
+ };
54
+ const queryConnection = async ({ connectionNameOrId, hubConn, print }) => {
55
+ if (print)
56
+ print('Querying connection: ' + connectionNameOrId);
57
+ const isId = ORG_ID_REG_EXP.test(connectionNameOrId);
58
+ const query = `
59
+ SELECT
60
+ Id, Name, PDRI__OrganizationId__c
61
+ FROM
62
+ PDRI__Connection__c
63
+ WHERE
64
+ PDRI__Active__c = true AND ${isId ? 'Id' : 'Name'} = '${connectionNameOrId}'
65
+ ORDER BY
66
+ lastmodifieddate DESC
67
+ LIMIT 1`;
68
+ if (print)
69
+ print(`Running source query:${query}`);
70
+ const result = await hubConn.query(query);
71
+ if (!result?.records || result.records.length === 0) {
72
+ throw new SfError(prodlyMessages.getMessage('errorNoConnectionFound', [connectionNameOrId]));
73
+ }
74
+ return result.records[0];
75
+ };
76
+ const queryConnections = async ({ connectionIds, hubConn, print }) => {
77
+ if (print)
78
+ print('Querying connections');
79
+ if (connectionIds.length === 0) {
80
+ return new Map();
81
+ }
82
+ const query = `
83
+ SELECT
84
+ Id, Name, PDRI__Instance_URL__c
85
+ FROM
86
+ PDRI__Connection__c
87
+ WHERE
88
+ Id IN (${connectionIds.map((connectionId) => `'${connectionId}'`).join(',')})`;
89
+ if (print)
90
+ print('Running source query: ' + query);
91
+ const result = await hubConn.query(query);
92
+ if (!result.records || result.records.length === 0) {
93
+ throw new SfError(prodlyMessages.getMessage('errorNoConnectionFound', connectionIds));
94
+ }
95
+ const connections = new Map();
96
+ result.records.forEach((connection) => {
97
+ connections.set(connection.Id, connection);
98
+ });
99
+ return connections;
100
+ };
101
+ const updateConnection = async ({ connectionId, hubConn, org }) => {
102
+ const connection = {
103
+ Id: connectionId,
104
+ PDRI__Access_Token__c: org.getConnection()?.getConnectionOptions()?.accessToken,
105
+ };
106
+ return hubConn.update('PDRI__Connection__c', connection);
107
+ };
108
+ export { createConnection, getConnectionId, queryConnection, queryConnections, updateConnection };
109
+ //# sourceMappingURL=connections.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connections.js","sourceRoot":"","sources":["../../src/services/connections.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ import { Connection, Org } from '@salesforce/core';
2
+ import { ProdlyConnection } from '../types/prodly.js';
3
+ import { SaveResult } from '../types/salesforce.js';
4
+ type printFn = (message?: string | undefined, ...args: unknown[]) => void;
5
+ export type CreateConnectionFn = ({ hubConn, name, org, print, }: {
6
+ hubConn: Connection;
7
+ name: string | undefined;
8
+ org: Org;
9
+ print?: printFn;
10
+ }) => Promise<string | undefined>;
11
+ export type GetConnectionIdFn = ({ hubConn, orgId, print, }: {
12
+ hubConn: Connection;
13
+ orgId: string;
14
+ print?: printFn;
15
+ }) => Promise<string | null | undefined>;
16
+ export type QueryConnectionFn = ({ connectionNameOrId, hubConn, print, }: {
17
+ connectionNameOrId: string;
18
+ hubConn: Connection;
19
+ print?: printFn;
20
+ }) => Promise<ProdlyConnection>;
21
+ export type QueryConnectionsFn = ({ connectionIds, hubConn, print, }: {
22
+ connectionIds: string[];
23
+ hubConn: Connection;
24
+ print?: printFn;
25
+ }) => Promise<Map<string, ProdlyConnection>>;
26
+ export type UpdateConnectionFn = ({ connectionId, hubConn, org, }: {
27
+ connectionId: string;
28
+ hubConn: Connection;
29
+ org: Org;
30
+ }) => Promise<SaveResult>;
31
+ export {};
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=connections.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connections.types.js","sourceRoot":"","sources":["../../src/services/connections.types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,4 @@
1
+ import { GetJobFn, JobCompletionFn } from './jobs.types.js';
2
+ declare const getJob: GetJobFn;
3
+ declare const jobCompletion: JobCompletionFn;
4
+ export { getJob, jobCompletion };
@@ -0,0 +1,26 @@
1
+ import { JOB_STATUS_COMPLETED } from '../constants/index.js';
2
+ const BASE_PATH = '/services/apexrest/PDRI/v1/jobs';
3
+ const getJob = async ({ hubConn, jobId }) => {
4
+ const path = `${BASE_PATH}/${jobId}`;
5
+ const res = await hubConn.request(`${hubConn.instanceUrl}${path}`);
6
+ const jobsWrapper = JSON.parse(res);
7
+ return jobsWrapper.jobs[0];
8
+ };
9
+ const jobCompletion = async ({ hubConn, jobId, print }) => {
10
+ const path = `${BASE_PATH}/${jobId}`;
11
+ const res = await hubConn.request(`${hubConn.instanceUrl}${path}`);
12
+ if (print)
13
+ print(`Job status result ${JSON.stringify(res)}.`);
14
+ const jobsWrapper = JSON.parse(res);
15
+ const job = jobsWrapper.jobs[0];
16
+ if (print)
17
+ print(`Job status job ${JSON.stringify(job)}.`);
18
+ if (job.status === JOB_STATUS_COMPLETED) {
19
+ return job;
20
+ }
21
+ else {
22
+ return undefined;
23
+ }
24
+ };
25
+ export { getJob, jobCompletion };
26
+ //# sourceMappingURL=jobs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jobs.js","sourceRoot":"","sources":["../../src/services/jobs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAI7D,MAAM,SAAS,GAAG,iCAAiC,CAAC;AAEpD,MAAM,MAAM,GAAa,KAAK,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE;IACpD,MAAM,IAAI,GAAG,GAAG,SAAS,IAAI,KAAK,EAAE,CAAC;IACrC,MAAM,GAAG,GAAW,MAAM,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,EAAE,CAAC,CAAC;IAC3E,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAS,CAAC;IAC5C,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAC7B,CAAC,CAAC;AAEF,MAAM,aAAa,GAAoB,KAAK,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE;IACzE,MAAM,IAAI,GAAG,GAAG,SAAS,IAAI,KAAK,EAAE,CAAC;IAErC,MAAM,GAAG,GAAW,MAAM,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,EAAE,CAAC,CAAC;IAC3E,IAAI,KAAK;QAAE,KAAK,CAAC,qBAAqB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC9D,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAS,CAAC;IAC5C,MAAM,GAAG,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAEhC,IAAI,KAAK;QAAE,KAAK,CAAC,kBAAkB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAE3D,IAAI,GAAG,CAAC,MAAM,KAAK,oBAAoB,EAAE,CAAC;QACxC,OAAO,GAAG,CAAC;IACb,CAAC;SAAM,CAAC;QACN,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC,CAAC;AAEF,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { Connection } from '@salesforce/core';
2
+ import { Job } from '../types/prodly.js';
3
+ type printFn = (message: string) => void;
4
+ export type GetJobFn = ({ hubConn, jobId }: {
5
+ hubConn: Connection;
6
+ jobId: string;
7
+ }) => Promise<Job | undefined>;
8
+ export type JobCompletionFn = ({ hubConn, jobId, print, }: {
9
+ hubConn: Connection;
10
+ jobId: string;
11
+ print?: printFn;
12
+ }) => Promise<Job | undefined>;
13
+ export {};
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=jobs.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jobs.types.js","sourceRoot":"","sources":["../../src/services/jobs.types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,9 @@
1
+ import { GetManagedInstanceFn, GetManagedInstancesFn, ManageInstanceAsyncFn, ManageInstanceFn, PostInstancesFn, PutInstancesFn, UnmanageInstanceFn } from './manage-instances.types.js';
2
+ declare const getManagedInstances: GetManagedInstancesFn;
3
+ declare const getManagedInstance: GetManagedInstanceFn;
4
+ declare const manageInstance: ManageInstanceFn;
5
+ declare const manageInstanceAsync: ManageInstanceAsyncFn;
6
+ declare const postInstances: PostInstancesFn;
7
+ declare const putInstances: PutInstancesFn;
8
+ declare const unmanageInstance: UnmanageInstanceFn;
9
+ export { getManagedInstance, getManagedInstances, manageInstance, manageInstanceAsync, postInstances, putInstances, unmanageInstance, };
@@ -0,0 +1,116 @@
1
+ import { SfError } from '@salesforce/core';
2
+ import { delay } from '../utils/index.js';
3
+ import { jobCompletion } from './jobs.js';
4
+ const BASE_PATH = '/services/apexrest/PDRI/v1/instances';
5
+ const getManagedInstances = async ({ hubConn, print }) => {
6
+ if (print)
7
+ print('Retrieving all managed instances.');
8
+ const managedInstances = await hubConn.request(`${hubConn.instanceUrl}${BASE_PATH}`);
9
+ return managedInstances;
10
+ };
11
+ const getManagedInstance = async ({ hubConn, orgId, print }) => {
12
+ if (print)
13
+ print(`Retrieving the managed instance ID for org ${orgId ?? ''}.`);
14
+ const managedInstances = await getManagedInstances({ hubConn });
15
+ const managedInstance = managedInstances.instances.find((instance) => instance.platformInstanceId === orgId);
16
+ return managedInstance;
17
+ };
18
+ const manageInstance = async ({ body, hubConn, orgId, print }) => {
19
+ if (print) {
20
+ print(`Managing instance for org ID ${orgId}.`);
21
+ print(`Manage instance body: ${JSON.stringify(body)}`);
22
+ }
23
+ const request = {
24
+ body: JSON.stringify(body),
25
+ method: 'POST',
26
+ url: BASE_PATH,
27
+ };
28
+ const res = await hubConn.request(request);
29
+ if (print)
30
+ print(`Manage instance response ${res}.`);
31
+ const jobsWrapper = JSON.parse(res);
32
+ const jobId = jobsWrapper.jobs[0].id;
33
+ if (!jobId) {
34
+ throw new SfError('No job ID returned after submitting an instance to be managed.');
35
+ }
36
+ if (print) {
37
+ print(`Manage instance job ID ${jobId}.`);
38
+ print(`Waiting for completion of the manage instance job ID ${jobId}.`);
39
+ }
40
+ // Currently wait for no jobs to be returned, which mean the job completed, but bad way of doing this.
41
+ let completedJob = null;
42
+ for (let i = 0; i < 1800; i++) {
43
+ if (print)
44
+ print('Calling job completion check.');
45
+ // eslint-disable-next-line no-await-in-loop
46
+ const job = await jobCompletion({ jobId, hubConn, print });
47
+ if (print)
48
+ print('Completed job completion check.');
49
+ if (job) {
50
+ if (print)
51
+ print('Job completed.');
52
+ completedJob = job;
53
+ break;
54
+ }
55
+ // eslint-disable-next-line no-await-in-loop
56
+ await delay(1000);
57
+ }
58
+ if (!completedJob) {
59
+ throw new SfError('Manage instance job did not complete within the allowed time.');
60
+ }
61
+ const managedInstance = JSON.parse(completedJob.resultData);
62
+ return { jobId: completedJob.id, managedInstance };
63
+ };
64
+ const manageInstanceAsync = async ({ body, hubConn, print }) => {
65
+ const request = {
66
+ body: JSON.stringify(body),
67
+ method: 'POST',
68
+ url: BASE_PATH,
69
+ };
70
+ const res = await hubConn.request(request);
71
+ if (print) {
72
+ print('Manage instance response:');
73
+ print(res);
74
+ }
75
+ const jobsWrapper = JSON.parse(res);
76
+ const jobId = jobsWrapper.jobs[0].id;
77
+ if (!jobId) {
78
+ throw new SfError('No job ID returned after submitting an instance to be managed.');
79
+ }
80
+ return jobId;
81
+ };
82
+ const postInstances = async ({ body, hubConn }) => {
83
+ const request = {
84
+ body: JSON.stringify(body),
85
+ method: 'POST',
86
+ url: BASE_PATH,
87
+ };
88
+ const res = await hubConn.request(request);
89
+ const jobsWrapper = JSON.parse(res);
90
+ const jobId = jobsWrapper.jobs[0].id;
91
+ if (!jobId) {
92
+ throw new SfError('No job ID returned.');
93
+ }
94
+ return { jobId };
95
+ };
96
+ const putInstances = async ({ body, hubConn }) => {
97
+ const request = {
98
+ body: JSON.stringify(body),
99
+ method: 'PUT',
100
+ url: BASE_PATH,
101
+ };
102
+ await hubConn.request(request);
103
+ };
104
+ const unmanageInstance = async ({ hubConn, instanceId, print }) => {
105
+ if (print)
106
+ print(`Unmanaging instance with ID ${instanceId}.`);
107
+ const path = `${BASE_PATH}/${instanceId}`;
108
+ const request = {
109
+ method: 'DELETE',
110
+ url: path,
111
+ };
112
+ await hubConn.request(request);
113
+ return;
114
+ };
115
+ export { getManagedInstance, getManagedInstances, manageInstance, manageInstanceAsync, postInstances, putInstances, unmanageInstance, };
116
+ //# sourceMappingURL=manage-instances.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manage-instances.js","sourceRoot":"","sources":["../../src/services/manage-instances.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,58 @@
1
+ import { Connection } from '@salesforce/core';
2
+ import { ManagedInstance, ManagedInstances } from '../types/prodly.js';
3
+ type printFn = (message: string) => void;
4
+ export type GetManagedInstancesFn = ({ hubConn, print, }: {
5
+ hubConn: Connection;
6
+ print?: printFn;
7
+ }) => Promise<ManagedInstances>;
8
+ export type GetManagedInstanceFn = ({ hubConn, orgId, print, }: {
9
+ hubConn: Connection;
10
+ orgId: string | undefined;
11
+ print?: printFn;
12
+ }) => Promise<ManagedInstance | undefined>;
13
+ export type ManageInstanceFn = ({ body, hubConn, orgId, print, }: {
14
+ body: {
15
+ [key: string]: {
16
+ [key: string]: unknown;
17
+ };
18
+ };
19
+ orgId: string;
20
+ hubConn: Connection;
21
+ print?: printFn;
22
+ }) => Promise<{
23
+ jobId: string;
24
+ managedInstance: ManagedInstance;
25
+ }>;
26
+ export type ManageInstanceAsyncFn = ({ body, hubConn, print, }: {
27
+ body: {
28
+ [key: string]: {
29
+ [key: string]: unknown;
30
+ };
31
+ };
32
+ hubConn: Connection;
33
+ print?: printFn;
34
+ }) => Promise<string>;
35
+ export type UnmanageInstanceFn = ({ instanceId, hubConn, print, }: {
36
+ instanceId: string;
37
+ hubConn: Connection;
38
+ print?: printFn;
39
+ }) => Promise<void>;
40
+ export type PostInstancesFn = ({ body, hubConn, }: {
41
+ hubConn: Connection;
42
+ body: {
43
+ [key: string]: {
44
+ [key: string]: unknown;
45
+ };
46
+ };
47
+ }) => Promise<{
48
+ jobId: string;
49
+ }>;
50
+ export type PutInstancesFn = ({ body, hubConn, }: {
51
+ hubConn: Connection;
52
+ body: {
53
+ [key: string]: {
54
+ [key: string]: unknown;
55
+ };
56
+ };
57
+ }) => Promise<void>;
58
+ export {};
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=manage-instances.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manage-instances.types.js","sourceRoot":"","sources":["../../src/services/manage-instances.types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,8 @@
1
+ import { Connection } from '@salesforce/core';
2
+ declare const getDeploymentEntityId: ({ dataEntityFlag, dataEntityType, hubConn, print, }: {
3
+ dataEntityFlag: string;
4
+ dataEntityType: string;
5
+ hubConn: Connection;
6
+ print?: (message?: string | undefined, ...args: unknown[]) => void;
7
+ }) => Promise<string | undefined>;
8
+ export { getDeploymentEntityId };