@contentstack/cli-cm-bulk-publish 1.3.8 → 1.3.10

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,5 +1,5 @@
1
1
  {
2
- "version": "1.3.8",
2
+ "version": "1.3.10",
3
3
  "commands": {
4
4
  "cm:assets:publish": {
5
5
  "id": "cm:assets:publish",
@@ -28,7 +28,10 @@
28
28
  "csdx cm:assets:publish --environments [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE] --alias [MANAGEMENT TOKEN ALIAS] --branch [BRANCH NAME]",
29
29
  "",
30
30
  "Using --source-env",
31
- "csdx cm:assets:publish --environments [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE] --alias [MANAGEMENT TOKEN ALIAS] --source-env [SOURCE ENVIRONMENT] --delivery-token [DELIVERY TOKEN]"
31
+ "csdx cm:assets:publish --environments [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE] --alias [MANAGEMENT TOKEN ALIAS] --source-env [SOURCE ENVIRONMENT] --delivery-token [DELIVERY TOKEN]",
32
+ "",
33
+ "Using --stack-api-key flag",
34
+ "csdx cm:assets:publish --environments [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE] --stack-api-key [STACK API KEY]"
32
35
  ],
33
36
  "flags": {
34
37
  "alias": {
@@ -38,6 +41,14 @@
38
41
  "description": "Alias(name) for the management token",
39
42
  "multiple": false
40
43
  },
44
+ "stack-api-key": {
45
+ "name": "stack-api-key",
46
+ "type": "option",
47
+ "char": "k",
48
+ "description": "Stack api key to be used",
49
+ "required": false,
50
+ "multiple": false
51
+ },
41
52
  "retry-failed": {
42
53
  "name": "retry-failed",
43
54
  "type": "option",
@@ -173,7 +184,10 @@
173
184
  "csdx cm:assets:unpublish --retry-failed [LOG FILE NAME]",
174
185
  "",
175
186
  "Using --branch flag",
176
- "csdx cm:assets:unpublish --bulk-unpublish --environment [SOURCE ENV] --locale [LOCALE] --alias [MANAGEMENT TOKEN ALIAS] --delivery-token [DELIVERY TOKEN] --branch [BRANCH NAME]"
187
+ "csdx cm:assets:unpublish --bulk-unpublish --environment [SOURCE ENV] --locale [LOCALE] --alias [MANAGEMENT TOKEN ALIAS] --delivery-token [DELIVERY TOKEN] --branch [BRANCH NAME]",
188
+ "",
189
+ "Using --stack-api-key flag",
190
+ "csdx cm:assets:unpublish --bulk-unpublish --environment [SOURCE ENV] --locale [LOCALE] --stack-api-key [STACK API KEY] --delivery-token [DELIVERY TOKEN]"
177
191
  ],
178
192
  "flags": {
179
193
  "alias": {
@@ -183,6 +197,14 @@
183
197
  "description": "Alias(name) for the management token",
184
198
  "multiple": false
185
199
  },
200
+ "stack-api-key": {
201
+ "name": "stack-api-key",
202
+ "type": "option",
203
+ "char": "k",
204
+ "description": "Stack api key to be used",
205
+ "required": false,
206
+ "multiple": false
207
+ },
186
208
  "environment": {
187
209
  "name": "environment",
188
210
  "type": "option",
@@ -268,7 +290,11 @@
268
290
  "csdx cm:bulk-publish:cross-publish -r [LOG FILE NAME]",
269
291
  "",
270
292
  "Using --branch flag",
271
- "csdx cm:bulk-publish:cross-publish --content-type [CONTENT TYPE] --source-env [SOURCE ENV] --environments [DESTINATION ENVIRONMENT] --locales [LOCALE] -a [MANAGEMENT TOKEN ALIAS] --delivery-token [DELIVERY TOKEN] --branch [BRANCH NAME]"
293
+ "csdx cm:bulk-publish:cross-publish --content-type [CONTENT TYPE] --source-env [SOURCE ENV] --environments [DESTINATION ENVIRONMENT] --locales [LOCALE] -a [MANAGEMENT TOKEN ALIAS] --delivery-token [DELIVERY TOKEN] --branch [BRANCH NAME]",
294
+ "",
295
+ "Using --stack-api-key flag",
296
+ "csdx cm:bulk-publish:cross-publish --content-type [CONTENT TYPE] --source-env [SOURCE ENV] --environments [DESTINATION ENVIRONMENT] --locales [LOCALE] --stack-api-key [STACK API KEY] --delivery-token [DELIVERY TOKEN]",
297
+ ""
272
298
  ],
273
299
  "flags": {
274
300
  "alias": {
@@ -278,6 +304,14 @@
278
304
  "description": "Alias(name) for the management token",
279
305
  "multiple": false
280
306
  },
307
+ "stack-api-key": {
308
+ "name": "stack-api-key",
309
+ "type": "option",
310
+ "char": "k",
311
+ "description": "Stack api key to be used",
312
+ "required": false,
313
+ "multiple": false
314
+ },
281
315
  "retryFailed": {
282
316
  "name": "retryFailed",
283
317
  "type": "option",
@@ -457,7 +491,10 @@
457
491
  "csdx cm:entries:publish-modified -r [LOG FILE NAME]",
458
492
  "",
459
493
  "Using --branch",
460
- "csdx cm:entries:publish-modified --content-types [CONTENT TYPE 1] [CONTENT TYPE 2] --source-env [SOURCE_ENV] -e [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE 1] [LOCALE 2] -a [MANAGEMENT TOKEN ALIAS] --branch [BRANCH NAME]"
494
+ "csdx cm:entries:publish-modified --content-types [CONTENT TYPE 1] [CONTENT TYPE 2] --source-env [SOURCE_ENV] -e [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE 1] [LOCALE 2] -a [MANAGEMENT TOKEN ALIAS] --branch [BRANCH NAME]",
495
+ "",
496
+ "Using --stack-api-key",
497
+ "csdx cm:entries:publish-modified --content-types [CONTENT TYPE 1] [CONTENT TYPE 2] --source-env [SOURCE_ENV] -e [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE 1] [LOCALE 2] -stack-api-key [STACK API KEY]"
461
498
  ],
462
499
  "flags": {
463
500
  "alias": {
@@ -467,6 +504,14 @@
467
504
  "description": "Alias(name) for the management token",
468
505
  "multiple": false
469
506
  },
507
+ "stack-api-key": {
508
+ "name": "stack-api-key",
509
+ "type": "option",
510
+ "char": "k",
511
+ "description": "Stack api key to be used",
512
+ "required": false,
513
+ "multiple": false
514
+ },
470
515
  "retryFailed": {
471
516
  "name": "retryFailed",
472
517
  "type": "option",
@@ -593,7 +638,10 @@
593
638
  "csdx cm:entries:publish-non-localized-fields --retry-failed [LOG FILE NAME]",
594
639
  "",
595
640
  "Using --branch flag",
596
- "csdx cm:entries:publish-non-localized-fields --content-types [CONTENT TYPE 1] [CONTENT TYPE 2] --environments [ENVIRONMENT 1] [ENVIRONMENT 2] --alias [MANAGEMENT TOKEN ALIAS] --source-env [SOURCE ENV] --branch [BRANCH NAME]"
641
+ "csdx cm:entries:publish-non-localized-fields --content-types [CONTENT TYPE 1] [CONTENT TYPE 2] --environments [ENVIRONMENT 1] [ENVIRONMENT 2] --alias [MANAGEMENT TOKEN ALIAS] --source-env [SOURCE ENV] --branch [BRANCH NAME]",
642
+ "",
643
+ "Using --stack-api-key flag",
644
+ "csdx cm:entries:publish-non-localized-fields --content-types [CONTENT TYPE 1] [CONTENT TYPE 2] --environments [ENVIRONMENT 1] [ENVIRONMENT 2] --stack-api-key [STACK API KEY] --source-env [SOURCE ENV]"
597
645
  ],
598
646
  "flags": {
599
647
  "alias": {
@@ -603,6 +651,14 @@
603
651
  "description": "Alias(name) for the management token",
604
652
  "multiple": false
605
653
  },
654
+ "stack-api-key": {
655
+ "name": "stack-api-key",
656
+ "type": "option",
657
+ "char": "k",
658
+ "description": "Stack api key to be used",
659
+ "required": false,
660
+ "multiple": false
661
+ },
606
662
  "retry-failed": {
607
663
  "name": "retry-failed",
608
664
  "type": "option",
@@ -723,7 +779,10 @@
723
779
  "csdx cm:entries:publish-only-unpublished --retry-failed [LOG FILE NAME]",
724
780
  "",
725
781
  "Using --branch",
726
- "csdx cm:entries:publish-only-unpublished -b --content-types [CONTENT TYPES] -e [ENVIRONMENTS] --locales LOCALE -a [MANAGEMENT TOKEN ALIAS] --branch [BRANCH NAME] -source-env [SOURCE ENV]"
782
+ "csdx cm:entries:publish-only-unpublished -b --content-types [CONTENT TYPES] -e [ENVIRONMENTS] --locales LOCALE -a [MANAGEMENT TOKEN ALIAS] --branch [BRANCH NAME] -source-env [SOURCE ENV]",
783
+ "",
784
+ "Using --stack-api-key",
785
+ "csdx cm:entries:publish-only-unpublished -b --content-types [CONTENT TYPES] -e [ENVIRONMENTS] --locales LOCALE -a [MANAGEMENT TOKEN ALIAS] --stack-api-key [STACK API KEY] -source-env [SOURCE ENV]"
727
786
  ],
728
787
  "flags": {
729
788
  "alias": {
@@ -733,6 +792,13 @@
733
792
  "description": "Alias(name) for the management token",
734
793
  "multiple": false
735
794
  },
795
+ "stack-api-key": {
796
+ "name": "stack-api-key",
797
+ "type": "option",
798
+ "char": "k",
799
+ "description": "Stack api key to be used",
800
+ "multiple": false
801
+ },
736
802
  "retryFailed": {
737
803
  "name": "retryFailed",
738
804
  "type": "option",
@@ -872,7 +938,10 @@
872
938
  "csdx cm:entries:publish --content-types [CONTENT TYPE 1] [CONTENT TYPE 2] -e [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE 1] [LOCALE 2] -a [MANAGEMENT TOKEN ALIAS] --branch [BRANCH NAME]",
873
939
  "",
874
940
  "Using --source-env",
875
- "csdx cm:entries:publish --content-types [CONTENT TYPE 1] [CONTENT TYPE 2] -e [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE 1] [LOCALE 2] -a [MANAGEMENT TOKEN ALIAS] --source-env [SOURCE ENVIRONMENT] --delivery-token [DELIVERY TOKEN]"
941
+ "csdx cm:entries:publish --content-types [CONTENT TYPE 1] [CONTENT TYPE 2] -e [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE 1] [LOCALE 2] -a [MANAGEMENT TOKEN ALIAS] --source-env [SOURCE ENVIRONMENT] --delivery-token [DELIVERY TOKEN]",
942
+ "",
943
+ "Using --stack-api-key",
944
+ "csdx cm:entries:publish -e [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE 1] [LOCALE 2] --stack-api-key [STACK API KEY] --source-env [SOURCE ENVIRONMENT] --delivery-token [DELIVERY TOKEN]"
876
945
  ],
877
946
  "flags": {
878
947
  "alias": {
@@ -882,6 +951,13 @@
882
951
  "description": "Alias(name) for the management token",
883
952
  "multiple": false
884
953
  },
954
+ "stack-api-key": {
955
+ "name": "stack-api-key",
956
+ "type": "option",
957
+ "char": "k",
958
+ "description": "Stack api key to be used",
959
+ "multiple": false
960
+ },
885
961
  "retryFailed": {
886
962
  "name": "retryFailed",
887
963
  "type": "option",
@@ -1016,9 +1092,11 @@
1016
1092
  "Using --retry-failed flag",
1017
1093
  "csdx cm:stacks:unpublish --retry-failed [LOG FILE NAME]",
1018
1094
  "",
1019
- "",
1020
1095
  "Using --branch flag",
1021
- "csdx cm:stacks:unpublish --bulk-unpublish --content-type [CONTENT TYPE] --environment [SOURCE ENV] --locale [LOCALE] --alias [MANAGEMENT TOKEN ALIAS] --delivery-token [DELIVERY TOKEN] --branch [BRANCH NAME]"
1096
+ "csdx cm:stacks:unpublish --bulk-unpublish --content-type [CONTENT TYPE] --environment [SOURCE ENV] --locale [LOCALE] --alias [MANAGEMENT TOKEN ALIAS] --delivery-token [DELIVERY TOKEN] --branch [BRANCH NAME]",
1097
+ "",
1098
+ "Using --stack-api-key flag",
1099
+ "csdx cm:stacks:unpublish --bulk-unpublish --content-type [CONTENT TYPE] --environment [SOURCE ENV] --locale [LOCALE] --stack-api-key [STACK API KEY] --delivery-token [DELIVERY TOKEN]"
1022
1100
  ],
1023
1101
  "flags": {
1024
1102
  "alias": {
@@ -1028,6 +1106,13 @@
1028
1106
  "description": "Alias(name) for the management token",
1029
1107
  "multiple": false
1030
1108
  },
1109
+ "stack-api-key": {
1110
+ "name": "stack-api-key",
1111
+ "type": "option",
1112
+ "char": "k",
1113
+ "description": "Stack api key to be used",
1114
+ "multiple": false
1115
+ },
1031
1116
  "environment": {
1032
1117
  "name": "environment",
1033
1118
  "type": "option",
@@ -1109,7 +1194,7 @@
1109
1194
  ],
1110
1195
  "examples": [
1111
1196
  "General Usage",
1112
- "csdx cm:entries:update-and-publish --content-types [CONTENT TYPE 1] [CONTENT TYPE 2] -e [ENVIRONMENT 1] [ENVIRONMENT 2] --locale [LOCALE 1] [LOCALE 2] -a [MANAGEMENT TOKEN ALIAS]",
1197
+ "csdx cm:entries:update-and-publish --content-types [CONTENT TYPE 1] [CONTENT TYPE 2] -e [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE 1] [LOCALE 2] -a [MANAGEMENT TOKEN ALIAS]",
1113
1198
  "",
1114
1199
  "Using --config or -c flag",
1115
1200
  "Generate a config file at the current working directory using `csdx cm:stacks:publish-configure -a [ALIAS]`",
@@ -1120,7 +1205,10 @@
1120
1205
  "csdx cm:entries:update-and-publish --retry-failed [LOG FILE NAME]",
1121
1206
  "",
1122
1207
  "Using --branch",
1123
- "csdx cm:entries:update-and-publish --content-types [CONTENT TYPE 1] [CONTENT TYPE 2] -e [ENVIRONMENT 1] [ENVIRONMENT 2] --locale [LOCALE 1] [LOCALE 2] -a [MANAGEMENT TOKEN ALIAS] --branch [BRANCH NAME]"
1208
+ "csdx cm:entries:update-and-publish --content-types [CONTENT TYPE 1] [CONTENT TYPE 2] -e [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE 1] [LOCALE 2] -a [MANAGEMENT TOKEN ALIAS] --branch [BRANCH NAME]",
1209
+ "",
1210
+ "Using --stack-api-key",
1211
+ "csdx cm:entries:update-and-publish --content-types [CONTENT TYPE 1] [CONTENT TYPE 2] -e [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE 1] [LOCALE 2] --stack-api-key [STACK API KEY]"
1124
1212
  ],
1125
1213
  "flags": {
1126
1214
  "alias": {
@@ -1130,6 +1218,13 @@
1130
1218
  "description": "Alias(name) for the management token",
1131
1219
  "multiple": false
1132
1220
  },
1221
+ "stack-api-key": {
1222
+ "name": "stack-api-key",
1223
+ "type": "option",
1224
+ "char": "k",
1225
+ "description": "Stack api key to be used",
1226
+ "multiple": false
1227
+ },
1133
1228
  "retry-failed": {
1134
1229
  "name": "retry-failed",
1135
1230
  "type": "option",
@@ -1277,7 +1372,8 @@
1277
1372
  "examples": [
1278
1373
  "csdx cm:stacks:publish-configure",
1279
1374
  "csdx cm:stacks:publish-configure -a <management_token_alias>",
1280
- "csdx cm:stacks:publish-configure --alias <management_token_alias>"
1375
+ "csdx cm:stacks:publish-configure --alias <management_token_alias>",
1376
+ "csdx cm:stacks:publish-configure --stack-api-key <stack_api_key>"
1281
1377
  ],
1282
1378
  "flags": {
1283
1379
  "alias": {
@@ -1286,6 +1382,13 @@
1286
1382
  "char": "a",
1287
1383
  "description": "Alias(name) for the management token",
1288
1384
  "multiple": false
1385
+ },
1386
+ "stack-api-key": {
1387
+ "name": "stack-api-key",
1388
+ "type": "option",
1389
+ "char": "k",
1390
+ "description": "Stack api key to be used",
1391
+ "multiple": false
1289
1392
  }
1290
1393
  },
1291
1394
  "args": {}
@@ -1402,7 +1505,10 @@
1402
1505
  "csdx cm:stacks:unpublish --contentType [CONTENT TYPE] --environment [SOURCE ENV] --locale [LOCALE] --only-entries (Will unpublish only entries, (from CONTENT TYPE) from the source environment)",
1403
1506
  "",
1404
1507
  "Using --branch flag",
1405
- "csdx cm:stacks:unpublish --bulk-unpublish --content-type [CONTENT TYPE] --environment [SOURCE ENV] --locale [LOCALE] --alias [MANAGEMENT TOKEN ALIAS] --delivery-token [DELIVERY TOKEN] --branch [BRANCH NAME]"
1508
+ "csdx cm:stacks:unpublish --bulk-unpublish --content-type [CONTENT TYPE] --environment [SOURCE ENV] --locale [LOCALE] --alias [MANAGEMENT TOKEN ALIAS] --delivery-token [DELIVERY TOKEN] --branch [BRANCH NAME]",
1509
+ "",
1510
+ "Using --stack-api-key flag",
1511
+ "csdx cm:stacks:unpublish --bulk-unpublish --content-type [CONTENT TYPE] --environment [SOURCE ENV] --locale [LOCALE] --stack-api-key [STACK API KEY] --delivery-token [DELIVERY TOKEN]"
1406
1512
  ],
1407
1513
  "flags": {
1408
1514
  "alias": {
@@ -1412,6 +1518,13 @@
1412
1518
  "description": "Alias(name) for the management token",
1413
1519
  "multiple": false
1414
1520
  },
1521
+ "stack-api-key": {
1522
+ "name": "stack-api-key",
1523
+ "type": "option",
1524
+ "char": "k",
1525
+ "description": "Stack api key to be used",
1526
+ "multiple": false
1527
+ },
1415
1528
  "environment": {
1416
1529
  "name": "environment",
1417
1530
  "type": "option",
package/package.json CHANGED
@@ -1,16 +1,18 @@
1
1
  {
2
2
  "name": "@contentstack/cli-cm-bulk-publish",
3
3
  "description": "Contentstack CLI plugin for bulk publish actions",
4
- "version": "1.3.8",
4
+ "version": "1.3.10",
5
5
  "author": "Contentstack",
6
6
  "bugs": "https://github.com/contentstack/cli/issues",
7
7
  "dependencies": {
8
- "@contentstack/cli-command": "^1.2.9",
9
- "@contentstack/cli-utilities": "^1.4.5",
8
+ "@contentstack/cli-command": "^1.2.11",
9
+ "@contentstack/cli-utilities": "^1.5.1",
10
10
  "bluebird": "^3.7.2",
11
11
  "chalk": "^4.1.2",
12
+ "dotenv": "^16.1.4",
12
13
  "inquirer": "8.2.4",
13
14
  "lodash": "^4.17.15",
15
+ "mkdirp": "^1.0.4",
14
16
  "nock": "^13.0.2",
15
17
  "winston": "^3.7.2"
16
18
  },
@@ -92,7 +94,7 @@
92
94
  "scripts": {
93
95
  "postpack": "rm -f oclif.manifest.json",
94
96
  "prepack": "oclif manifest && oclif readme",
95
- "test": "nyc mocha --forbid-only \"test/**/*.test.js\"",
97
+ "test:unit": "nyc mocha --forbid-only \"test/unit/**/*.test.js\"",
96
98
  "posttest": "eslint .",
97
99
  "version": "oclif readme && git add README.md",
98
100
  "clean": "rm -rf ./node_modules tsconfig.build.tsbuildinfo"
@@ -1,5 +1,5 @@
1
1
  const { Command } = require('@contentstack/cli-command');
2
- const { printFlagDeprecation, flags } = require('@contentstack/cli-utilities');
2
+ const { printFlagDeprecation, flags, isAuthenticated } = require('@contentstack/cli-utilities');
3
3
  const { start: startPublish } = require('../../../producer/publish-assets');
4
4
  const { start: startCrossPublish } = require('../../../producer/cross-publish');
5
5
  const store = require('../../../util/store.js');
@@ -30,33 +30,39 @@ class AssetsPublishCommand extends Command {
30
30
  if (this.validate(updatedFlags)) {
31
31
  let stack;
32
32
  if (!updatedFlags.retryFailed) {
33
- if (!updatedFlags.alias) {
34
- updatedFlags.alias = await cliux.prompt('Please enter the management token alias to be used');
33
+ config = {
34
+ host: this.cmaHost,
35
+ cda: this.cdaHost,
36
+ branch: assetsFlags.branch,
37
+ };
38
+ if (updatedFlags.alias) {
39
+ // Validate management token alias.
40
+ try {
41
+ this.getToken(updatedFlags.alias);
42
+ config.alias = updatedFlags.alias;
43
+ } catch (error) {
44
+ this.error(
45
+ `The configured management token alias ${updatedFlags.alias} has not been added yet. Add it using 'csdx auth:tokens:add -a ${updatedFlags.alias}'`,
46
+ { exit: 2 },
47
+ );
48
+ }
49
+ } else if (updatedFlags['stack-api-key']) {
50
+ config.stackApiKey = updatedFlags['stack-api-key'];
51
+ } else {
52
+ this.error('Please use `--alias` or `--stack-api-key` to proceed.', { exit: 2 });
35
53
  }
36
54
  updatedFlags.bulkPublish = updatedFlags.bulkPublish === 'false' ? false : true;
37
55
  if (updatedFlags.folderUid === undefined) {
38
56
  // set default value for folderUid
39
57
  updatedFlags.folderUid = 'cs_root';
40
58
  }
41
- // Validate management token alias.
42
- try {
43
- this.getToken(updatedFlags.alias);
44
- } catch (error) {
45
- this.error(
46
- `The configured management token alias ${updatedFlags.alias} has not been added yet. Add it using 'csdx auth:tokens:add -a ${updatedFlags.alias}'`,
47
- { exit: 2 },
48
- );
49
- }
50
- config = {
51
- alias: updatedFlags.alias,
52
- host: this.cmaHost,
53
- cda: this.cdaHost,
54
- branch: assetsFlags.branch,
55
- };
56
59
  stack = await getStack(config);
57
60
  }
58
61
  if (await this.confirmFlags(updatedFlags)) {
59
62
  try {
63
+ if (process.env.NODE_ENV === 'test') {
64
+ return;
65
+ }
60
66
  const publishFunction = async (func) => {
61
67
  if (!updatedFlags.retryFailed) {
62
68
  try {
@@ -153,6 +159,11 @@ AssetsPublishCommand.flags = {
153
159
  char: 'a',
154
160
  description: 'Alias(name) for the management token',
155
161
  }),
162
+ 'stack-api-key': flags.string({
163
+ char: 'k',
164
+ description: 'Stack api key to be used',
165
+ required: false,
166
+ }),
156
167
  'retry-failed': flags.string({
157
168
  description: 'Retry publishing failed assets from the logfile (optional, will override all other flags)',
158
169
  }),
@@ -238,6 +249,9 @@ AssetsPublishCommand.examples = [
238
249
  '',
239
250
  'Using --source-env',
240
251
  'csdx cm:assets:publish --environments [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE] --alias [MANAGEMENT TOKEN ALIAS] --source-env [SOURCE ENVIRONMENT] --delivery-token [DELIVERY TOKEN]',
252
+ '',
253
+ 'Using --stack-api-key flag',
254
+ 'csdx cm:assets:publish --environments [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE] --stack-api-key [STACK API KEY]',
241
255
  ];
242
256
 
243
257
  AssetsPublishCommand.aliases = ['cm:bulk-publish:assets'];
@@ -1,7 +1,7 @@
1
1
  /* eslint-disable no-console */
2
2
  /* eslint-disable node/no-extraneous-require */
3
3
  const { Command } = require('@contentstack/cli-command');
4
- const { cliux, flags } = require('@contentstack/cli-utilities');
4
+ const { cliux, flags, isAuthenticated } = require('@contentstack/cli-utilities');
5
5
  const { start } = require('../../../producer/unpublish');
6
6
  const store = require('../../../util/store.js');
7
7
  const configKey = 'Unpublish';
@@ -33,28 +33,31 @@ class UnpublishCommand extends Command {
33
33
  if (this.validate(updatedFlags)) {
34
34
  let stack;
35
35
  if (!updatedFlags.retryFailed) {
36
- if (!updatedFlags.alias) {
37
- updatedFlags.alias = await cliux.prompt('Please enter the management token alias to be used');
38
- }
39
- if (!updatedFlags.deliveryToken) {
40
- updatedFlags.deliveryToken = await cliux.prompt('Enter delivery token of your source environment');
41
- }
42
- updatedFlags.bulkUnpublish = updatedFlags.bulkUnpublish === 'false' ? false : true;
43
- // Validate management token alias.
44
- try {
45
- this.getToken(updatedFlags.alias);
46
- } catch (error) {
47
- this.error(
48
- `The configured management token alias ${updatedFlags.alias} has not been added yet. Add it using 'csdx auth:tokens:add --alias ${updatedFlags.alias}'`,
49
- { exit: 2 },
50
- );
51
- }
52
36
  config = {
53
- alias: updatedFlags.alias,
54
37
  host: this.cmaHost,
55
38
  cda: this.cdaHost,
56
39
  branch: unpublishFlags.branch,
57
40
  };
41
+ if (updatedFlags.alias) {
42
+ // Validate management token alias.
43
+ try {
44
+ this.getToken(updatedFlags.alias);
45
+ config.alias = updatedFlags.alias;
46
+ } catch (error) {
47
+ this.error(
48
+ `The configured management token alias ${updatedFlags.alias} has not been added yet. Add it using 'csdx auth:tokens:add -a ${updatedFlags.alias}'`,
49
+ { exit: 2 },
50
+ );
51
+ }
52
+ } else if (updatedFlags['stack-api-key']) {
53
+ config.stackApiKey = updatedFlags['stack-api-key'];
54
+ } else {
55
+ this.error('Please use `--alias` or `--stack-api-key` to proceed.', { exit: 2 });
56
+ }
57
+ if (!updatedFlags.deliveryToken) {
58
+ updatedFlags.deliveryToken = await cliux.prompt('Enter delivery token of your source environment');
59
+ }
60
+ updatedFlags.bulkUnpublish = updatedFlags.bulkUnpublish === 'false' ? false : true;
58
61
  stack = await getStack(config);
59
62
  }
60
63
  if (!updatedFlags.deliveryToken && updatedFlags.deliveryToken.length === 0) {
@@ -63,6 +66,9 @@ class UnpublishCommand extends Command {
63
66
 
64
67
  if (await this.confirmFlags(updatedFlags)) {
65
68
  try {
69
+ if (process.env.NODE_ENV === 'test') {
70
+ return;
71
+ }
66
72
  if (!updatedFlags.retryFailed) {
67
73
  await start(updatedFlags, stack, config);
68
74
  } else {
@@ -130,6 +136,11 @@ UnpublishCommand.flags = {
130
136
  char: 'a',
131
137
  description: 'Alias(name) for the management token',
132
138
  }),
139
+ 'stack-api-key': flags.string({
140
+ char: 'k',
141
+ description: 'Stack api key to be used',
142
+ required: false,
143
+ }),
133
144
  environment: flags.string({
134
145
  char: 'e',
135
146
  description: 'Source Environment',
@@ -179,6 +190,9 @@ UnpublishCommand.examples = [
179
190
  '',
180
191
  'Using --branch flag',
181
192
  'csdx cm:assets:unpublish --bulk-unpublish --environment [SOURCE ENV] --locale [LOCALE] --alias [MANAGEMENT TOKEN ALIAS] --delivery-token [DELIVERY TOKEN] --branch [BRANCH NAME]',
193
+ '',
194
+ 'Using --stack-api-key flag',
195
+ 'csdx cm:assets:unpublish --bulk-unpublish --environment [SOURCE ENV] --locale [LOCALE] --stack-api-key [STACK API KEY] --delivery-token [DELIVERY TOKEN]',
182
196
  ];
183
197
 
184
198
  module.exports = UnpublishCommand;
@@ -1,6 +1,6 @@
1
1
  /* eslint-disable node/no-extraneous-require */
2
2
  const { Command } = require('@contentstack/cli-command');
3
- const { cliux, printFlagDeprecation, flags } = require('@contentstack/cli-utilities');
3
+ const { cliux, printFlagDeprecation, flags, isAuthenticated } = require('@contentstack/cli-utilities');
4
4
  const { start } = require('../../../producer/cross-publish');
5
5
  const store = require('../../../util/store.js');
6
6
  const configKey = 'cross_env_publish';
@@ -22,28 +22,31 @@ class CrossPublishCommand extends Command {
22
22
  if (this.validate(updatedFlags)) {
23
23
  let stack;
24
24
  if (!updatedFlags.retryFailed) {
25
- if (!updatedFlags.alias) {
26
- updatedFlags.alias = await cliux.prompt('Please enter the management token alias to be used');
27
- }
28
- if (!updatedFlags.deliveryToken) {
29
- updatedFlags.deliveryToken = await cliux.prompt('Enter delivery token of your source environment');
30
- }
31
- updatedFlags.bulkPublish = updatedFlags.bulkPublish === 'false' ? false : true;
32
- // Validate management token alias.
33
- try {
34
- this.getToken(updatedFlags.alias);
35
- } catch (error) {
36
- this.error(
37
- `The configured management token alias ${updatedFlags.alias} has not been added yet. Add it using 'csdx auth:tokens:add -a ${updatedFlags.alias}'`,
38
- { exit: 2 },
39
- );
40
- }
41
25
  config = {
42
- alias: updatedFlags.alias,
43
26
  host: this.cmaHost,
44
27
  cda: this.cdaHost,
45
28
  branch: crossPublishFlags.branch,
46
29
  };
30
+ if (updatedFlags.alias) {
31
+ try {
32
+ this.getToken(updatedFlags.alias);
33
+ config.alias = updatedFlags.alias;
34
+ } catch (error) {
35
+ this.error(
36
+ `The configured management token alias ${updatedFlags.alias} has not been added yet. Add it using 'csdx auth:tokens:add -a ${updatedFlags.alias}'`,
37
+ { exit: 2 },
38
+ );
39
+ }
40
+ } else if (updatedFlags['stack-api-key']) {
41
+ config.stackApiKey = updatedFlags['stack-api-key'];
42
+ } else {
43
+ this.error('Please use `--alias` or `--stack-api-key` to proceed.', { exit: 2 });
44
+ }
45
+ if (!updatedFlags.deliveryToken) {
46
+ updatedFlags.deliveryToken = await cliux.prompt('Enter delivery token of your source environment');
47
+ }
48
+ updatedFlags.bulkPublish = updatedFlags.bulkPublish === 'false' ? false : true;
49
+
47
50
  stack = await getStack(config);
48
51
  }
49
52
 
@@ -53,6 +56,9 @@ class CrossPublishCommand extends Command {
53
56
 
54
57
  if (await this.confirmFlags(updatedFlags)) {
55
58
  try {
59
+ if (process.env.NODE_ENV === 'test') {
60
+ return;
61
+ }
56
62
  if (!updatedFlags.retryFailed) {
57
63
  await start(updatedFlags, stack, config);
58
64
  } else {
@@ -162,6 +168,11 @@ But, if retryFailed flag is set, then only a logfile is required
162
168
 
163
169
  CrossPublishCommand.flags = {
164
170
  alias: flags.string({ char: 'a', description: 'Alias(name) for the management token' }),
171
+ 'stack-api-key': flags.string({
172
+ char: 'k',
173
+ description: 'Stack api key to be used',
174
+ required: false,
175
+ }),
165
176
  retryFailed: flags.string({
166
177
  char: 'r',
167
178
  description: '(optional) Retry publishing failed entries from the logfile (this flag overrides all other flags)',
@@ -263,6 +274,10 @@ CrossPublishCommand.examples = [
263
274
  '',
264
275
  'Using --branch flag',
265
276
  'csdx cm:bulk-publish:cross-publish --content-type [CONTENT TYPE] --source-env [SOURCE ENV] --environments [DESTINATION ENVIRONMENT] --locales [LOCALE] -a [MANAGEMENT TOKEN ALIAS] --delivery-token [DELIVERY TOKEN] --branch [BRANCH NAME]',
277
+ '',
278
+ 'Using --stack-api-key flag',
279
+ 'csdx cm:bulk-publish:cross-publish --content-type [CONTENT TYPE] --source-env [SOURCE ENV] --environments [DESTINATION ENVIRONMENT] --locales [LOCALE] --stack-api-key [STACK API KEY] --delivery-token [DELIVERY TOKEN]',
280
+ '',
266
281
  ];
267
282
 
268
283
  CrossPublishCommand.usage = `cm:bulk-publish:cross-publish [-a <value>] [--retry-failed <value>] [--bulk-publish <value>] [--content-type <value>] [--locales <value>] [--source-env <value>] [--environments <value>] [--delivery-token <value>] [-c <value>] [-y] [--branch <value>] [--onlyAssets] [--onlyEntries]`;
@@ -32,29 +32,34 @@ class PublishModifiedCommand extends Command {
32
32
  if (this.validate(updatedFlags)) {
33
33
  let stack;
34
34
  if (!updatedFlags.retryFailed) {
35
- if (!updatedFlags.alias) {
36
- updatedFlags.alias = await cliux.prompt('Please enter the management token alias to be used');
37
- }
38
- updatedFlags.bulkPublish = updatedFlags.bulkPublish !== 'false';
39
- // Validate management token alias.
40
- try {
41
- this.getToken(updatedFlags.alias);
42
- } catch (error) {
43
- this.error(
44
- `The configured management token alias ${updatedFlags.alias} has not been added yet. Add it using 'csdx auth:tokens:add -a ${updatedFlags.alias}'`,
45
- { exit: 2 },
46
- );
47
- }
48
35
  config = {
49
36
  alias: updatedFlags.alias,
50
37
  host: this.cmaHost,
51
38
  cda: this.cdaHost,
52
39
  branch: entryEditsFlags.branch,
53
40
  };
41
+ if (updatedFlags.alias) {
42
+ try {
43
+ this.getToken(updatedFlags.alias);
44
+ } catch (error) {
45
+ this.error(
46
+ `The configured management token alias ${updatedFlags.alias} has not been added yet. Add it using 'csdx auth:tokens:add -a ${updatedFlags.alias}'`,
47
+ { exit: 2 },
48
+ );
49
+ }
50
+ } else if (updatedFlags['stack-api-key']) {
51
+ config.stackApiKey = updatedFlags['stack-api-key'];
52
+ } else {
53
+ this.error('Please use `--alias` or `--stack-api-key` to proceed.', { exit: 2 });
54
+ }
55
+ updatedFlags.bulkPublish = updatedFlags.bulkPublish !== 'false';
54
56
  stack = await getStack(config);
55
57
  }
56
58
  if (await this.confirmFlags(updatedFlags)) {
57
59
  try {
60
+ if (process.env.NODE_ENV === 'test') {
61
+ return;
62
+ }
58
63
  if (!updatedFlags.retryFailed) {
59
64
  await start(updatedFlags, stack, config);
60
65
  } else {
@@ -121,6 +126,11 @@ But, if retry-failed flag is set, then only a logfile is required
121
126
 
122
127
  PublishModifiedCommand.flags = {
123
128
  alias: flags.string({ char: 'a', description: 'Alias(name) for the management token' }),
129
+ 'stack-api-key': flags.string({
130
+ char: 'k',
131
+ description: 'Stack api key to be used',
132
+ required: false,
133
+ }),
124
134
  retryFailed: flags.string({
125
135
  char: 'r',
126
136
  description: 'Retry publishing failed entries from the logfile (optional, overrides all other flags)',
@@ -197,6 +207,9 @@ PublishModifiedCommand.examples = [
197
207
  '',
198
208
  'Using --branch',
199
209
  'csdx cm:entries:publish-modified --content-types [CONTENT TYPE 1] [CONTENT TYPE 2] --source-env [SOURCE_ENV] -e [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE 1] [LOCALE 2] -a [MANAGEMENT TOKEN ALIAS] --branch [BRANCH NAME]',
210
+ '',
211
+ 'Using --stack-api-key',
212
+ 'csdx cm:entries:publish-modified --content-types [CONTENT TYPE 1] [CONTENT TYPE 2] --source-env [SOURCE_ENV] -e [ENVIRONMENT 1] [ENVIRONMENT 2] --locales [LOCALE 1] [LOCALE 2] -stack-api-key [STACK API KEY]',
200
213
  ];
201
214
 
202
215
  PublishModifiedCommand.aliases = ['cm:bulk-publish:entry-edits'];