@aws/nx-plugin-mcp 1.0.0-rc.93 → 1.0.0-rc.94

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/bin/aws-nx-mcp.js CHANGED
@@ -22000,7 +22000,6 @@ const NX_VERSION = {
22000
22000
  "class-variance-authority": "0.7.1",
22001
22001
  clsx: "2.1.1",
22002
22002
  commander: "15.0.0",
22003
- "cpy-cli": "7.0.0",
22004
22003
  electrodb: "3.9.3",
22005
22004
  esbuild: "0.28.2",
22006
22005
  "event-source-polyfill": "1.0.31",
@@ -22016,10 +22015,8 @@ const NX_VERSION = {
22016
22015
  husky: "9.1.7",
22017
22016
  "fs-extra": "11.4.0",
22018
22017
  "@types/fs-extra": "11.0.4",
22019
- "make-dir-cli": "4.0.0",
22020
22018
  mariadb: "3.5.3",
22021
22019
  mise: "2026.8.14",
22022
- ncp: "2.0.0",
22023
22020
  npm: "12.0.2",
22024
22021
  "npm-check-updates": "23.1.0",
22025
22022
  "oidc-client-ts": "3.5.0",
@@ -22028,9 +22025,9 @@ const NX_VERSION = {
22028
22025
  "react-oidc-context": "3.3.1",
22029
22026
  react: "19.2.8",
22030
22027
  "react-dom": "19.2.8",
22031
- rimraf: "6.1.3",
22032
22028
  rolldown: "1.2.6",
22033
22029
  "rolldown-plugin-dts": "0.28.3",
22030
+ shx: "0.4.0",
22034
22031
  "simple-git": "3.36.0",
22035
22032
  "source-map-support": "0.5.21",
22036
22033
  "starlight-blog": "0.29.0",
@@ -117,7 +117,9 @@ If this is the first CDK deployment in your AWS account/region, bootstrap it fir
117
117
 
118
118
  The `deploy-sandbox` target deploys the sandbox stage defined in `packages/infra/src/main.ts`.
119
119
 
120
- Your first deployment will take around 6 minutes to complete as it waits for all resources to fully stabilize. Subsequent deployments are faster. To speed up iteration during development you can opt into [CloudFormation express mode](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cloudformation-express-mode.html) by passing the `--express` flag, which completes each resource operation as soon as its configuration is applied rather than waiting for full stabilization.
120
+ The `deploy-sandbox` target uses [CloudFormation express mode](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cloudformation-express-mode.html), which completes each resource operation as soon as its configuration is applied rather than waiting for full stabilization. Your first deployment will take around 4 minutes to complete, and some resources (such as the CloudFront distribution) may continue provisioning in the background for a short while afterwards. Subsequent deployments are faster.
121
+
122
+ Because express mode returns before resources have fully stabilized, `deploy-sandbox` is for development only. Use the `deploy-ci` target for CI/CD and production deployments, which always waits for full stabilization.
121
123
 
122
124
  Once the deployment completes, you will see outputs similar to the following:
123
125
 
@@ -127,7 +129,9 @@ dungeon-adventure-infra-sandbox-Application: deploying... [2/2]
127
129
 
128
130
  ✅ dungeon-adventure-infra-sandbox-Application
129
131
 
130
- ✨ Deployment time: 354s
132
+ ✨ Deployment time: 220s
133
+
134
+ ⚠️ Stack deployed using Express Mode. Resources still stabilizing: GameUICloudfrontDistribution, UserIdentityWebAcl, ...and more...
131
135
 
132
136
  Outputs:
133
137
  dungeon-adventure-infra-sandbox-Application.GameApiEndpointXXX = https://xxx.execute-api.region.amazonaws.com/prod/
@@ -5,6 +5,7 @@ description: Build and deploy Docker images for TypeScript and Python projects i
5
5
 
6
6
  import { FileTree, Tabs, TabItem, Code } from '@astrojs/starlight/components';
7
7
  import NxCommands from '@components/nx-commands.astro';
8
+ import InstallCommand from '@components/install-command.astro';
8
9
  import PackageManagerShortCommand from '@components/package-manager-short-command.astro';
9
10
  import Link from '@components/link.astro';
10
11
  import Infrastructure from '@components/infrastructure.astro';
@@ -18,9 +19,9 @@ export const trivyTarget = `{
18
19
  "executor": "nx:run-commands",
19
20
  "options": {
20
21
  "commands": [
21
- "rimraf dist/packages/my-project/trivy",
22
- "make-dir dist/packages/my-project/trivy",
23
- "ncp packages/my-project/.trivyignore dist/packages/my-project/trivy/.trivyignore",
22
+ "shx rm -rf dist/packages/my-project/trivy",
23
+ "shx mkdir -p dist/packages/my-project/trivy",
24
+ "shx cp packages/my-project/.trivyignore dist/packages/my-project/trivy/.trivyignore",
24
25
  "docker save -o dist/packages/my-project/trivy/image.tar my-scope-my-project:latest",
25
26
  "docker run --rm -v \\"./dist/packages/my-project/trivy\\":/scan public.ecr.aws/aquasecurity/trivy:${CONTAINER_VERSIONS.trivy} image --input /scan/image.tar --ignorefile /scan/.trivyignore --scanners vuln --severity HIGH,CRITICAL --ignore-unfixed --exit-code 1 --no-progress -q"
26
27
  ],
@@ -170,7 +171,7 @@ Add a `docker` target which:
170
171
  "executor": "nx:run-commands",
171
172
  "options": {
172
173
  "commands": [
173
- "ncp packages/my-project/src/Dockerfile dist/packages/my-project/bundle/Dockerfile",
174
+ "shx cp packages/my-project/src/Dockerfile dist/packages/my-project/bundle/Dockerfile",
174
175
  "docker build --platform linux/arm64 -t my-scope-my-project:latest dist/packages/my-project/bundle"
175
176
  ],
176
177
  "parallel": false
@@ -186,7 +187,9 @@ Set `"cache": false` on image build targets. A built image is not written to an
186
187
  :::
187
188
 
188
189
  :::tip[Cross-platform file copy]
189
- The `ncp` package provides a cross-platform file/directory copy command, avoiding `cp` (unavailable on Windows). Install it at the root of your workspace with `pnpm add -D -w ncp`.
190
+ The `shx` package provides cross-platform `cp`, `rm` and `mkdir` commands, avoiding the shell builtins (unavailable on Windows). Install it at the root of your workspace:
191
+
192
+ <InstallCommand pkg="shx" dev />
190
193
  :::
191
194
 
192
195
  Running this target produces a local image tagged `my-scope-my-project:latest`, built from the minimal context at `dist/packages/my-project/bundle/`:
@@ -263,10 +266,10 @@ Add a `docker` target which copies the `Dockerfile` into the bundle output direc
263
266
  "executor": "nx:run-commands",
264
267
  "options": {
265
268
  "commands": [
266
- "rimraf dist/packages/my-project/docker",
267
- "make-dir dist/packages/my-project/docker",
268
- "ncp dist/packages/my-project/bundle-arm dist/packages/my-project/docker",
269
- "ncp packages/my-project/src/Dockerfile dist/packages/my-project/docker/Dockerfile",
269
+ "shx rm -rf dist/packages/my-project/docker",
270
+ "shx mkdir -p dist/packages/my-project/docker",
271
+ "shx cp -R dist/packages/my-project/bundle-arm/. dist/packages/my-project/docker",
272
+ "shx cp packages/my-project/src/Dockerfile dist/packages/my-project/docker/Dockerfile",
270
273
  "docker build --platform linux/arm64 -t my-scope-my-project:latest dist/packages/my-project/docker"
271
274
  ],
272
275
  "parallel": false
@@ -379,11 +379,11 @@ For more details, please refer to the [CDK bootstrapping documentation](https://
379
379
 
380
380
  Your project has three deploy targets, each suited to a different situation:
381
381
 
382
- | Target | Use it for |
383
- | ---------------- | -------------------------------------------------------------------------------- |
384
- | `deploy-sandbox` | Deploying your own sandbox stage during development. No stage argument needed. |
385
- | `deploy` | Deploying any stage, by naming the stage or stacks you want. |
386
- | `deploy-ci` | Deploying from a CI/CD pipeline, using a pre-synthesized cloud assembly. |
382
+ | Target | Use it for |
383
+ | ---------------- | ------------------------------------------------------------------------------------------------------ |
384
+ | `deploy-sandbox` | Deploying your own sandbox stage during development. No stage argument needed. Uses express mode. |
385
+ | `deploy` | Deploying any stage, by naming the stage or stacks you want. |
386
+ | `deploy-ci` | Deploying from a CI/CD pipeline, using a pre-synthesized cloud assembly. Waits for full stabilization. |
387
387
 
388
388
  `deploy-sandbox` and `deploy` depend on `^assemble`, so they build the artifacts they are about to deploy and nothing else. `deploy-ci` deploys an assembly your pipeline already built, so it has no build dependencies at all.
389
389
 
@@ -402,11 +402,11 @@ The `deploy-sandbox` target deploys the sandbox stage that `main.ts` declares, s
402
402
  This is the quickest way to get your own copy of the application running in AWS while you develop.
403
403
 
404
404
  :::tip[Express Mode for Faster Deployments]
405
- The deploy targets wait for full resource stabilization by default, favouring consistency over speed. To speed up iteration during development, opt into [CloudFormation express mode](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cloudformation-express-mode.html) by passing CDK's `--express` flag:
405
+ The `deploy-sandbox` target uses [CloudFormation express mode](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cloudformation-express-mode.html) by default (via CDK's `--express` flag). Express mode finishes once resource configuration is confirmed applied rather than waiting for full stabilization, with propagation continuing in the background, for significantly faster iteration cycles.
406
406
 
407
- <NxCommands commands={['deploy-sandbox <my-infra> --express']} />
407
+ Since it returns before resources have finished stabilizing, express mode suits the sandbox stage you iterate on, not CI/CD or production deployments — use [`deploy-ci`](#deploying-to-aws-in-a-cicd-pipeline) for those. To wait for full resource stabilization here too, pass `--no-express`:
408
408
 
409
- Express mode finishes once resource configuration is confirmed applied rather than waiting for full stabilization, with propagation continuing in the background, for significantly faster iteration cycles. It is intended for development and iteration.
409
+ <NxCommands commands={['deploy-sandbox <my-infra> --no-express']} />
410
410
  :::
411
411
 
412
412
  ### Deploying a Specific Stage
@@ -419,13 +419,15 @@ You can specify any stage so long as it is defined in `main.ts`. To deploy an in
419
419
 
420
420
  <NxCommands commands={['deploy <my-infra> <my-infra>-sandbox/Application']} />
421
421
 
422
+ Since this target can name any stage, including your production one, it waits for full resource stabilization when you generate with `stageConfig`. Pass `--express` to opt into express mode for a stage you are iterating on.
423
+
422
424
  ## Deploying to AWS in a CI/CD Pipeline
423
425
 
424
426
  Use the `deploy-ci` target if you are deploying to AWS as part of a CI/CD pipeline.
425
427
 
426
428
  <NxCommands commands={['deploy-ci <my-infra> my-stage/*']} />
427
429
 
428
- This target differs slightly from the regular `deploy` target in that it deploys a pre-synthesized cloud assembly rather than synthesizing on the fly. This avoids potential non-determinism from package version changes, ensuring that every pipeline stage deploys using the same cloud assembly.
430
+ This target differs from the `deploy` and `deploy-sandbox` targets in two ways. First, it deploys a pre-synthesized cloud assembly rather than synthesizing on the fly, avoiding potential non-determinism from package version changes and ensuring that every pipeline stage deploys using the same cloud assembly. Second, it never uses express mode, so it always waits for every resource to fully stabilize before reporting success.
429
431
 
430
432
  ## Tearing Down AWS Infrastructure
431
433
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws/nx-plugin-mcp",
3
- "version": "1.0.0-rc.93",
3
+ "version": "1.0.0-rc.94",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/awslabs/nx-plugin-for-aws.git",