@aws/nx-plugin-mcp 1.0.0-rc.93 → 1.0.0-rc.95
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
|
-
|
|
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:
|
|
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
|
-
"
|
|
22
|
-
"
|
|
23
|
-
"
|
|
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
|
-
"
|
|
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 `
|
|
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
|
-
"
|
|
267
|
-
"
|
|
268
|
-
"
|
|
269
|
-
"
|
|
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
|
|
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
|
-
|
|
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
|
-
|
|
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
|
|
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
|
|