@adobe/aio-cli-plugin-app 12.0.0 → 12.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -46,9 +46,11 @@ $ aio app --help
46
46
  * [`aio app get-url [ACTION]`](#aio-app-get-url-action)
47
47
  * [`aio app info`](#aio-app-info)
48
48
  * [`aio app init [PATH]`](#aio-app-init-path)
49
+ * [`aio app install PATH`](#aio-app-install-path)
49
50
  * [`aio app list`](#aio-app-list)
50
51
  * [`aio app list extension`](#aio-app-list-extension)
51
52
  * [`aio app logs`](#aio-app-logs)
53
+ * [`aio app pack [PATH]`](#aio-app-pack-path)
52
54
  * [`aio app run`](#aio-app-run)
53
55
  * [`aio app test`](#aio-app-test)
54
56
  * [`aio app undeploy`](#aio-app-undeploy)
@@ -70,7 +72,7 @@ DESCRIPTION
70
72
  Create, run, test, and deploy Adobe I/O Apps
71
73
  ```
72
74
 
73
- _See code: [src/commands/app/index.ts](https://github.com/adobe/aio-cli-plugin-app/blob/12.0.0/src/commands/app/index.ts)_
75
+ _See code: [src/commands/app/index.js](https://github.com/adobe/aio-cli-plugin-app/blob/12.1.0/src/commands/app/index.js)_
74
76
 
75
77
  ## `aio app add`
76
78
 
@@ -88,7 +90,7 @@ DESCRIPTION
88
90
  Add a new component to an existing Adobe I/O App
89
91
  ```
90
92
 
91
- _See code: [src/commands/app/add/index.ts](https://github.com/adobe/aio-cli-plugin-app/blob/12.0.0/src/commands/app/add/index.ts)_
93
+ _See code: [src/commands/app/add/index.js](https://github.com/adobe/aio-cli-plugin-app/blob/12.1.0/src/commands/app/add/index.js)_
92
94
 
93
95
  ## `aio app add action`
94
96
 
@@ -113,7 +115,7 @@ ALIASES
113
115
  $ aio app add actions
114
116
  ```
115
117
 
116
- _See code: [src/commands/app/add/action.ts](https://github.com/adobe/aio-cli-plugin-app/blob/12.0.0/src/commands/app/add/action.ts)_
118
+ _See code: [src/commands/app/add/action.js](https://github.com/adobe/aio-cli-plugin-app/blob/12.1.0/src/commands/app/add/action.js)_
117
119
 
118
120
  ## `aio app add ci`
119
121
 
@@ -131,7 +133,7 @@ DESCRIPTION
131
133
  Add CI files
132
134
  ```
133
135
 
134
- _See code: [src/commands/app/add/ci.ts](https://github.com/adobe/aio-cli-plugin-app/blob/12.0.0/src/commands/app/add/ci.ts)_
136
+ _See code: [src/commands/app/add/ci.js](https://github.com/adobe/aio-cli-plugin-app/blob/12.1.0/src/commands/app/add/ci.js)_
135
137
 
136
138
  ## `aio app add event`
137
139
 
@@ -156,7 +158,7 @@ ALIASES
156
158
  $ aio app add events
157
159
  ```
158
160
 
159
- _See code: [src/commands/app/add/event.ts](https://github.com/adobe/aio-cli-plugin-app/blob/12.0.0/src/commands/app/add/event.ts)_
161
+ _See code: [src/commands/app/add/event.js](https://github.com/adobe/aio-cli-plugin-app/blob/12.1.0/src/commands/app/add/event.js)_
160
162
 
161
163
  ## `aio app add extension`
162
164
 
@@ -182,7 +184,7 @@ ALIASES
182
184
  $ aio app add extensions
183
185
  ```
184
186
 
185
- _See code: [src/commands/app/add/extension.ts](https://github.com/adobe/aio-cli-plugin-app/blob/12.0.0/src/commands/app/add/extension.ts)_
187
+ _See code: [src/commands/app/add/extension.js](https://github.com/adobe/aio-cli-plugin-app/blob/12.1.0/src/commands/app/add/extension.js)_
186
188
 
187
189
  ## `aio app add service`
188
190
 
@@ -206,7 +208,7 @@ ALIASES
206
208
  $ aio app add services
207
209
  ```
208
210
 
209
- _See code: [src/commands/app/add/service.ts](https://github.com/adobe/aio-cli-plugin-app/blob/12.0.0/src/commands/app/add/service.ts)_
211
+ _See code: [src/commands/app/add/service.js](https://github.com/adobe/aio-cli-plugin-app/blob/12.1.0/src/commands/app/add/service.js)_
210
212
 
211
213
  ## `aio app add web-assets`
212
214
 
@@ -227,7 +229,7 @@ DESCRIPTION
227
229
  Add web assets support
228
230
  ```
229
231
 
230
- _See code: [src/commands/app/add/web-assets.ts](https://github.com/adobe/aio-cli-plugin-app/blob/12.0.0/src/commands/app/add/web-assets.ts)_
232
+ _See code: [src/commands/app/add/web-assets.js](https://github.com/adobe/aio-cli-plugin-app/blob/12.1.0/src/commands/app/add/web-assets.js)_
231
233
 
232
234
  ## `aio app build`
233
235
 
@@ -256,7 +258,7 @@ DESCRIPTION
256
258
  This will always force a rebuild unless --no-force-build is set.
257
259
  ```
258
260
 
259
- _See code: [src/commands/app/build.ts](https://github.com/adobe/aio-cli-plugin-app/blob/12.0.0/src/commands/app/build.ts)_
261
+ _See code: [src/commands/app/build.js](https://github.com/adobe/aio-cli-plugin-app/blob/12.1.0/src/commands/app/build.js)_
260
262
 
261
263
  ## `aio app create [PATH]`
262
264
 
@@ -278,7 +280,7 @@ DESCRIPTION
278
280
  Create a new Adobe I/O App with default parameters
279
281
  ```
280
282
 
281
- _See code: [src/commands/app/create.ts](https://github.com/adobe/aio-cli-plugin-app/blob/12.0.0/src/commands/app/create.ts)_
283
+ _See code: [src/commands/app/create.js](https://github.com/adobe/aio-cli-plugin-app/blob/12.1.0/src/commands/app/create.js)_
282
284
 
283
285
  ## `aio app delete`
284
286
 
@@ -296,7 +298,7 @@ DESCRIPTION
296
298
  Delete a component from an existing Adobe I/O App
297
299
  ```
298
300
 
299
- _See code: [src/commands/app/delete/index.ts](https://github.com/adobe/aio-cli-plugin-app/blob/12.0.0/src/commands/app/delete/index.ts)_
301
+ _See code: [src/commands/app/delete/index.js](https://github.com/adobe/aio-cli-plugin-app/blob/12.1.0/src/commands/app/delete/index.js)_
300
302
 
301
303
  ## `aio app delete action [ACTION-NAME]`
302
304
 
@@ -322,7 +324,7 @@ ALIASES
322
324
  $ aio app delete actions
323
325
  ```
324
326
 
325
- _See code: [src/commands/app/delete/action.ts](https://github.com/adobe/aio-cli-plugin-app/blob/12.0.0/src/commands/app/delete/action.ts)_
327
+ _See code: [src/commands/app/delete/action.js](https://github.com/adobe/aio-cli-plugin-app/blob/12.1.0/src/commands/app/delete/action.js)_
326
328
 
327
329
  ## `aio app delete ci`
328
330
 
@@ -341,7 +343,7 @@ DESCRIPTION
341
343
  Delete existing CI files
342
344
  ```
343
345
 
344
- _See code: [src/commands/app/delete/ci.ts](https://github.com/adobe/aio-cli-plugin-app/blob/12.0.0/src/commands/app/delete/ci.ts)_
346
+ _See code: [src/commands/app/delete/ci.js](https://github.com/adobe/aio-cli-plugin-app/blob/12.1.0/src/commands/app/delete/ci.js)_
345
347
 
346
348
  ## `aio app delete extension`
347
349
 
@@ -367,7 +369,7 @@ ALIASES
367
369
  $ aio app delete extensions
368
370
  ```
369
371
 
370
- _See code: [src/commands/app/delete/extension.ts](https://github.com/adobe/aio-cli-plugin-app/blob/12.0.0/src/commands/app/delete/extension.ts)_
372
+ _See code: [src/commands/app/delete/extension.js](https://github.com/adobe/aio-cli-plugin-app/blob/12.1.0/src/commands/app/delete/extension.js)_
371
373
 
372
374
  ## `aio app delete service`
373
375
 
@@ -391,7 +393,7 @@ ALIASES
391
393
  $ aio app delete services
392
394
  ```
393
395
 
394
- _See code: [src/commands/app/delete/service.ts](https://github.com/adobe/aio-cli-plugin-app/blob/12.0.0/src/commands/app/delete/service.ts)_
396
+ _See code: [src/commands/app/delete/service.js](https://github.com/adobe/aio-cli-plugin-app/blob/12.1.0/src/commands/app/delete/service.js)_
395
397
 
396
398
  ## `aio app delete web-assets`
397
399
 
@@ -410,7 +412,7 @@ DESCRIPTION
410
412
  Delete existing web assets
411
413
  ```
412
414
 
413
- _See code: [src/commands/app/delete/web-assets.ts](https://github.com/adobe/aio-cli-plugin-app/blob/12.0.0/src/commands/app/delete/web-assets.ts)_
415
+ _See code: [src/commands/app/delete/web-assets.js](https://github.com/adobe/aio-cli-plugin-app/blob/12.1.0/src/commands/app/delete/web-assets.js)_
414
416
 
415
417
  ## `aio app deploy`
416
418
 
@@ -419,8 +421,8 @@ Build and deploy an Adobe I/O App
419
421
  ```
420
422
  USAGE
421
423
  $ aio app deploy [-v] [--version] [--actions | -a <value>] [--web-assets] [--force-build | ] [--content-hash]
422
- [--web-optimize] [-e <value> | ] [--build] [--open] [--force-deploy] [--force-publish | | --publish]
423
- [--force-events | | ] [--log-forwarding-update]
424
+ [--web-optimize] [-e <value> | ] [--build] [--open] [--force-deploy | --publish | --force-publish] [--force-events |
425
+ | ] [--log-forwarding-update]
424
426
 
425
427
  FLAGS
426
428
  -a, --action=<value>... Deploy only a specific action, the flags can be specified multiple times, this will set
@@ -451,7 +453,7 @@ DESCRIPTION
451
453
  This will always force a rebuild unless --no-force-build is set.
452
454
  ```
453
455
 
454
- _See code: [src/commands/app/deploy.ts](https://github.com/adobe/aio-cli-plugin-app/blob/12.0.0/src/commands/app/deploy.ts)_
456
+ _See code: [src/commands/app/deploy.js](https://github.com/adobe/aio-cli-plugin-app/blob/12.1.0/src/commands/app/deploy.js)_
455
457
 
456
458
  ## `aio app get-url [ACTION]`
457
459
 
@@ -474,7 +476,7 @@ DESCRIPTION
474
476
  Get action URLs
475
477
  ```
476
478
 
477
- _See code: [src/commands/app/get-url.ts](https://github.com/adobe/aio-cli-plugin-app/blob/12.0.0/src/commands/app/get-url.ts)_
479
+ _See code: [src/commands/app/get-url.js](https://github.com/adobe/aio-cli-plugin-app/blob/12.1.0/src/commands/app/get-url.js)_
478
480
 
479
481
  ## `aio app info`
480
482
 
@@ -496,7 +498,7 @@ DESCRIPTION
496
498
  Display settings/configuration in use by an Adobe I/O App
497
499
  ```
498
500
 
499
- _See code: [src/commands/app/info.ts](https://github.com/adobe/aio-cli-plugin-app/blob/12.0.0/src/commands/app/info.ts)_
501
+ _See code: [src/commands/app/info.js](https://github.com/adobe/aio-cli-plugin-app/blob/12.1.0/src/commands/app/info.js)_
500
502
 
501
503
  ## `aio app init [PATH]`
502
504
 
@@ -506,6 +508,7 @@ Create a new Adobe I/O App
506
508
  USAGE
507
509
  $ aio app init [PATH] [-v] [--version] [--install] [-y] [--login] [-e <value> | -t <value> | --repo <value>]
508
510
  [--standalone-app | | ] [-w <value> | -i <value>] [--confirm-new-workspace] [--use-jwt] [--github-pat <value> ]
511
+ [--linter none|basic|adobe-recommended]
509
512
 
510
513
  ARGUMENTS
511
514
  PATH [default: .] Path to the app directory
@@ -521,6 +524,8 @@ FLAGS
521
524
  --[no-]confirm-new-workspace Prompt to confirm before creating a new workspace
522
525
  --github-pat=<value> github personal access token to use for downloading private quickstart repos
523
526
  --[no-]install [default: true] Run npm installation after files are created
527
+ --linter=<option> [default: basic] Specify the linter to use for the project
528
+ <options: none|basic|adobe-recommended>
524
529
  --[no-]login Login using your Adobe ID for interacting with Adobe I/O Developer Console
525
530
  --repo=<value> Init from gh quick-start repo. Expected to be of the form <owner>/<repo>/<path>
526
531
  --standalone-app Create a stand-alone application
@@ -532,7 +537,30 @@ DESCRIPTION
532
537
  Create a new Adobe I/O App
533
538
  ```
534
539
 
535
- _See code: [src/commands/app/init.ts](https://github.com/adobe/aio-cli-plugin-app/blob/12.0.0/src/commands/app/init.ts)_
540
+ _See code: [src/commands/app/init.js](https://github.com/adobe/aio-cli-plugin-app/blob/12.1.0/src/commands/app/init.js)_
541
+
542
+ ## `aio app install PATH`
543
+
544
+ This command will support installing apps packaged by 'aio app pack'.
545
+
546
+ ```
547
+ USAGE
548
+ $ aio app install PATH [-v] [--version] [-o <value>] [--tests]
549
+
550
+ ARGUMENTS
551
+ PATH Path to the app package to install
552
+
553
+ FLAGS
554
+ -o, --output=<value> [default: .] The packaged app output folder path
555
+ -v, --verbose Verbose output
556
+ --[no-]tests Run packaged app unit tests (e.g. aio app:test)
557
+ --version Show version
558
+
559
+ DESCRIPTION
560
+ This command will support installing apps packaged by 'aio app pack'.
561
+ ```
562
+
563
+ _See code: [src/commands/app/install.js](https://github.com/adobe/aio-cli-plugin-app/blob/12.1.0/src/commands/app/install.js)_
536
564
 
537
565
  ## `aio app list`
538
566
 
@@ -550,7 +578,7 @@ DESCRIPTION
550
578
  List components for Adobe I/O App
551
579
  ```
552
580
 
553
- _See code: [src/commands/app/list/index.ts](https://github.com/adobe/aio-cli-plugin-app/blob/12.0.0/src/commands/app/list/index.ts)_
581
+ _See code: [src/commands/app/list/index.js](https://github.com/adobe/aio-cli-plugin-app/blob/12.1.0/src/commands/app/list/index.js)_
554
582
 
555
583
  ## `aio app list extension`
556
584
 
@@ -575,7 +603,7 @@ ALIASES
575
603
  $ aio app list extensions
576
604
  ```
577
605
 
578
- _See code: [src/commands/app/list/extension.ts](https://github.com/adobe/aio-cli-plugin-app/blob/12.0.0/src/commands/app/list/extension.ts)_
606
+ _See code: [src/commands/app/list/extension.js](https://github.com/adobe/aio-cli-plugin-app/blob/12.1.0/src/commands/app/list/extension.js)_
579
607
 
580
608
  ## `aio app logs`
581
609
 
@@ -599,7 +627,29 @@ DESCRIPTION
599
627
  Fetch logs for an Adobe I/O App
600
628
  ```
601
629
 
602
- _See code: [src/commands/app/logs.ts](https://github.com/adobe/aio-cli-plugin-app/blob/12.0.0/src/commands/app/logs.ts)_
630
+ _See code: [src/commands/app/logs.js](https://github.com/adobe/aio-cli-plugin-app/blob/12.1.0/src/commands/app/logs.js)_
631
+
632
+ ## `aio app pack [PATH]`
633
+
634
+ This command will support packaging apps for redistribution.
635
+
636
+ ```
637
+ USAGE
638
+ $ aio app pack [PATH] [-v] [--version] [-o <value>]
639
+
640
+ ARGUMENTS
641
+ PATH [default: .] Path to the app directory to package
642
+
643
+ FLAGS
644
+ -o, --output=<value> [default: dist/app.zip] The packaged app output file path
645
+ -v, --verbose Verbose output
646
+ --version Show version
647
+
648
+ DESCRIPTION
649
+ This command will support packaging apps for redistribution.
650
+ ```
651
+
652
+ _See code: [src/commands/app/pack.js](https://github.com/adobe/aio-cli-plugin-app/blob/12.1.0/src/commands/app/pack.js)_
603
653
 
604
654
  ## `aio app run`
605
655
 
@@ -622,7 +672,7 @@ DESCRIPTION
622
672
  Run an Adobe I/O App
623
673
  ```
624
674
 
625
- _See code: [src/commands/app/run.ts](https://github.com/adobe/aio-cli-plugin-app/blob/12.0.0/src/commands/app/run.ts)_
675
+ _See code: [src/commands/app/run.js](https://github.com/adobe/aio-cli-plugin-app/blob/12.1.0/src/commands/app/run.js)_
626
676
 
627
677
  ## `aio app test`
628
678
 
@@ -650,7 +700,7 @@ DESCRIPTION
650
700
  If the extension has a hook called 'test' in its 'ext.config.yaml', the script specified will be run instead.
651
701
  ```
652
702
 
653
- _See code: [src/commands/app/test.ts](https://github.com/adobe/aio-cli-plugin-app/blob/12.0.0/src/commands/app/test.ts)_
703
+ _See code: [src/commands/app/test.js](https://github.com/adobe/aio-cli-plugin-app/blob/12.1.0/src/commands/app/test.js)_
654
704
 
655
705
  ## `aio app undeploy`
656
706
 
@@ -675,7 +725,7 @@ DESCRIPTION
675
725
  Undeploys an Adobe I/O App
676
726
  ```
677
727
 
678
- _See code: [src/commands/app/undeploy.ts](https://github.com/adobe/aio-cli-plugin-app/blob/12.0.0/src/commands/app/undeploy.ts)_
728
+ _See code: [src/commands/app/undeploy.js](https://github.com/adobe/aio-cli-plugin-app/blob/12.1.0/src/commands/app/undeploy.js)_
679
729
 
680
730
  ## `aio app use [CONFIG_FILE_PATH]`
681
731
 
@@ -722,5 +772,5 @@ DESCRIPTION
722
772
  page in https://developer.adobe.com/console/
723
773
  ```
724
774
 
725
- _See code: [src/commands/app/use.ts](https://github.com/adobe/aio-cli-plugin-app/blob/12.0.0/src/commands/app/use.ts)_
775
+ _See code: [src/commands/app/use.js](https://github.com/adobe/aio-cli-plugin-app/blob/12.1.0/src/commands/app/use.js)_
726
776
  <!-- commandsstop -->
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "12.0.0",
2
+ "version": "12.1.0",
3
3
  "commands": {
4
4
  "app:build": {
5
5
  "id": "app:build",
@@ -220,7 +220,11 @@
220
220
  "name": "force-deploy",
221
221
  "type": "boolean",
222
222
  "description": "[default: false] Force deploy changes, regardless of production Workspace being published in Exchange.",
223
- "allowNo": false
223
+ "allowNo": false,
224
+ "exclusive": [
225
+ "publish",
226
+ "force-publish"
227
+ ]
224
228
  },
225
229
  "force-publish": {
226
230
  "name": "force-publish",
@@ -540,6 +544,18 @@
540
544
  "dependsOn": [
541
545
  "repo"
542
546
  ]
547
+ },
548
+ "linter": {
549
+ "name": "linter",
550
+ "type": "option",
551
+ "description": "Specify the linter to use for the project",
552
+ "multiple": false,
553
+ "options": [
554
+ "none",
555
+ "basic",
556
+ "adobe-recommended"
557
+ ],
558
+ "default": "basic"
543
559
  }
544
560
  },
545
561
  "args": {
@@ -552,12 +568,11 @@
552
568
  },
553
569
  "app:install": {
554
570
  "id": "app:install",
555
- "description": "(Pre-release) This command will support installing apps packaged by '<%= config.bin %> app pack'.\n",
571
+ "description": "This command will support installing apps packaged by '<%= config.bin %> app pack'.\n",
556
572
  "strict": true,
557
573
  "pluginName": "@adobe/aio-cli-plugin-app",
558
574
  "pluginAlias": "@adobe/aio-cli-plugin-app",
559
575
  "pluginType": "core",
560
- "hidden": true,
561
576
  "aliases": [],
562
577
  "flags": {
563
578
  "verbose": {
@@ -678,12 +693,11 @@
678
693
  },
679
694
  "app:pack": {
680
695
  "id": "app:pack",
681
- "description": "(Pre-release) This command will support packaging apps for redistribution.\n",
696
+ "description": "This command will support packaging apps for redistribution.\n",
682
697
  "strict": true,
683
698
  "pluginName": "@adobe/aio-cli-plugin-app",
684
699
  "pluginAlias": "@adobe/aio-cli-plugin-app",
685
700
  "pluginType": "core",
686
- "hidden": true,
687
701
  "aliases": [],
688
702
  "flags": {
689
703
  "verbose": {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@adobe/aio-cli-plugin-app",
3
3
  "description": "Create, Build and Deploy Adobe I/O Applications",
4
- "version": "12.0.0",
4
+ "version": "12.1.0",
5
5
  "author": "Adobe Inc.",
6
6
  "bugs": "https://github.com/adobe/aio-cli-plugin-app/issues",
7
7
  "dependencies": {
@@ -18,8 +18,8 @@
18
18
  "@adobe/generator-aio-app": "^7",
19
19
  "@adobe/generator-app-common-lib": "^2",
20
20
  "@adobe/inquirer-table-checkbox": "^2",
21
- "@octokit/rest": "^19.0.11",
22
21
  "@oclif/core": "^2.11.6",
22
+ "@octokit/rest": "^19.0.11",
23
23
  "@parcel/core": "^2.7.0",
24
24
  "@parcel/reporter-cli": "^2.7.0",
25
25
  "ajv": "^8",
@@ -38,6 +38,7 @@
38
38
  "hyperlinker": "^1.0.0",
39
39
  "inquirer": "^8",
40
40
  "js-yaml": "^4.1.0",
41
+ "junk": "^3.1.0",
41
42
  "lodash.clonedeep": "^4.5.0",
42
43
  "node-abort-controller": "^3.1.1",
43
44
  "node-fetch": "^2.6.7",
@@ -48,13 +49,12 @@
48
49
  "term-size": "^2.2.1",
49
50
  "unzipper": "^0.10.11",
50
51
  "upath": "^2",
51
- "junk": "^3.1.0",
52
- "which": "^3.0.0",
52
+ "which": "^4.0.0",
53
53
  "yeoman-environment": "^3.2.0"
54
54
  },
55
55
  "devDependencies": {
56
56
  "@adobe/aio-lib-test-proxy": "^2",
57
- "@adobe/eslint-config-aio-lib-config": "^2.0.2",
57
+ "@adobe/eslint-config-aio-lib-config": "^3.0.0",
58
58
  "@types/jest": "^29",
59
59
  "babel-runtime": "^6.26.0",
60
60
  "core-js": "^3",
@@ -70,8 +70,7 @@
70
70
  "jest": "^29.5.0",
71
71
  "nock": "^13.2.9",
72
72
  "oclif": "^3.2.0",
73
- "stdout-stderr": "^0.1.9",
74
- "typescript": "^5.1.6"
73
+ "stdout-stderr": "^0.1.9"
75
74
  },
76
75
  "engines": {
77
76
  "node": ">=18"
@@ -99,6 +98,7 @@
99
98
  "scripts": {
100
99
  "postpack": "rm -f oclif.manifest.json",
101
100
  "lint": "eslint src test",
101
+ "lint-fix": "npm run lint -- --fix",
102
102
  "prepack": "oclif manifest && oclif readme --no-aliases",
103
103
  "test": "npm run unit-tests && npm run lint",
104
104
  "unit-tests": "jest -c jest.config.js",
@@ -84,13 +84,16 @@ class Deploy extends BuildCommand {
84
84
  }
85
85
  }
86
86
 
87
- // 2. Bail if workspace is production and application status is PUBLISHED, honor force-deploy
88
- if (!isStandaloneApp && aioConfig?.project?.workspace?.name === 'Production' && !flags['force-deploy']) {
87
+ // 2. If workspace is prod and has extensions, check if the app is published
88
+ if (!isStandaloneApp && aioConfig?.project?.workspace?.name === 'Production') {
89
89
  const extension = await this.getApplicationExtension(libConsoleCLI, aioConfig)
90
- spinner.info(chalk.dim(JSON.stringify(extension)))
91
90
  if (extension && extension.status === 'PUBLISHED') {
92
- spinner.info(chalk.red('This application is published and the current workspace is Production, deployment will be skipped. You must first retract this application in Adobe Exchange to deploy updates.'))
93
- return
91
+ flags.publish = false // if the app is production and published, then skip publish later on
92
+ // if the app is published and no force-deploy flag is set, then skip deployment
93
+ if (!flags['force-deploy']) {
94
+ spinner.info(chalk.red('This application is published and the current workspace is Production, deployment will be skipped. You must first retract this application in Adobe Exchange to deploy updates.'))
95
+ return
96
+ }
94
97
  }
95
98
  }
96
99
 
@@ -342,7 +345,8 @@ Deploy.flags = {
342
345
  }),
343
346
  'force-deploy': Flags.boolean({
344
347
  description: '[default: false] Force deploy changes, regardless of production Workspace being published in Exchange.',
345
- default: false
348
+ default: false,
349
+ exclusive: ['publish', 'force-publish'] // publish is skipped if force-deploy is set and prod app is published
346
350
  }),
347
351
  'force-publish': Flags.boolean({
348
352
  description: '[default: false] Force publish extension(s) to Exchange, delete previously published extension points',
@@ -115,7 +115,7 @@ class InitCommand extends TemplatesCommand {
115
115
 
116
116
  // 3. run base code generators
117
117
  const projectName = (consoleConfig && consoleConfig.project.name) || path.basename(process.cwd())
118
- await this.runCodeGenerators(this.getInitialGenerators(flags), flags.yes, projectName)
118
+ await this.runCodeGenerators(this.getInitialGenerators(flags), flags.yes, projectName, flags.linter)
119
119
 
120
120
  // 4. install templates
121
121
  await this.installTemplates({
@@ -163,7 +163,7 @@ class InitCommand extends TemplatesCommand {
163
163
 
164
164
  // 7. run base code generators
165
165
  if (!flags.repo) {
166
- await this.runCodeGenerators(this.getInitialGenerators(flags), flags.yes, consoleConfig.project.name)
166
+ await this.runCodeGenerators(this.getInitialGenerators(flags), flags.yes, consoleConfig.project.name, flags.linter)
167
167
  }
168
168
 
169
169
  // 8. import config
@@ -337,7 +337,7 @@ class InitCommand extends TemplatesCommand {
337
337
  return workspace
338
338
  }
339
339
 
340
- async runCodeGenerators (generatorNames, skipPrompt, projectName) {
340
+ async runCodeGenerators (generatorNames, skipPrompt, projectName, linter) {
341
341
  const env = yeoman.createEnv()
342
342
  env.options = { skipInstall: true }
343
343
 
@@ -347,7 +347,8 @@ class InitCommand extends TemplatesCommand {
347
347
  options: {
348
348
  'skip-prompt': skipPrompt,
349
349
  'project-name': projectName,
350
- force: true
350
+ force: true,
351
+ linter
351
352
  }
352
353
  })
353
354
  await env.runGenerator(appGen)
@@ -484,6 +485,11 @@ InitCommand.flags = {
484
485
  'github-pat': Flags.string({
485
486
  description: 'github personal access token to use for downloading private quickstart repos',
486
487
  dependsOn: ['repo']
488
+ }),
489
+ linter: Flags.string({
490
+ description: 'Specify the linter to use for the project',
491
+ options: ['none', 'basic', 'adobe-recommended'],
492
+ default: 'basic'
487
493
  })
488
494
  }
489
495
 
@@ -21,7 +21,6 @@ const { validateJsonWithSchema } = require('../../lib/install-helper')
21
21
  const jsYaml = require('js-yaml')
22
22
  const { USER_CONFIG_FILE, DEPLOY_CONFIG_FILE } = require('../../lib/defaults')
23
23
  const ora = require('ora')
24
- const chalk = require('chalk')
25
24
 
26
25
  // eslint-disable-next-line node/no-missing-require
27
26
  const libConfig = require('@adobe/aio-cli-lib-app-config')
@@ -30,8 +29,6 @@ class InstallCommand extends BaseCommand {
30
29
  async run () {
31
30
  const { args, flags } = await this.parse(InstallCommand)
32
31
 
33
- this.preRelease()
34
-
35
32
  aioLogger.debug(`flags: ${JSON.stringify(flags, null, 2)}`)
36
33
  aioLogger.debug(`args: ${JSON.stringify(args, null, 2)}`)
37
34
 
@@ -155,10 +152,8 @@ class InstallCommand extends BaseCommand {
155
152
  }
156
153
  }
157
154
 
158
- InstallCommand.hidden = true // hide from help for pre-release
159
-
160
- InstallCommand.description = chalk.yellow(`(Pre-release) This command will support installing apps packaged by '<%= config.bin %> app pack'.
161
- `)
155
+ InstallCommand.description = `This command will support installing apps packaged by '<%= config.bin %> app pack'.
156
+ `
162
157
 
163
158
  InstallCommand.flags = {
164
159
  ...BaseCommand.flags,
@@ -20,7 +20,6 @@ const execa = require('execa')
20
20
  const { loadConfigFile, writeFile } = require('../../lib/import-helper')
21
21
  const { getObjectValue } = require('../../lib/app-helper')
22
22
  const ora = require('ora')
23
- const chalk = require('chalk')
24
23
  const junk = require('junk')
25
24
 
26
25
  // eslint-disable-next-line node/no-missing-require
@@ -37,8 +36,6 @@ class Pack extends BaseCommand {
37
36
  async run () {
38
37
  const { args, flags } = await this.parse(Pack)
39
38
 
40
- this.preRelease()
41
-
42
39
  aioLogger.debug(`flags: ${JSON.stringify(flags, null, 2)}`)
43
40
  aioLogger.debug(`args: ${JSON.stringify(args, null, 2)}`)
44
41
 
@@ -169,15 +166,18 @@ class Pack extends BaseCommand {
169
166
  if (command) {
170
167
  try {
171
168
  this.spinner.start('Getting api-mesh config...')
172
- const { stdout } = await execa('aio', ['api-mesh', 'get'], { cwd: process.cwd() })
173
- // until we get the --json flag, we parse the output
174
- const idx = stdout.indexOf('{')
175
- meshConfig = JSON.parse(stdout.substring(idx)).meshConfig
169
+ const { stdout, stderr } = await execa('aio', ['api-mesh', 'get', '--json'], { cwd: process.cwd() })
170
+
171
+ if (stderr) {
172
+ throw new Error(stderr)
173
+ }
174
+
175
+ meshConfig = JSON.parse(stdout).meshConfig
176
176
  aioLogger.debug(`api-mesh:get - ${JSON.stringify(meshConfig, null, 2)}`)
177
177
  this.spinner.succeed('Got api-mesh config')
178
178
  } catch (err) {
179
179
  // Ignore error if no mesh found, otherwise throw
180
- if (err?.stderr.includes('Error: Unable to get mesh config. No mesh found for Org')) {
180
+ if (err?.message.includes('Error: Unable to get mesh config. No mesh found for Org')) {
181
181
  aioLogger.debug('No api-mesh config found')
182
182
  } else {
183
183
  console.error(err)
@@ -356,10 +356,8 @@ class Pack extends BaseCommand {
356
356
  }
357
357
  }
358
358
 
359
- Pack.hidden = true // hide from help for pre-release
360
-
361
- Pack.description = chalk.yellow(`(Pre-release) This command will support packaging apps for redistribution.
362
- `)
359
+ Pack.description = `This command will support packaging apps for redistribution.
360
+ `
363
361
 
364
362
  Pack.flags = {
365
363
  ...BaseCommand.flags,