mcdev 7.0.3 → 7.0.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/.github/ISSUE_TEMPLATE/bug.yml +1 -0
- package/.github/PULL_REQUEST_TEMPLATE/pr_template_release.md +1 -0
- package/.github/workflows/code-test.yml +48 -0
- package/.husky/pre-commit +1 -1
- package/@types/lib/Builder.d.ts +13 -13
- package/@types/lib/Builder.d.ts.map +1 -1
- package/@types/lib/Deployer.d.ts +16 -16
- package/@types/lib/Deployer.d.ts.map +1 -1
- package/@types/lib/Retriever.d.ts +15 -15
- package/@types/lib/Retriever.d.ts.map +1 -1
- package/@types/lib/cli.d.ts +1 -1
- package/@types/lib/cli.d.ts.map +1 -1
- package/@types/lib/index.d.ts +34 -34
- package/@types/lib/index.d.ts.map +1 -1
- package/@types/lib/metadataTypes/Asset.d.ts +18 -43
- package/@types/lib/metadataTypes/Asset.d.ts.map +1 -1
- package/@types/lib/metadataTypes/AttributeGroup.d.ts +3 -8
- package/@types/lib/metadataTypes/AttributeGroup.d.ts.map +1 -1
- package/@types/lib/metadataTypes/AttributeSet.d.ts +5 -21
- package/@types/lib/metadataTypes/AttributeSet.d.ts.map +1 -1
- package/@types/lib/metadataTypes/Automation.d.ts +36 -49
- package/@types/lib/metadataTypes/Automation.d.ts.map +1 -1
- package/@types/lib/metadataTypes/Campaign.d.ts +11 -18
- package/@types/lib/metadataTypes/Campaign.d.ts.map +1 -1
- package/@types/lib/metadataTypes/ContentArea.d.ts +12 -31
- package/@types/lib/metadataTypes/ContentArea.d.ts.map +1 -1
- package/@types/lib/metadataTypes/DataExtension.d.ts +23 -31
- package/@types/lib/metadataTypes/DataExtension.d.ts.map +1 -1
- package/@types/lib/metadataTypes/DataExtensionField.d.ts +12 -18
- package/@types/lib/metadataTypes/DataExtensionField.d.ts.map +1 -1
- package/@types/lib/metadataTypes/DataExtensionTemplate.d.ts +11 -11
- package/@types/lib/metadataTypes/DataExtensionTemplate.d.ts.map +1 -1
- package/@types/lib/metadataTypes/DataExtract.d.ts +12 -28
- package/@types/lib/metadataTypes/DataExtract.d.ts.map +1 -1
- package/@types/lib/metadataTypes/DataExtractType.d.ts +10 -10
- package/@types/lib/metadataTypes/DataExtractType.d.ts.map +1 -1
- package/@types/lib/metadataTypes/DeliveryProfile.d.ts +10 -10
- package/@types/lib/metadataTypes/DeliveryProfile.d.ts.map +1 -1
- package/@types/lib/metadataTypes/Discovery.d.ts +10 -10
- package/@types/lib/metadataTypes/Discovery.d.ts.map +1 -1
- package/@types/lib/metadataTypes/Email.d.ts +13 -34
- package/@types/lib/metadataTypes/Email.d.ts.map +1 -1
- package/@types/lib/metadataTypes/EmailSend.d.ts +10 -10
- package/@types/lib/metadataTypes/EmailSend.d.ts.map +1 -1
- package/@types/lib/metadataTypes/Event.d.ts +19 -16
- package/@types/lib/metadataTypes/Event.d.ts.map +1 -1
- package/@types/lib/metadataTypes/FileLocation.d.ts +10 -10
- package/@types/lib/metadataTypes/FileLocation.d.ts.map +1 -1
- package/@types/lib/metadataTypes/FileTransfer.d.ts +11 -18
- package/@types/lib/metadataTypes/FileTransfer.d.ts.map +1 -1
- package/@types/lib/metadataTypes/Filter.d.ts +10 -10
- package/@types/lib/metadataTypes/Filter.d.ts.map +1 -1
- package/@types/lib/metadataTypes/Folder.d.ts +10 -10
- package/@types/lib/metadataTypes/Folder.d.ts.map +1 -1
- package/@types/lib/metadataTypes/ImportFile.d.ts +11 -15
- package/@types/lib/metadataTypes/ImportFile.d.ts.map +1 -1
- package/@types/lib/metadataTypes/Journey.d.ts +13 -32
- package/@types/lib/metadataTypes/Journey.d.ts.map +1 -1
- package/@types/lib/metadataTypes/List.d.ts +12 -12
- package/@types/lib/metadataTypes/List.d.ts.map +1 -1
- package/@types/lib/metadataTypes/MetadataType.d.ts +23 -23
- package/@types/lib/metadataTypes/MetadataType.d.ts.map +1 -1
- package/@types/lib/metadataTypes/MobileCode.d.ts +11 -20
- package/@types/lib/metadataTypes/MobileCode.d.ts.map +1 -1
- package/@types/lib/metadataTypes/MobileKeyword.d.ts +14 -14
- package/@types/lib/metadataTypes/MobileKeyword.d.ts.map +1 -1
- package/@types/lib/metadataTypes/MobileMessage.d.ts +14 -42
- package/@types/lib/metadataTypes/MobileMessage.d.ts.map +1 -1
- package/@types/lib/metadataTypes/Query.d.ts +12 -12
- package/@types/lib/metadataTypes/Query.d.ts.map +1 -1
- package/@types/lib/metadataTypes/Role.d.ts +11 -11
- package/@types/lib/metadataTypes/Role.d.ts.map +1 -1
- package/@types/lib/metadataTypes/Script.d.ts +15 -24
- package/@types/lib/metadataTypes/Script.d.ts.map +1 -1
- package/@types/lib/metadataTypes/SendClassification.d.ts +10 -10
- package/@types/lib/metadataTypes/SendClassification.d.ts.map +1 -1
- package/@types/lib/metadataTypes/SenderProfile.d.ts +11 -19
- package/@types/lib/metadataTypes/SenderProfile.d.ts.map +1 -1
- package/@types/lib/metadataTypes/TransactionalEmail.d.ts +12 -12
- package/@types/lib/metadataTypes/TransactionalEmail.d.ts.map +1 -1
- package/@types/lib/metadataTypes/TransactionalMessage.d.ts +11 -32
- package/@types/lib/metadataTypes/TransactionalMessage.d.ts.map +1 -1
- package/@types/lib/metadataTypes/TransactionalPush.d.ts +12 -21
- package/@types/lib/metadataTypes/TransactionalPush.d.ts.map +1 -1
- package/@types/lib/metadataTypes/TransactionalSMS.d.ts +12 -18
- package/@types/lib/metadataTypes/TransactionalSMS.d.ts.map +1 -1
- package/@types/lib/metadataTypes/TriggeredSend.d.ts +13 -18
- package/@types/lib/metadataTypes/TriggeredSend.d.ts.map +1 -1
- package/@types/lib/metadataTypes/User.d.ts +22 -40
- package/@types/lib/metadataTypes/User.d.ts.map +1 -1
- package/@types/lib/metadataTypes/Verification.d.ts +13 -13
- package/@types/lib/metadataTypes/Verification.d.ts.map +1 -1
- package/@types/lib/metadataTypes/definitions/Event.definition.d.ts +7 -1
- package/@types/lib/util/auth.d.ts +19 -18
- package/@types/lib/util/auth.d.ts.map +1 -1
- package/@types/lib/util/businessUnit.d.ts +17 -17
- package/@types/lib/util/businessUnit.d.ts.map +1 -1
- package/@types/lib/util/cache.d.ts +24 -32
- package/@types/lib/util/cache.d.ts.map +1 -1
- package/@types/lib/util/cli.d.ts +27 -27
- package/@types/lib/util/cli.d.ts.map +1 -1
- package/@types/lib/util/config.d.ts +20 -20
- package/@types/lib/util/config.d.ts.map +1 -1
- package/@types/lib/util/devops.d.ts +21 -21
- package/@types/lib/util/devops.d.ts.map +1 -1
- package/@types/lib/util/file.d.ts +179 -18
- package/@types/lib/util/file.d.ts.map +1 -1
- package/@types/lib/util/init.config.d.ts +19 -19
- package/@types/lib/util/init.config.d.ts.map +1 -1
- package/@types/lib/util/init.d.ts +20 -20
- package/@types/lib/util/init.d.ts.map +1 -1
- package/@types/lib/util/init.git.d.ts +2 -2
- package/@types/lib/util/init.git.d.ts.map +1 -1
- package/@types/lib/util/init.npm.d.ts +2 -2
- package/@types/lib/util/init.npm.d.ts.map +1 -1
- package/@types/lib/util/replaceContentBlockReference.d.ts +28 -28
- package/@types/lib/util/replaceContentBlockReference.d.ts.map +1 -1
- package/@types/lib/util/util.d.ts +33 -37
- package/@types/lib/util/util.d.ts.map +1 -1
- package/@types/types/mcdev.d.d.ts +73 -52
- package/@types/types/mcdev.d.d.ts.map +1 -1
- package/eslint.config.js +0 -1
- package/lib/Deployer.js +1 -1
- package/lib/Retriever.js +4 -1
- package/lib/cli.js +209 -278
- package/lib/index.js +89 -43
- package/lib/metadataTypes/Asset.js +1 -0
- package/lib/metadataTypes/DataExtension.js +3 -3
- package/lib/metadataTypes/DataExtensionField.js +0 -1
- package/lib/metadataTypes/Event.js +199 -35
- package/lib/metadataTypes/Folder.js +1 -1
- package/lib/metadataTypes/Journey.js +10 -2
- package/lib/metadataTypes/MetadataType.js +3 -4
- package/lib/metadataTypes/Role.js +9 -7
- package/lib/metadataTypes/SenderProfile.js +1 -0
- package/lib/metadataTypes/TransactionalEmail.js +2 -2
- package/lib/metadataTypes/TriggeredSend.js +1 -0
- package/lib/metadataTypes/User.js +31 -27
- package/lib/metadataTypes/definitions/Event.definition.js +8 -8
- package/lib/util/auth.js +0 -1
- package/lib/util/cli.js +0 -1
- package/lib/util/devops.js +2 -3
- package/lib/util/file.js +7 -10
- package/lib/util/replaceContentBlockReference.js +3 -1
- package/package.json +11 -9
- package/test/general.test.js +20 -2
- package/test/mockRoot/.mcdevrc.json +1 -1
- package/test/mockRoot/deploy/testInstance/testBU/event/testExisting_event.event-meta.json +201 -0
- package/test/mockRoot/deploy/testInstance/testBU/event/testNew_event_withExistingDE.event-meta.json +232 -0
- package/test/mockRoot/deploy/testInstance/testBU/event/testNew_event_withSchema.event-meta.json +193 -0
- package/test/resources/9999999/dataExtension/retrieve-CustomerKey=testNew_event_withSchema-response.xml +50 -0
- package/test/resources/9999999/dataExtension/retrieve-createdViaEvent-response.xml +50 -0
- package/test/resources/9999999/dataExtension/retrieve-response.xml +48 -0
- package/test/resources/9999999/dataExtension/retrieve_event_withSchema-expected.json +219 -0
- package/test/resources/9999999/dataExtension/update-afterCreatedViaEvent-response.xml +55 -0
- package/test/resources/9999999/dataExtension/update-callout-afterCreatedViaEvent-expected.xml +1 -0
- package/test/resources/9999999/dataExtensionField/retrieve-DataExtension.CustomerKey=testNew_event_withSchema-response.xml +461 -0
- package/test/resources/9999999/dataExtensionField/retrieve-DataExtension.CustomerKeyINtestExisting_dataExtension,testNew_dataExtension-response.xml +133 -0
- package/test/resources/9999999/dataExtensionField/retrieve-response.xml +870 -0
- package/test/resources/9999999/event/build-expected.json +228 -0
- package/test/resources/9999999/event/get-expected.json +235 -0
- package/test/resources/9999999/event/post_withExistingDE-callout-expected.json +17 -0
- package/test/resources/9999999/event/post_withExistingDE-expected.json +21 -0
- package/test/resources/9999999/event/post_withSchema-callout-expected.json +196 -0
- package/test/resources/9999999/event/post_withSchema-expected.json +232 -0
- package/test/resources/9999999/event/put-callout-expected.json +202 -0
- package/test/resources/9999999/event/put-expected.json +233 -0
- package/test/resources/9999999/event/template-expected.json +228 -0
- package/test/resources/9999999/interaction/v1/eventDefinitions/get-response.json +252 -2
- package/test/resources/9999999/interaction/v1/eventDefinitions/key_testExisting_event/delete-response.txt +0 -0
- package/test/resources/9999999/interaction/v1/eventDefinitions/key_testExisting_event/put-response.json +241 -0
- package/test/resources/9999999/interaction/v1/eventDefinitions/post_withExistingDE-response.json +26 -0
- package/test/resources/9999999/interaction/v1/eventDefinitions/post_withSchema-response.json +241 -0
- package/test/resources/9999999/interaction/v1/interactions/0175b971-71a3-4d8e-98ac-48121f3fbf4f/delete-response.txt +1 -0
- package/test/type.asset.test.js +0 -3
- package/test/type.automation.test.js +1 -1
- package/test/type.dataExtension.test.js +4 -4
- package/test/type.event.test.js +287 -6
- package/test/type.journey.test.js +13 -0
- package/test/type.user.test.js +1 -1
- package/test/utils.js +18 -6
- package/tsconfig.json +6 -1
- package/{jsconfig.json → tsconfig.npmScripts.json} +1 -1
- package/tsconfig.precommit.json +26 -0
- package/types/mcdev.d.js +12 -13
package/lib/cli.js
CHANGED
|
@@ -10,18 +10,18 @@ import yargs from 'yargs';
|
|
|
10
10
|
import { hideBin } from 'yargs/helpers';
|
|
11
11
|
import Mcdev from './index.js';
|
|
12
12
|
|
|
13
|
+
// use this instead of setting "true" directly to more easily find deprecated commands in this file
|
|
14
|
+
const isDeprecated = true;
|
|
13
15
|
/**
|
|
14
16
|
* @typedef {import('../types/mcdev.d.js').TypeKeyCombo} TypeKeyCombo
|
|
15
17
|
*/
|
|
16
18
|
yargs(hideBin(process.argv))
|
|
17
19
|
.scriptName('mcdev')
|
|
18
20
|
.usage('$0 <command> [options]')
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
desc: 'retrieves metadata of a business unit',
|
|
24
|
-
builder: (yargs) => {
|
|
21
|
+
.command(
|
|
22
|
+
['retrieve [BU] [TYPE] [KEY]', 'r'],
|
|
23
|
+
'retrieves metadata of a business unit',
|
|
24
|
+
(yargs) =>
|
|
25
25
|
yargs
|
|
26
26
|
.positional('BU', {
|
|
27
27
|
type: 'string',
|
|
@@ -48,9 +48,8 @@ yargs(hideBin(process.argv))
|
|
|
48
48
|
group: 'Options for retrieve:',
|
|
49
49
|
describe:
|
|
50
50
|
'filter metadata components (can include % as wildcard or _ for a single character)',
|
|
51
|
-
})
|
|
52
|
-
|
|
53
|
-
handler: (argv) => {
|
|
51
|
+
}),
|
|
52
|
+
(argv) => {
|
|
54
53
|
Mcdev.setOptions(argv);
|
|
55
54
|
const typeKeyCombo = Mcdev.metadataToTypeKey(argv.metadata);
|
|
56
55
|
if ('undefined' === typeof typeKeyCombo) {
|
|
@@ -58,14 +57,12 @@ yargs(hideBin(process.argv))
|
|
|
58
57
|
} else {
|
|
59
58
|
Mcdev.retrieve(argv.BU, typeKeyCombo);
|
|
60
59
|
}
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
desc: 'deploys local metadata to a business unit',
|
|
68
|
-
builder: (yargs) => {
|
|
60
|
+
}
|
|
61
|
+
)
|
|
62
|
+
.command(
|
|
63
|
+
['deploy [BU] [TYPE] [KEY]', 'd'],
|
|
64
|
+
'deploys local metadata to a business unit',
|
|
65
|
+
(yargs) =>
|
|
69
66
|
yargs
|
|
70
67
|
.positional('BU', {
|
|
71
68
|
type: 'string',
|
|
@@ -144,9 +141,8 @@ yargs(hideBin(process.argv))
|
|
|
144
141
|
group: 'Options for deploy:',
|
|
145
142
|
describe:
|
|
146
143
|
"ensure that updates to shared DataExtensions become visible in child BU's data designer (SF Known issue W-11031095)",
|
|
147
|
-
})
|
|
148
|
-
|
|
149
|
-
handler: (argv) => {
|
|
144
|
+
}),
|
|
145
|
+
(argv) => {
|
|
150
146
|
Mcdev.setOptions(argv);
|
|
151
147
|
|
|
152
148
|
const typeKeyCombo = Mcdev.metadataToTypeKey(argv.metadata);
|
|
@@ -155,69 +151,55 @@ yargs(hideBin(process.argv))
|
|
|
155
151
|
} else {
|
|
156
152
|
Mcdev.deploy(argv.BU, typeKeyCombo);
|
|
157
153
|
}
|
|
158
|
-
}
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
builder: (yargs) => {
|
|
154
|
+
}
|
|
155
|
+
)
|
|
156
|
+
.command(
|
|
157
|
+
['init [credentialsName]'],
|
|
158
|
+
`creates '${Util.configFileName}' in your root or adds additional credentials to the existing one`,
|
|
159
|
+
(yargs) =>
|
|
165
160
|
yargs.positional('credentialsName', {
|
|
166
161
|
type: 'string',
|
|
167
162
|
describe: 'name of your installed package',
|
|
168
|
-
})
|
|
169
|
-
|
|
170
|
-
handler: (argv) => {
|
|
163
|
+
}),
|
|
164
|
+
(argv) => {
|
|
171
165
|
Mcdev.setOptions(argv);
|
|
172
166
|
Mcdev.initProject(argv.credentialsName);
|
|
173
|
-
}
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
})
|
|
184
|
-
// @ts-expect-error
|
|
185
|
-
.command({
|
|
186
|
-
command: 'reloadBUs [credentialsName]',
|
|
187
|
-
aliases: ['rb', 'refreshBUs'],
|
|
188
|
-
desc: 'loads the list of available BUs from the server and saves it to your config',
|
|
189
|
-
builder: (yargs) => {
|
|
167
|
+
}
|
|
168
|
+
)
|
|
169
|
+
.command(['join'], `clones an existing project from git`, {}, (argv) => {
|
|
170
|
+
Mcdev.setOptions(argv);
|
|
171
|
+
Mcdev.joinProject();
|
|
172
|
+
})
|
|
173
|
+
.command(
|
|
174
|
+
['reloadBUs [credentialsName]', 'rb', 'refreshBUs'],
|
|
175
|
+
'loads the list of available BUs from the server and saves it to your config',
|
|
176
|
+
(yargs) =>
|
|
190
177
|
yargs.positional('credentialsName', {
|
|
191
178
|
type: 'string',
|
|
192
179
|
describe: 'name of your installed package',
|
|
193
|
-
})
|
|
194
|
-
|
|
195
|
-
handler: (argv) => {
|
|
180
|
+
}),
|
|
181
|
+
(argv) => {
|
|
196
182
|
Mcdev.setOptions(argv);
|
|
197
183
|
Mcdev.findBUs(argv.credentialsName);
|
|
198
|
-
}
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
builder: (yargs) => {
|
|
184
|
+
}
|
|
185
|
+
)
|
|
186
|
+
.command(
|
|
187
|
+
['badKeys [BU]'],
|
|
188
|
+
'lists metadata with random API names in specified Business Unit directory',
|
|
189
|
+
(yargs) =>
|
|
205
190
|
yargs.positional('BU', {
|
|
206
191
|
type: 'string',
|
|
207
192
|
describe: 'the business unit to deploy to',
|
|
208
|
-
})
|
|
209
|
-
|
|
210
|
-
handler: (argv) => {
|
|
193
|
+
}),
|
|
194
|
+
(argv) => {
|
|
211
195
|
Mcdev.setOptions(argv);
|
|
212
196
|
Mcdev.badKeys(argv.BU);
|
|
213
|
-
}
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
desc: 'Creates Markdown or HTML documentation for the selected type',
|
|
220
|
-
builder: (yargs) => {
|
|
197
|
+
}
|
|
198
|
+
)
|
|
199
|
+
.command(
|
|
200
|
+
['document <BU> <TYPE>', 'doc'],
|
|
201
|
+
'Creates Markdown or HTML documentation for the selected type',
|
|
202
|
+
(yargs) =>
|
|
221
203
|
yargs
|
|
222
204
|
.positional('BU', {
|
|
223
205
|
type: 'string',
|
|
@@ -228,19 +210,16 @@ yargs(hideBin(process.argv))
|
|
|
228
210
|
type: 'string',
|
|
229
211
|
describe:
|
|
230
212
|
'metadata type to generate docs for; currently supported: dataExtension, role',
|
|
231
|
-
})
|
|
232
|
-
|
|
233
|
-
handler: (argv) => {
|
|
213
|
+
}),
|
|
214
|
+
(argv) => {
|
|
234
215
|
Mcdev.setOptions(argv);
|
|
235
216
|
Mcdev.document(argv.BU, argv.TYPE);
|
|
236
|
-
}
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
desc: 'deletes metadata of selected type and external key',
|
|
243
|
-
builder: (yargs) => {
|
|
217
|
+
}
|
|
218
|
+
)
|
|
219
|
+
.command(
|
|
220
|
+
['delete <BU> [TYPE] [KEY]', 'del'],
|
|
221
|
+
'deletes metadata of selected type and external key',
|
|
222
|
+
(yargs) =>
|
|
244
223
|
yargs
|
|
245
224
|
.positional('BU', {
|
|
246
225
|
type: 'string',
|
|
@@ -258,30 +237,25 @@ yargs(hideBin(process.argv))
|
|
|
258
237
|
.option('metadata', {
|
|
259
238
|
type: 'string',
|
|
260
239
|
alias: 'm',
|
|
261
|
-
group: 'Options for
|
|
262
|
-
describe:
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
},
|
|
266
|
-
handler: (argv) => {
|
|
240
|
+
group: 'Options for delete:',
|
|
241
|
+
describe: 'type or type:key or type:i:id or type:n:name to delete',
|
|
242
|
+
}),
|
|
243
|
+
(argv) => {
|
|
267
244
|
Mcdev.setOptions(argv);
|
|
268
|
-
const typeKeyCombo = Mcdev.metadataToTypeKey(argv.metadata, ['key', 'id']
|
|
245
|
+
const typeKeyCombo = Mcdev.metadataToTypeKey(argv.metadata, ['key', 'id']);
|
|
269
246
|
if ('undefined' === typeof typeKeyCombo) {
|
|
270
247
|
if (argv.TYPE && argv.KEY) {
|
|
271
|
-
Mcdev.deleteByKey(argv.BU, argv.TYPE, argv.KEY);
|
|
248
|
+
Mcdev.deleteByKey(argv.BU, argv.TYPE, csvToArray(argv.KEY));
|
|
272
249
|
}
|
|
273
250
|
} else {
|
|
274
|
-
|
|
275
|
-
Mcdev.deleteByKey(argv.BU, type, typeKeyCombo[type][0]);
|
|
251
|
+
Mcdev.deleteByKey(argv.BU, typeKeyCombo, null);
|
|
276
252
|
}
|
|
277
|
-
}
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
desc: 'resolves metadata key by ID',
|
|
284
|
-
builder: (yargs) => {
|
|
253
|
+
}
|
|
254
|
+
)
|
|
255
|
+
.command(
|
|
256
|
+
['resolveId <BU> <TYPE> <ID>', 'rid'],
|
|
257
|
+
'resolves metadata key by ID',
|
|
258
|
+
(yargs) =>
|
|
285
259
|
yargs
|
|
286
260
|
.positional('BU', {
|
|
287
261
|
type: 'string',
|
|
@@ -300,20 +274,17 @@ yargs(hideBin(process.argv))
|
|
|
300
274
|
type: 'boolean',
|
|
301
275
|
group: 'Options for resolveId:',
|
|
302
276
|
describe: 'optionaly return info in json format',
|
|
303
|
-
})
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
handler: (argv) => {
|
|
277
|
+
}),
|
|
278
|
+
// TODO: add option --metadata
|
|
279
|
+
(argv) => {
|
|
307
280
|
Mcdev.setOptions(argv);
|
|
308
281
|
Mcdev.resolveId(argv.BU, argv.TYPE, argv.ID);
|
|
309
|
-
}
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
desc: '[DEPRECATED] Retrieves a specific metadata file by name from the server for templating',
|
|
316
|
-
builder: (yargs) => {
|
|
282
|
+
}
|
|
283
|
+
)
|
|
284
|
+
.command(
|
|
285
|
+
['retrieveAsTemplate <BU> <TYPE> <NAME> <MARKET>', 'rt'],
|
|
286
|
+
'[DEPRECATED] Retrieves a specific metadata file by name from the server for templating',
|
|
287
|
+
(yargs) =>
|
|
317
288
|
yargs
|
|
318
289
|
.positional('BU', {
|
|
319
290
|
type: 'string',
|
|
@@ -331,19 +302,19 @@ yargs(hideBin(process.argv))
|
|
|
331
302
|
.positional('MARKET', {
|
|
332
303
|
type: 'string',
|
|
333
304
|
describe: 'market used for reverse building template',
|
|
334
|
-
})
|
|
335
|
-
|
|
336
|
-
|
|
305
|
+
}),
|
|
306
|
+
|
|
307
|
+
(argv) => {
|
|
337
308
|
Mcdev.setOptions(argv);
|
|
338
309
|
Mcdev.retrieveAsTemplate(argv.BU, argv.TYPE, csvToArray(argv.NAME), argv.MARKET);
|
|
339
310
|
},
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
.command(
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
311
|
+
[],
|
|
312
|
+
isDeprecated
|
|
313
|
+
)
|
|
314
|
+
.command(
|
|
315
|
+
['build'],
|
|
316
|
+
'runs buildTemplate followed by buildDefinition',
|
|
317
|
+
(yargs) =>
|
|
347
318
|
yargs
|
|
348
319
|
.option('metadata', {
|
|
349
320
|
type: 'string',
|
|
@@ -386,9 +357,8 @@ yargs(hideBin(process.argv))
|
|
|
386
357
|
describe:
|
|
387
358
|
'if defined, the marketTo parameter has to be a marketList and buildDefinitionBulk is executed',
|
|
388
359
|
demandOption: true,
|
|
389
|
-
})
|
|
390
|
-
|
|
391
|
-
handler: (argv) => {
|
|
360
|
+
}),
|
|
361
|
+
(argv) => {
|
|
392
362
|
Mcdev.setOptions(argv);
|
|
393
363
|
const typeKeyCombo = Mcdev.metadataToTypeKey(argv.metadata);
|
|
394
364
|
if ('undefined' !== typeof typeKeyCombo) {
|
|
@@ -401,14 +371,12 @@ yargs(hideBin(process.argv))
|
|
|
401
371
|
argv.bulk
|
|
402
372
|
);
|
|
403
373
|
}
|
|
404
|
-
}
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
desc: 'builds a template out of a specific metadata file already in your retrieve folder',
|
|
411
|
-
builder: (yargs) => {
|
|
374
|
+
}
|
|
375
|
+
)
|
|
376
|
+
.command(
|
|
377
|
+
['buildTemplate <BU> [TYPE] [KEY] [MARKET]', 'bt'],
|
|
378
|
+
'builds a template out of a specific metadata file already in your retrieve folder',
|
|
379
|
+
(yargs) =>
|
|
412
380
|
yargs
|
|
413
381
|
.positional('BU', {
|
|
414
382
|
type: 'string',
|
|
@@ -437,9 +405,8 @@ yargs(hideBin(process.argv))
|
|
|
437
405
|
type: 'string',
|
|
438
406
|
group: 'Options for buildTemplate:',
|
|
439
407
|
describe: 'market used for reverse building template',
|
|
440
|
-
})
|
|
441
|
-
|
|
442
|
-
handler: (argv) => {
|
|
408
|
+
}),
|
|
409
|
+
(argv) => {
|
|
443
410
|
Mcdev.setOptions(argv);
|
|
444
411
|
const typeKeyCombo = Mcdev.metadataToTypeKey(argv.metadata);
|
|
445
412
|
if ('undefined' === typeof typeKeyCombo) {
|
|
@@ -452,14 +419,12 @@ yargs(hideBin(process.argv))
|
|
|
452
419
|
} else {
|
|
453
420
|
Mcdev.buildTemplate(argv.BU, typeKeyCombo, null, argv.MARKET || argv.market);
|
|
454
421
|
}
|
|
455
|
-
}
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
desc: 'builds metadata definition based on template',
|
|
462
|
-
builder: (yargs) => {
|
|
422
|
+
}
|
|
423
|
+
)
|
|
424
|
+
.command(
|
|
425
|
+
['buildDefinition <BU> [TYPE] [FILENAME] [MARKET]', 'bd'],
|
|
426
|
+
'builds metadata definition based on template',
|
|
427
|
+
(yargs) =>
|
|
463
428
|
yargs
|
|
464
429
|
.positional('BU', {
|
|
465
430
|
type: 'string',
|
|
@@ -487,9 +452,8 @@ yargs(hideBin(process.argv))
|
|
|
487
452
|
type: 'string',
|
|
488
453
|
group: 'Options for buildDefinition:',
|
|
489
454
|
describe: 'market used for building deployable definition',
|
|
490
|
-
})
|
|
491
|
-
|
|
492
|
-
handler: (argv) => {
|
|
455
|
+
}),
|
|
456
|
+
(argv) => {
|
|
493
457
|
Mcdev.setOptions(argv);
|
|
494
458
|
const typeKeyCombo = Mcdev.metadataToTypeKey(argv.metadata);
|
|
495
459
|
if ('undefined' === typeof typeKeyCombo) {
|
|
@@ -502,14 +466,12 @@ yargs(hideBin(process.argv))
|
|
|
502
466
|
} else {
|
|
503
467
|
Mcdev.buildDefinition(argv.BU, typeKeyCombo, null, argv.MARKET || argv.market);
|
|
504
468
|
}
|
|
505
|
-
}
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
desc: 'builds metadata definition based on template en bulk',
|
|
512
|
-
builder: (yargs) => {
|
|
469
|
+
}
|
|
470
|
+
)
|
|
471
|
+
.command(
|
|
472
|
+
['buildDefinitionBulk <LISTNAME> [TYPE] [FILENAME]', 'bdb'],
|
|
473
|
+
'builds metadata definition based on template en bulk',
|
|
474
|
+
(yargs) =>
|
|
513
475
|
yargs
|
|
514
476
|
.positional('LISTNAME', {
|
|
515
477
|
type: 'string',
|
|
@@ -528,9 +490,8 @@ yargs(hideBin(process.argv))
|
|
|
528
490
|
alias: 'm',
|
|
529
491
|
group: 'Options for buildDefinitionBulk:',
|
|
530
492
|
describe: 'type:templateName combos to build template for',
|
|
531
|
-
})
|
|
532
|
-
|
|
533
|
-
handler: (argv) => {
|
|
493
|
+
}),
|
|
494
|
+
(argv) => {
|
|
534
495
|
Mcdev.setOptions(argv);
|
|
535
496
|
const typeKeyCombo = Mcdev.metadataToTypeKey(argv.metadata);
|
|
536
497
|
if ('undefined' === typeof typeKeyCombo) {
|
|
@@ -538,41 +499,35 @@ yargs(hideBin(process.argv))
|
|
|
538
499
|
} else {
|
|
539
500
|
Mcdev.buildDefinitionBulk(argv.LISTNAME, typeKeyCombo);
|
|
540
501
|
}
|
|
541
|
-
}
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
handler: (argv) => {
|
|
502
|
+
}
|
|
503
|
+
)
|
|
504
|
+
.command(
|
|
505
|
+
['selectTypes', 'st'],
|
|
506
|
+
'lets you choose what metadata types to retrieve',
|
|
507
|
+
{},
|
|
508
|
+
(argv) => {
|
|
549
509
|
Mcdev.setOptions(argv);
|
|
550
510
|
Mcdev.selectTypes();
|
|
551
|
-
}
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
desc: 'explains metadata types that can be retrieved',
|
|
558
|
-
builder: (yargs) => {
|
|
511
|
+
}
|
|
512
|
+
)
|
|
513
|
+
.command(
|
|
514
|
+
['explainTypes', 'et'],
|
|
515
|
+
'explains metadata types that can be retrieved',
|
|
516
|
+
(yargs) =>
|
|
559
517
|
yargs.option('json', {
|
|
560
518
|
type: 'boolean',
|
|
561
519
|
group: 'Options for explainTypes:',
|
|
562
520
|
describe: 'optionaly return info in json format',
|
|
563
|
-
})
|
|
564
|
-
|
|
565
|
-
handler: (argv) => {
|
|
521
|
+
}),
|
|
522
|
+
(argv) => {
|
|
566
523
|
Mcdev.setOptions(argv);
|
|
567
524
|
Mcdev.explainTypes();
|
|
568
|
-
}
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
desc: 'Copies commit-based file delta into deploy folder',
|
|
575
|
-
builder: (yargs) => {
|
|
525
|
+
}
|
|
526
|
+
)
|
|
527
|
+
.command(
|
|
528
|
+
['createDeltaPkg [range]', 'cdp'],
|
|
529
|
+
'Copies commit-based file delta into deploy folder',
|
|
530
|
+
(yargs) =>
|
|
576
531
|
yargs
|
|
577
532
|
.positional('range', {
|
|
578
533
|
type: 'string',
|
|
@@ -588,20 +543,16 @@ yargs(hideBin(process.argv))
|
|
|
588
543
|
type: 'number',
|
|
589
544
|
group: 'Options for createDeltaPkg:',
|
|
590
545
|
describe: 'Number of commits to look back for changes (supersedes config)',
|
|
591
|
-
})
|
|
592
|
-
|
|
593
|
-
handler: (argv) => {
|
|
546
|
+
}),
|
|
547
|
+
(argv) => {
|
|
594
548
|
Mcdev.setOptions(argv);
|
|
595
|
-
// @ts-expect-error - us passing in argv directly here is a bit lazy and ts warns us about it...
|
|
596
549
|
Mcdev.createDeltaPkg(argv);
|
|
597
|
-
}
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
desc: 'returns a list of relative paths to files one needs to include in a commit',
|
|
604
|
-
builder: (yargs) => {
|
|
550
|
+
}
|
|
551
|
+
)
|
|
552
|
+
.command(
|
|
553
|
+
['getFilesToCommit <BU> <TYPE> <KEY>', 'fc'],
|
|
554
|
+
'returns a list of relative paths to files one needs to include in a commit',
|
|
555
|
+
(yargs) =>
|
|
605
556
|
yargs
|
|
606
557
|
.positional('BU', {
|
|
607
558
|
type: 'string',
|
|
@@ -615,20 +566,17 @@ yargs(hideBin(process.argv))
|
|
|
615
566
|
.positional('KEY', {
|
|
616
567
|
type: 'string',
|
|
617
568
|
describe: 'key(s) of the metadata component(s)',
|
|
618
|
-
})
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
handler: (argv) => {
|
|
569
|
+
}),
|
|
570
|
+
// TODO: add option --metadata
|
|
571
|
+
(argv) => {
|
|
622
572
|
Mcdev.setOptions(argv);
|
|
623
573
|
Mcdev.getFilesToCommit(argv.BU, argv.TYPE, csvToArray(argv.KEY));
|
|
624
|
-
}
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
desc: 'ensures that updates are properly published',
|
|
631
|
-
builder: (yargs) => {
|
|
574
|
+
}
|
|
575
|
+
)
|
|
576
|
+
.command(
|
|
577
|
+
['refresh <BU> [TYPE] [KEY]', 're'],
|
|
578
|
+
'ensures that updates are properly published',
|
|
579
|
+
(yargs) =>
|
|
632
580
|
yargs
|
|
633
581
|
.positional('BU', {
|
|
634
582
|
type: 'string',
|
|
@@ -641,20 +589,17 @@ yargs(hideBin(process.argv))
|
|
|
641
589
|
.positional('KEY', {
|
|
642
590
|
type: 'string',
|
|
643
591
|
describe: 'key(s) of the metadata component(s)',
|
|
644
|
-
})
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
handler: (argv) => {
|
|
592
|
+
}),
|
|
593
|
+
// TODO: add option --metadata
|
|
594
|
+
(argv) => {
|
|
648
595
|
Mcdev.setOptions(argv);
|
|
649
596
|
Mcdev.refresh(argv.BU, argv.TYPE, csvToArray(argv.KEY));
|
|
650
|
-
}
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
desc: 'executes the entity (query/journey/automation etc.)',
|
|
657
|
-
builder: (yargs) => {
|
|
597
|
+
}
|
|
598
|
+
)
|
|
599
|
+
.command(
|
|
600
|
+
['execute <BU> <TYPE> [KEY]', 'exec', 'start'],
|
|
601
|
+
'executes the entity (query/journey/automation etc.)',
|
|
602
|
+
(yargs) =>
|
|
658
603
|
yargs
|
|
659
604
|
.positional('BU', {
|
|
660
605
|
type: 'string',
|
|
@@ -679,21 +624,18 @@ yargs(hideBin(process.argv))
|
|
|
679
624
|
group: 'Options for execute:',
|
|
680
625
|
describe:
|
|
681
626
|
'optionally start existing schedule instead of running item once immediately (only works for automations)',
|
|
682
|
-
})
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
handler: (argv) => {
|
|
627
|
+
}),
|
|
628
|
+
// TODO: add option --metadata
|
|
629
|
+
(argv) => {
|
|
686
630
|
Mcdev.setOptions(argv);
|
|
687
631
|
// ! do not allow multiple types to be passed in here via csvToArray
|
|
688
632
|
Mcdev.execute(argv.BU, argv.TYPE, csvToArray(argv.KEY));
|
|
689
|
-
}
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
desc: 'starts the predefined schedule of the item (shortcut for running execute --schedule)',
|
|
696
|
-
builder: (yargs) => {
|
|
633
|
+
}
|
|
634
|
+
)
|
|
635
|
+
.command(
|
|
636
|
+
['schedule <BU> <TYPE> [KEY]', 'sched'],
|
|
637
|
+
'starts the predefined schedule of the item (shortcut for running execute --schedule)',
|
|
638
|
+
(yargs) =>
|
|
697
639
|
yargs
|
|
698
640
|
.positional('BU', {
|
|
699
641
|
type: 'string',
|
|
@@ -712,21 +654,18 @@ yargs(hideBin(process.argv))
|
|
|
712
654
|
group: 'Options for execute:',
|
|
713
655
|
describe:
|
|
714
656
|
'filter metadata components (can include % as wildcard or _ for a single character)',
|
|
715
|
-
})
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
handler: (argv) => {
|
|
657
|
+
}),
|
|
658
|
+
// TODO: add option --metadata
|
|
659
|
+
(argv) => {
|
|
719
660
|
Mcdev.setOptions(argv);
|
|
720
661
|
// ! do not allow multiple types to be passed in here via csvToArray
|
|
721
662
|
Mcdev.schedule(argv.BU, argv.TYPE, csvToArray(argv.KEY));
|
|
722
|
-
}
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
desc: 'pauses the entity (automation etc.)',
|
|
729
|
-
builder: (yargs) => {
|
|
663
|
+
}
|
|
664
|
+
)
|
|
665
|
+
.command(
|
|
666
|
+
['pause <BU> <TYPE> [KEY]', 'p', 'stop'],
|
|
667
|
+
'pauses the entity (automation etc.)',
|
|
668
|
+
(yargs) =>
|
|
730
669
|
yargs
|
|
731
670
|
.positional('BU', {
|
|
732
671
|
type: 'string',
|
|
@@ -745,21 +684,18 @@ yargs(hideBin(process.argv))
|
|
|
745
684
|
group: 'Options for pause:',
|
|
746
685
|
describe:
|
|
747
686
|
'filter metadata components (can include % as wildcard or _ for a single character)',
|
|
748
|
-
})
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
handler: (argv) => {
|
|
687
|
+
}),
|
|
688
|
+
// TODO: add option --metadata
|
|
689
|
+
(argv) => {
|
|
752
690
|
Mcdev.setOptions(argv);
|
|
753
691
|
// ! do not allow multiple types to be passed in here via csvToArray
|
|
754
692
|
Mcdev.pause(argv.BU, argv.TYPE, csvToArray(argv.KEY));
|
|
755
|
-
}
|
|
756
|
-
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
|
|
761
|
-
desc: 'changes the key of the items to match the name',
|
|
762
|
-
builder: (yargs) => {
|
|
693
|
+
}
|
|
694
|
+
)
|
|
695
|
+
.command(
|
|
696
|
+
['fixKeys <BU> [TYPE] [KEY]', 'fx'],
|
|
697
|
+
'changes the key of the items to match the name',
|
|
698
|
+
(yargs) =>
|
|
763
699
|
yargs
|
|
764
700
|
.positional('BU', {
|
|
765
701
|
type: 'string',
|
|
@@ -805,9 +741,8 @@ yargs(hideBin(process.argv))
|
|
|
805
741
|
group: 'Options for fixKeys:',
|
|
806
742
|
describe:
|
|
807
743
|
'optionally start existing schedule instead of running item once immediately (only works for automations)',
|
|
808
|
-
})
|
|
809
|
-
|
|
810
|
-
handler: (argv) => {
|
|
744
|
+
}),
|
|
745
|
+
(argv) => {
|
|
811
746
|
Mcdev.setOptions(argv);
|
|
812
747
|
const typeKeyCombo = Mcdev.metadataToTypeKey(argv.metadata);
|
|
813
748
|
if ('undefined' === typeof typeKeyCombo) {
|
|
@@ -815,14 +750,12 @@ yargs(hideBin(process.argv))
|
|
|
815
750
|
} else {
|
|
816
751
|
Mcdev.fixKeys(argv.BU, typeKeyCombo);
|
|
817
752
|
}
|
|
818
|
-
}
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
desc: 'Replaces ContentBlockById, ContentBlockByKey or ContentBlockByName functions with each other in AMPscript',
|
|
825
|
-
builder: (yargs) => {
|
|
753
|
+
}
|
|
754
|
+
)
|
|
755
|
+
.command(
|
|
756
|
+
['replaceContentBlock', 'rcb'],
|
|
757
|
+
'Replaces ContentBlockById, ContentBlockByKey or ContentBlockByName functions with each other in AMPscript',
|
|
758
|
+
(yargs) =>
|
|
826
759
|
yargs
|
|
827
760
|
.option('bu', {
|
|
828
761
|
type: 'string',
|
|
@@ -882,24 +815,22 @@ yargs(hideBin(process.argv))
|
|
|
882
815
|
}
|
|
883
816
|
}
|
|
884
817
|
return true;
|
|
885
|
-
})
|
|
886
|
-
|
|
887
|
-
handler: (argv) => {
|
|
818
|
+
}),
|
|
819
|
+
(argv) => {
|
|
888
820
|
Mcdev.setOptions(argv);
|
|
889
821
|
const typeKeyCombo = Mcdev.metadataToTypeKey(argv.metadata);
|
|
890
822
|
Mcdev.replaceCbReference(argv.bu, typeKeyCombo, argv.to, argv.from);
|
|
891
|
-
}
|
|
892
|
-
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
|
|
896
|
-
|
|
897
|
-
|
|
898
|
-
handler: (argv) => {
|
|
823
|
+
}
|
|
824
|
+
)
|
|
825
|
+
.command(
|
|
826
|
+
['upgrade', 'up'],
|
|
827
|
+
'Add NPM dependencies and IDE configuration files to your project',
|
|
828
|
+
{},
|
|
829
|
+
(argv) => {
|
|
899
830
|
Mcdev.setOptions(argv);
|
|
900
831
|
Mcdev.upgrade();
|
|
901
|
-
}
|
|
902
|
-
|
|
832
|
+
}
|
|
833
|
+
)
|
|
903
834
|
.option('verbose', {
|
|
904
835
|
type: 'boolean',
|
|
905
836
|
description: 'Run with verbose CLI output',
|