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.
- package/README.md +18 -16
- package/lib/commands/prodly/checkin.d.ts +20 -0
- package/lib/commands/prodly/checkin.js +130 -0
- package/lib/commands/prodly/checkin.js.map +1 -0
- package/lib/commands/prodly/checkout.d.ts +21 -0
- package/lib/commands/prodly/checkout.js +137 -0
- package/lib/commands/prodly/checkout.js.map +1 -0
- package/lib/commands/prodly/deploy.d.ts +26 -0
- package/lib/commands/prodly/deploy.js +264 -0
- package/lib/commands/prodly/deploy.js.map +1 -0
- package/lib/commands/prodly/jobs.d.ts +15 -0
- package/lib/commands/prodly/jobs.js +33 -0
- package/lib/commands/prodly/jobs.js.map +1 -0
- package/lib/commands/prodly/manage.d.ts +24 -0
- package/lib/commands/prodly/manage.js +167 -0
- package/lib/commands/prodly/manage.js.map +1 -0
- package/lib/commands/prodly/version.d.ts +16 -0
- package/lib/commands/prodly/version.js +88 -0
- package/lib/commands/prodly/version.js.map +1 -0
- package/lib/constants/index.d.ts +5 -0
- package/lib/constants/index.js +6 -0
- package/lib/constants/index.js.map +1 -0
- package/lib/helpers/index.d.ts +6 -0
- package/lib/helpers/index.js +17 -0
- package/lib/helpers/index.js.map +1 -0
- package/lib/index.d.ts +2 -0
- package/lib/index.js +2 -0
- package/lib/index.js.map +1 -0
- package/lib/services/connections.d.ts +7 -0
- package/lib/services/connections.js +109 -0
- package/lib/services/connections.js.map +1 -0
- package/lib/services/connections.types.d.ts +31 -0
- package/lib/services/connections.types.js +2 -0
- package/lib/services/connections.types.js.map +1 -0
- package/lib/services/jobs.d.ts +4 -0
- package/lib/services/jobs.js +26 -0
- package/lib/services/jobs.js.map +1 -0
- package/lib/services/jobs.types.d.ts +13 -0
- package/lib/services/jobs.types.js +2 -0
- package/lib/services/jobs.types.js.map +1 -0
- package/lib/services/manage-instances.d.ts +9 -0
- package/lib/services/manage-instances.js +116 -0
- package/lib/services/manage-instances.js.map +1 -0
- package/lib/services/manage-instances.types.d.ts +58 -0
- package/lib/services/manage-instances.types.js +2 -0
- package/lib/services/manage-instances.types.js.map +1 -0
- package/lib/services/queries.d.ts +8 -0
- package/lib/services/queries.js +54 -0
- package/lib/services/queries.js.map +1 -0
- package/lib/types/generic.d.ts +5 -0
- package/lib/types/generic.js +2 -0
- package/lib/types/generic.js.map +1 -0
- package/lib/types/prodly.d.ts +69 -0
- package/lib/types/prodly.js +2 -0
- package/lib/types/prodly.js.map +1 -0
- package/lib/types/salesforce.d.ts +14 -0
- package/lib/types/salesforce.js +2 -0
- package/lib/types/salesforce.js.map +1 -0
- package/lib/utils/index.d.ts +2 -0
- package/lib/utils/index.js +3 -0
- package/lib/utils/index.js.map +1 -0
- package/messages/prodly.checkin.md +1 -1
- package/messages/prodly.checkout.md +1 -1
- package/messages/prodly.deploy.md +2 -2
- package/messages/prodly.json +1 -0
- package/messages/prodly.manage.md +1 -1
- package/messages/prodly.version.md +3 -0
- package/npm-shrinkwrap.json +1715 -1090
- package/oclif.lock +2327 -2091
- package/oclif.manifest.json +708 -2
- package/package.json +10 -10
package/README.md
CHANGED
|
@@ -81,7 +81,7 @@ EXAMPLES
|
|
|
81
81
|
Save managed data to the branch associated with the managed instance identified by the target username.
|
|
82
82
|
The instance should be managed by the Prodly account associated with the provided DevHub control org.
|
|
83
83
|
|
|
84
|
-
$ sf prodly:checkin -
|
|
84
|
+
$ sf prodly:checkin --target-org test-utxac7gbati9@example.com
|
|
85
85
|
Save managed data to the branch associated with the managed instance identified by the target username.
|
|
86
86
|
The instance should be managed by the Prodly account associated with the default DevHub control org.
|
|
87
87
|
|
|
@@ -120,16 +120,16 @@ DESCRIPTION
|
|
|
120
120
|
Deploy data from a VCS repository branch to a Salesforce environment.
|
|
121
121
|
|
|
122
122
|
EXAMPLES
|
|
123
|
-
$ sf prodly:
|
|
124
|
-
|
|
123
|
+
$ sf prodly:checkout --target-org test-utxac7gbati9@example.com --target-dev-hub jsmith@acme.com
|
|
124
|
+
Deploy managed data to the managed instance identified by the target org from the associated branch.
|
|
125
125
|
The instance should be managed by the Prodly account associated with the provided DevHub control org.
|
|
126
126
|
|
|
127
|
-
$ sf prodly:
|
|
128
|
-
|
|
127
|
+
$ sf prodly:checkout --target-org test-utxac7gbati9@example.com
|
|
128
|
+
Deploy managed data to the managed instance org identified by the target username from the associated branch.
|
|
129
129
|
The instance should be managed by the Prodly account associated with the default DevHub control org.
|
|
130
130
|
|
|
131
|
-
$ sf prodly:
|
|
132
|
-
|
|
131
|
+
$ sf prodly:checkout -i f50616b6-57b1-4941-802f-ee0e2506f217
|
|
132
|
+
Deploy managed data to the managed instance org from the associated branch.
|
|
133
133
|
The instance should be managed by the Prodly account associated with the default DevHub control org.
|
|
134
134
|
```
|
|
135
135
|
|
|
@@ -165,14 +165,14 @@ DESCRIPTION
|
|
|
165
165
|
Deploy data from one Salesforce environment directly to another Salesforce environment.
|
|
166
166
|
|
|
167
167
|
EXAMPLES
|
|
168
|
-
$ sf prodly:deploy -n scratchorg -
|
|
168
|
+
$ sf prodly:deploy -n scratchorg --target-org FixesScratchOrg -v MainDevHub
|
|
169
169
|
Command output... deploying from the dev hub, the control org, to the scratch org, auto managed with provided name.
|
|
170
170
|
Command output...
|
|
171
171
|
|
|
172
172
|
$ sf prodly:deploy --target-org test-utxac7gbati9@example.com --target-dev-hub jsmith@acme.com
|
|
173
173
|
Command output... deploying from the dev hub, the control org, to the scratch org. Long param names.
|
|
174
174
|
|
|
175
|
-
$ sf prodly:deploy -
|
|
175
|
+
$ sf prodly:deploy --target-org test-utxac7gbati9@example.com -v jsmith@acme.com -d "UAT Sandbox Connection"
|
|
176
176
|
Command output... deploying from the scratch org to the UAT sandbox, using the named connection record in the dev hub, control org.
|
|
177
177
|
|
|
178
178
|
$ sf prodly:deploy --target-org test-utxac7gbati9@example.com --target-dev-hub jsmith@acme.com --source "UAT Sandbox Connection"
|
|
@@ -217,7 +217,7 @@ EXAMPLES
|
|
|
217
217
|
$ sf prodly:manage -m --target-org test-utxac7gbati9@example.com --target-dev-hub jsmith@acme.com
|
|
218
218
|
Manage the org associated with the target username under the Prodly account associated with the provided DevHub control org.
|
|
219
219
|
|
|
220
|
-
$ sf prodly:manage -m -
|
|
220
|
+
$ sf prodly:manage -m --target-org test-utxac7gbati9@example.com -n dev7sbx
|
|
221
221
|
Manage and version the org associated with the target username under the Prodly account associated with the default DevHub control org.
|
|
222
222
|
|
|
223
223
|
```
|
|
@@ -250,17 +250,19 @@ EXAMPLES
|
|
|
250
250
|
|
|
251
251
|
```
|
|
252
252
|
USAGE
|
|
253
|
-
$ sf prodly:version -
|
|
253
|
+
$ sf prodly:version -v <value> -o <value> [--json] [-b <value>] [-s <value>] [-i <value>]
|
|
254
|
+
[-x]
|
|
254
255
|
|
|
255
256
|
FLAGS
|
|
256
257
|
-b, --new-branch=<value> if provided it creates a new branch based on the source branch that will be used for
|
|
257
258
|
version control
|
|
258
259
|
-i, --instance=<value> managed instance ID on which to perform the action
|
|
259
|
-
-o, --target-org=<value> (required)
|
|
260
|
-
|
|
261
|
-
-s, --source-branch=<value>
|
|
262
|
-
-v, --target-dev-hub=<value> (required)
|
|
263
|
-
|
|
260
|
+
-o, --target-org=<value> (required) Username or alias of the target org. Not required if the `target-org`
|
|
261
|
+
configuration variable is already set.
|
|
262
|
+
-s, --source-branch=<value> the version control branch or the base for the new branch (if provided)
|
|
263
|
+
-v, --target-dev-hub=<value> (required) Username or alias of the Dev Hub org. Not required if the `target-dev-hub`
|
|
264
|
+
configuration variable is already set.
|
|
265
|
+
-x, --unlink unlink the branch from the managed instance
|
|
264
266
|
|
|
265
267
|
GLOBAL FLAGS
|
|
266
268
|
--json Format output as json.
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { SfCommand } from '@salesforce/sf-plugins-core';
|
|
2
|
+
import { JSONObject } from '../../types/generic.js';
|
|
3
|
+
export default class ProdlyCheckin extends SfCommand<JSONObject> {
|
|
4
|
+
static readonly summary: string;
|
|
5
|
+
static readonly description: string;
|
|
6
|
+
static readonly examples: string[];
|
|
7
|
+
static readonly flags: {
|
|
8
|
+
'target-dev-hub': import("@oclif/core/interfaces").OptionFlag<import("@salesforce/core").Org, import("@oclif/core/interfaces").CustomOptions>;
|
|
9
|
+
'target-org': import("@oclif/core/interfaces").OptionFlag<import("@salesforce/core").Org, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
|
+
branch: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
|
+
comment: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
|
+
dataset: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
|
+
filter: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
14
|
+
instance: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
15
|
+
notes: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
16
|
+
plan: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
17
|
+
};
|
|
18
|
+
run(): Promise<JSONObject>;
|
|
19
|
+
private checkinInstance;
|
|
20
|
+
}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
import { Messages, SfError } from '@salesforce/core';
|
|
2
|
+
import { Flags, SfCommand } from '@salesforce/sf-plugins-core';
|
|
3
|
+
import { constructQueryFilter } from '../../helpers/index.js';
|
|
4
|
+
import { updateConnection } from '../../services/connections.js';
|
|
5
|
+
import { getManagedInstance } from '../../services/manage-instances.js';
|
|
6
|
+
import { getDeploymentEntityId } from '../../services/queries.js';
|
|
7
|
+
Messages.importMessagesDirectoryFromMetaUrl(import.meta.url);
|
|
8
|
+
const commandMessages = Messages.loadMessages('prodlysfcli', 'prodly.checkin');
|
|
9
|
+
const prodlyMessages = Messages.loadMessages('prodlysfcli', 'prodly');
|
|
10
|
+
export default class ProdlyCheckin extends SfCommand {
|
|
11
|
+
static summary = commandMessages.getMessage('summary');
|
|
12
|
+
static description = prodlyMessages.getMessage('descriptionCheckinCommand');
|
|
13
|
+
static examples = commandMessages.getMessages('examples');
|
|
14
|
+
static flags = {
|
|
15
|
+
'target-dev-hub': Flags.requiredHub(),
|
|
16
|
+
'target-org': Flags.requiredOrg(),
|
|
17
|
+
branch: Flags.string({ char: 'b', summary: prodlyMessages.getMessage('branchFlagDescription') }),
|
|
18
|
+
comment: Flags.string({ char: 'c', required: true, summary: prodlyMessages.getMessage('commentFlagDescription') }),
|
|
19
|
+
dataset: Flags.string({ char: 't', summary: prodlyMessages.getMessage('dataSetFlagDescription') }),
|
|
20
|
+
filter: Flags.string({ char: 'q', summary: prodlyMessages.getMessage('queryFilterFlagDescription') }),
|
|
21
|
+
instance: Flags.string({ char: 'i', summary: prodlyMessages.getMessage('instanceFlagDescription') }),
|
|
22
|
+
notes: Flags.string({ char: 'z', summary: prodlyMessages.getMessage('notesFlagDescription') }),
|
|
23
|
+
plan: Flags.string({ char: 'p', summary: prodlyMessages.getMessage('deploymentPlanFlagDescription') }),
|
|
24
|
+
};
|
|
25
|
+
async run() {
|
|
26
|
+
const { flags } = await this.parse(ProdlyCheckin);
|
|
27
|
+
const { branch: branchFlag, comment: commentFlag, dataset: datasetFlag, filter: queryFilterFlag, instance: instanceFlag, notes: deploymentNotesFlag, plan: planFlag, } = flags;
|
|
28
|
+
this.log('Instance flag: ' + instanceFlag);
|
|
29
|
+
this.log('Deployment description flag: ' + deploymentNotesFlag);
|
|
30
|
+
this.log('Comment flag: ' + commentFlag);
|
|
31
|
+
this.log('Branch flag: ' + branchFlag);
|
|
32
|
+
this.log('Data set flag: ' + datasetFlag);
|
|
33
|
+
this.log('Deployment plan flag: ' + planFlag);
|
|
34
|
+
this.log('Query filter flag: ' + queryFilterFlag);
|
|
35
|
+
if (!datasetFlag && !planFlag) {
|
|
36
|
+
throw new SfError(prodlyMessages.getMessage('errorNoDatasetAndPlanFlags', []));
|
|
37
|
+
}
|
|
38
|
+
if (!datasetFlag && queryFilterFlag) {
|
|
39
|
+
throw new SfError(prodlyMessages.getMessage('errorQueryFilterFlag', []));
|
|
40
|
+
}
|
|
41
|
+
const org = flags['target-org'];
|
|
42
|
+
const hubOrg = flags['target-dev-hub'];
|
|
43
|
+
const hubConn = hubOrg.getConnection();
|
|
44
|
+
const print = (message, ...args) => this.log(message, ...args);
|
|
45
|
+
let mangedInstanceId = null;
|
|
46
|
+
let dataSetId;
|
|
47
|
+
let deploymentPlanId;
|
|
48
|
+
// Retrieve the data set or deployment plan to deploy
|
|
49
|
+
this.log('Retrieving data set or deployment plan to deploy.');
|
|
50
|
+
if (datasetFlag) {
|
|
51
|
+
dataSetId = await getDeploymentEntityId({
|
|
52
|
+
dataEntityFlag: datasetFlag,
|
|
53
|
+
dataEntityType: 'PDRI__DataSet__c',
|
|
54
|
+
hubConn,
|
|
55
|
+
print,
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
else if (planFlag) {
|
|
59
|
+
deploymentPlanId = await getDeploymentEntityId({
|
|
60
|
+
dataEntityFlag: planFlag,
|
|
61
|
+
dataEntityType: 'PDRI__Deployment_Plan__c',
|
|
62
|
+
hubConn,
|
|
63
|
+
print,
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
this.log(`Data set ID: ${dataSetId ?? ''}`);
|
|
67
|
+
this.log(`Deployment plan ID: ${deploymentPlanId ?? ''}`);
|
|
68
|
+
// Check if instance is provided
|
|
69
|
+
if (instanceFlag) {
|
|
70
|
+
// Use provided managed instance
|
|
71
|
+
this.log(`Managed instance ID provided, using instance with id ${instanceFlag}`);
|
|
72
|
+
mangedInstanceId = instanceFlag;
|
|
73
|
+
}
|
|
74
|
+
else {
|
|
75
|
+
// Retrieve the managed instance associated with target org
|
|
76
|
+
// DevHub control org is never used as the default
|
|
77
|
+
const managedInstance = await getManagedInstance({ hubConn, orgId: org.getOrgId(), print });
|
|
78
|
+
if (!managedInstance) {
|
|
79
|
+
throw new SfError(prodlyMessages.getMessage('errorManagedInstaceNotFound'));
|
|
80
|
+
}
|
|
81
|
+
this.log(`Managed instance ID retrieved, using instance with id ${managedInstance.id}`);
|
|
82
|
+
mangedInstanceId = managedInstance.id;
|
|
83
|
+
this.log('Refreshing org session auth');
|
|
84
|
+
try {
|
|
85
|
+
await org.refreshAuth();
|
|
86
|
+
}
|
|
87
|
+
catch {
|
|
88
|
+
// Target username not valid or not specified, refresh failed
|
|
89
|
+
}
|
|
90
|
+
// Update the connection with the latest access token
|
|
91
|
+
this.log('Updating the connection with the latest access token');
|
|
92
|
+
await updateConnection({ connectionId: managedInstance.connectionId, hubConn, org });
|
|
93
|
+
}
|
|
94
|
+
// Perform the checkin
|
|
95
|
+
const jobId = await this.checkinInstance({
|
|
96
|
+
branchFlag,
|
|
97
|
+
comment: commentFlag,
|
|
98
|
+
dataSetId,
|
|
99
|
+
deploymentNotes: deploymentNotesFlag,
|
|
100
|
+
deploymentPlanId,
|
|
101
|
+
filter: queryFilterFlag,
|
|
102
|
+
hubConn,
|
|
103
|
+
mangedInstanceId,
|
|
104
|
+
});
|
|
105
|
+
this.log(`Checkin launched with Job ID: ${jobId}`);
|
|
106
|
+
return { jobId, message: 'Checkin launched' };
|
|
107
|
+
}
|
|
108
|
+
async checkinInstance({ branchFlag, comment, dataSetId, deploymentNotes, deploymentPlanId, filter, hubConn, mangedInstanceId, }) {
|
|
109
|
+
this.log(`Performing checkin for managed instance with id ${mangedInstanceId}.`);
|
|
110
|
+
const path = `/services/apexrest/PDRI/v1/instances/${mangedInstanceId}/checkin`;
|
|
111
|
+
const checkinInstance = {
|
|
112
|
+
branchName: branchFlag,
|
|
113
|
+
datasetId: dataSetId,
|
|
114
|
+
deploymentNotes,
|
|
115
|
+
deploymentPlanId,
|
|
116
|
+
options: { commitMessage: comment },
|
|
117
|
+
queryFilter: constructQueryFilter(filter),
|
|
118
|
+
};
|
|
119
|
+
const request = {
|
|
120
|
+
body: JSON.stringify(checkinInstance),
|
|
121
|
+
method: 'POST',
|
|
122
|
+
url: path,
|
|
123
|
+
};
|
|
124
|
+
const res = await hubConn.request(request);
|
|
125
|
+
const jobsWrapper = JSON.parse(res);
|
|
126
|
+
const jobId = jobsWrapper.jobs[0].id;
|
|
127
|
+
return jobId;
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
//# sourceMappingURL=checkin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"checkin.js","sourceRoot":"","sources":["../../../src/commands/prodly/checkin.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { SfCommand } from '@salesforce/sf-plugins-core';
|
|
2
|
+
import { JSONObject } from '../../types/generic.js';
|
|
3
|
+
export default class ProdlyCheckout extends SfCommand<JSONObject> {
|
|
4
|
+
static readonly summary: string;
|
|
5
|
+
static readonly description: string;
|
|
6
|
+
static readonly examples: string[];
|
|
7
|
+
static readonly flags: {
|
|
8
|
+
'target-dev-hub': import("@oclif/core/interfaces").OptionFlag<import("@salesforce/core").Org, import("@oclif/core/interfaces").CustomOptions>;
|
|
9
|
+
'target-org': import("@oclif/core/interfaces").OptionFlag<import("@salesforce/core").Org, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
|
+
branch: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
|
+
dataset: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
|
+
deactivate: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
13
|
+
filter: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
14
|
+
instance: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
15
|
+
name: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
16
|
+
notes: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
17
|
+
plan: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
18
|
+
};
|
|
19
|
+
run(): Promise<JSONObject>;
|
|
20
|
+
private checkoutInstance;
|
|
21
|
+
}
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
import { Messages, SfError } from '@salesforce/core';
|
|
2
|
+
import { Flags, SfCommand } from '@salesforce/sf-plugins-core';
|
|
3
|
+
import { constructQueryFilter } from '../../helpers/index.js';
|
|
4
|
+
import { updateConnection } from '../../services/connections.js';
|
|
5
|
+
import { getManagedInstance } from '../../services/manage-instances.js';
|
|
6
|
+
import { getDeploymentEntityId } from '../../services/queries.js';
|
|
7
|
+
Messages.importMessagesDirectoryFromMetaUrl(import.meta.url);
|
|
8
|
+
const commandMessages = Messages.loadMessages('prodlysfcli', 'prodly.checkout');
|
|
9
|
+
const prodlyMessages = Messages.loadMessages('prodlysfcli', 'prodly');
|
|
10
|
+
export default class ProdlyCheckout extends SfCommand {
|
|
11
|
+
static summary = commandMessages.getMessage('summary');
|
|
12
|
+
static description = prodlyMessages.getMessage('descriptionCheckoutCommand');
|
|
13
|
+
static examples = commandMessages.getMessages('examples');
|
|
14
|
+
static flags = {
|
|
15
|
+
'target-dev-hub': Flags.requiredHub(),
|
|
16
|
+
'target-org': Flags.requiredOrg(),
|
|
17
|
+
branch: Flags.string({ char: 'b', summary: prodlyMessages.getMessage('branchFlagDescription') }),
|
|
18
|
+
dataset: Flags.string({ char: 't', summary: prodlyMessages.getMessage('dataSetFlagDescription') }),
|
|
19
|
+
deactivate: Flags.boolean({ char: 'e', summary: prodlyMessages.getMessage('deactivateFlagDescription') }),
|
|
20
|
+
filter: Flags.string({ char: 'q', summary: prodlyMessages.getMessage('queryFilterFlagDescription') }),
|
|
21
|
+
instance: Flags.string({ char: 'i', summary: prodlyMessages.getMessage('instanceFlagDescription') }),
|
|
22
|
+
name: Flags.string({ char: 'n', summary: prodlyMessages.getMessage('deplomentNameFlagDescription') }),
|
|
23
|
+
notes: Flags.string({ char: 'z', summary: prodlyMessages.getMessage('notesFlagDescription') }),
|
|
24
|
+
plan: Flags.string({ char: 'p', summary: prodlyMessages.getMessage('deploymentPlanFlagDescription') }),
|
|
25
|
+
};
|
|
26
|
+
async run() {
|
|
27
|
+
const { flags } = await this.parse(ProdlyCheckout);
|
|
28
|
+
const { branch: branchFlag, dataset: datasetFlag, deactivate: deactivateFlag, filter: queryFilterFlag, instance: instanceFlag, name: deploymentNameFlag, notes: deploymentNotesFlag, plan: planFlag, } = flags;
|
|
29
|
+
this.log('Deployment name flag: ' + deploymentNameFlag);
|
|
30
|
+
this.log('Instance flag: ' + instanceFlag);
|
|
31
|
+
this.log('Deactivate flag: ' + deactivateFlag);
|
|
32
|
+
this.log('Deployment description flag: ' + deploymentNotesFlag);
|
|
33
|
+
this.log('Branch flag: ' + branchFlag);
|
|
34
|
+
this.log('Data set flag: ' + datasetFlag);
|
|
35
|
+
this.log('Deployment plan flag: ' + planFlag);
|
|
36
|
+
this.log('Query filter flag: ' + queryFilterFlag);
|
|
37
|
+
if (!datasetFlag && !planFlag) {
|
|
38
|
+
throw new SfError(prodlyMessages.getMessage('errorNoDatasetAndPlanFlags', []));
|
|
39
|
+
}
|
|
40
|
+
if (!deploymentNameFlag) {
|
|
41
|
+
throw new SfError(prodlyMessages.getMessage('errorDeploymentNameFlag', []));
|
|
42
|
+
}
|
|
43
|
+
if (!datasetFlag && queryFilterFlag) {
|
|
44
|
+
throw new SfError(prodlyMessages.getMessage('errorQueryFilterFlag', []));
|
|
45
|
+
}
|
|
46
|
+
const org = flags['target-org'];
|
|
47
|
+
const hubOrg = flags['target-dev-hub'];
|
|
48
|
+
const hubConn = hubOrg.getConnection();
|
|
49
|
+
const print = (message, ...args) => this.log(message, ...args);
|
|
50
|
+
let mangedInstanceId = null;
|
|
51
|
+
let dataSetId;
|
|
52
|
+
let deploymentPlanId;
|
|
53
|
+
// Retrieve the data set or deployment plan to deploy
|
|
54
|
+
this.log('Retrieving data set or deployment plan to deploy.');
|
|
55
|
+
if (datasetFlag !== undefined) {
|
|
56
|
+
dataSetId = await getDeploymentEntityId({
|
|
57
|
+
dataEntityFlag: datasetFlag,
|
|
58
|
+
dataEntityType: 'PDRI__DataSet__c',
|
|
59
|
+
hubConn,
|
|
60
|
+
print,
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
else if (planFlag !== undefined) {
|
|
64
|
+
deploymentPlanId = await getDeploymentEntityId({
|
|
65
|
+
dataEntityFlag: planFlag,
|
|
66
|
+
dataEntityType: 'PDRI__Deployment_Plan__c',
|
|
67
|
+
hubConn,
|
|
68
|
+
print,
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
this.log('Data set ID: ' + dataSetId);
|
|
72
|
+
this.log('Deployment plan ID: ' + deploymentPlanId);
|
|
73
|
+
// Check if instance is provided
|
|
74
|
+
if (instanceFlag !== undefined) {
|
|
75
|
+
// Use provided managed instance
|
|
76
|
+
this.log(`Managed instance ID provided, using instance with id ${instanceFlag}`);
|
|
77
|
+
mangedInstanceId = instanceFlag;
|
|
78
|
+
}
|
|
79
|
+
else {
|
|
80
|
+
// Retrieve the managed instance associated with target org
|
|
81
|
+
// DevHub control org is never used as the default
|
|
82
|
+
const managedInstance = await getManagedInstance({ orgId: org.getOrgId(), hubConn, print });
|
|
83
|
+
if (!managedInstance) {
|
|
84
|
+
throw new SfError(prodlyMessages.getMessage('errorManagedInstaceNotFound'));
|
|
85
|
+
}
|
|
86
|
+
this.log(`Managed instance ID retrieved, using instance with id ${managedInstance.id}`);
|
|
87
|
+
mangedInstanceId = managedInstance.id;
|
|
88
|
+
this.log('Refreshing org session auth');
|
|
89
|
+
try {
|
|
90
|
+
await org.refreshAuth();
|
|
91
|
+
}
|
|
92
|
+
catch {
|
|
93
|
+
// console.log('Target username not valid or not specified, refresh failed');
|
|
94
|
+
}
|
|
95
|
+
// Update the connection with the latest access token
|
|
96
|
+
this.log('Updating the connection with the latest access token');
|
|
97
|
+
await updateConnection({ connectionId: managedInstance.connectionId, org, hubConn });
|
|
98
|
+
}
|
|
99
|
+
// Perform the checkout
|
|
100
|
+
const jobId = await this.checkoutInstance({
|
|
101
|
+
branchFlag,
|
|
102
|
+
dataSetId,
|
|
103
|
+
deactivateAllEvents: deactivateFlag,
|
|
104
|
+
deploymentNameFlag,
|
|
105
|
+
deploymentNotes: deploymentNotesFlag,
|
|
106
|
+
deploymentPlanId,
|
|
107
|
+
filter: queryFilterFlag,
|
|
108
|
+
hubConn,
|
|
109
|
+
mangedInstanceId,
|
|
110
|
+
});
|
|
111
|
+
this.log(`Checkout launched with Job ID: ${jobId}`);
|
|
112
|
+
return { jobId, message: 'Checkout launched' };
|
|
113
|
+
}
|
|
114
|
+
async checkoutInstance({ branchFlag, dataSetId, deactivateAllEvents, deploymentNameFlag, deploymentNotes, deploymentPlanId, filter, hubConn, mangedInstanceId, }) {
|
|
115
|
+
this.log(`Performing checkout for managed instance with id ${mangedInstanceId}.`);
|
|
116
|
+
const path = `/services/apexrest/PDRI/v1/instances/${mangedInstanceId}/checkout`;
|
|
117
|
+
const checkoutInstance = {
|
|
118
|
+
branchName: branchFlag,
|
|
119
|
+
datasetId: dataSetId,
|
|
120
|
+
deactivateAll: deactivateAllEvents === undefined ? false : true,
|
|
121
|
+
deploymentName: deploymentNameFlag,
|
|
122
|
+
deploymentNotes,
|
|
123
|
+
deploymentPlanId,
|
|
124
|
+
queryFilter: constructQueryFilter(filter),
|
|
125
|
+
};
|
|
126
|
+
const request = {
|
|
127
|
+
body: JSON.stringify(checkoutInstance),
|
|
128
|
+
method: 'POST',
|
|
129
|
+
url: path,
|
|
130
|
+
};
|
|
131
|
+
const res = await hubConn.request(request);
|
|
132
|
+
const jobsWrapper = JSON.parse(res);
|
|
133
|
+
const jobId = jobsWrapper.jobs[0].id;
|
|
134
|
+
return jobId;
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
//# sourceMappingURL=checkout.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"checkout.js","sourceRoot":"","sources":["../../../src/commands/prodly/checkout.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { SfCommand } from '@salesforce/sf-plugins-core';
|
|
2
|
+
import { JSONObject } from '../../types/generic.js';
|
|
3
|
+
export type ProdlyDeployResult = {
|
|
4
|
+
path: string;
|
|
5
|
+
};
|
|
6
|
+
export default class ProdlyDeploy extends SfCommand<JSONObject> {
|
|
7
|
+
static readonly summary: string;
|
|
8
|
+
static readonly description: string;
|
|
9
|
+
static readonly examples: string[];
|
|
10
|
+
static readonly flags: {
|
|
11
|
+
'target-dev-hub': import("@oclif/core/interfaces").OptionFlag<import("@salesforce/core").Org, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
|
+
'target-org': import("@oclif/core/interfaces").OptionFlag<import("@salesforce/core").Org, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
|
+
dataset: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
14
|
+
deactivate: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
15
|
+
destination: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
16
|
+
filter: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
17
|
+
label: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
18
|
+
name: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
19
|
+
notes: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
20
|
+
plan: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
21
|
+
simulation: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
22
|
+
source: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
23
|
+
};
|
|
24
|
+
run(): Promise<JSONObject>;
|
|
25
|
+
private deploy;
|
|
26
|
+
}
|