cdk watch - AWS Cloud Development Kit (AWS CDK) v2

Esta es la guía para AWS CDK desarrolladores de la versión 2. La CDK versión anterior entró en mantenimiento el 1 de junio de 2022 y finalizó el soporte el 1 de junio de 2023.

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

cdk watch

Supervise de forma continua un proyecto de AWS CDK local en busca de cambios para realizar implementaciones e intercambios en caliente.

Este comando es similar a cdk deploy, excepto que puede realizar implementaciones continuas e intercambios en caliente mediante un único comando.

Este comando es un atajo para cdk deploy --watch.

Para finalizar una sesión cdk watch, interrumpa el proceso con Ctrl+C.

Los archivos que se observan vienen determinados por la configuración "watch" del archivo cdk.json. Tiene dos subclaves, "include" y "exclude", que aceptan una sola cadena o una matriz de cadenas. Cada entrada se interpreta como una ruta relativa a la ubicación del archivo cdk.json. Se aceptan ambas, * y **.

Si crea un proyecto mediante el comando cdk init, se configura el siguiente comportamiento predeterminado para cdk watch en el archivo cdk.json del proyecto:

  • "include" está configurado en "**/*", que incluye todos los archivos y directorios en la raíz del proyecto.

  • "exclude" es opcional, excepto en el caso de los archivos y carpetas que ya se ignoraron de forma predeterminada. Se compone de archivos y directorios que comienzan por ., el directorio de salida del CDK y el directorio node_modules.

El parámetro mínimo para configurar watch es "watch": {}.

Si el código CDK o el código de la aplicación requieren un paso de compilación antes de la implementación, cdk watch funciona con la clave "build" del archivo cdk.json.

nota

Este comando se considera experimental y puede tener cambios importantes en el futuro.

Las mismas limitaciones de cdk deploy --hotswap aplican a cdk watch. Para obtener más información, consulte cdk deploy --hotswap.

Uso

$ cdk watch <arguments> <options>

Argumentos

ID de pila de CDK

El ID del constructo de la pila de CDK de la aplicación que se va a supervisar.

Tipo: cadena

Obligatorio: no

Opciones

Para obtener una lista de las opciones globales que funcionan con todos los comandos de la CLI de CDK, consulte Opciones globales.

--build-exclude, -E ARRAY

No reconstruya el activo con el ID indicado.

Esta opción se puede especificar varias veces en un mismo comando.

Valor predeterminado: []

--change-set-name STRING

El nombre del cambio de CloudFormation que se va a crear.

--concurrency NUMBER

Implemente e intercambie en caliente múltiples pilas en paralelo y, al mismo tiempo, tenga en cuenta las dependencias entre pilas. Utilice esta opción para acelerar las implementaciones. Aún debe tener en cuenta CloudFormation y otros límites de tarifa de la Cuenta de AWS.

Proporcione un número para especificar el número máximo de implementaciones simultáneas (si la dependencia lo permite) que se deben realizar.

Valor predeterminado: 1

--exclusively, -e BOOLEAN

Implemente solo las pilas solicitadas y no incluya las dependencias.

--force, -f BOOLEAN

Implemente siempre las pilas, incluso si las plantillas son idénticas.

Valor predeterminado: false

--help, -h BOOLEAN

Muestra la información de referencia del comando cdk watch.

--hotswap BOOLEAN

De forma predeterminada, cdk watch utiliza las implementaciones de intercambio en caliente cuando es posible para actualizar los recursos. La CLI del CDK intentará realizar una implementación de intercambio en caliente y no recurrirá a una implementación completa de CloudFormation si no tiene éxito. Se ignoran los cambios detectados que no se puedan actualizar mediante un intercambio en caliente.

Valor predeterminado: true

--hotswap-fallback BOOLEAN

De forma predeterminada, cdk watch intenta realizar implementaciones de intercambio en caliente e ignora los cambios que requieren implementaciones de CloudFormation. Proporcione --hotswap-fallback como alternativa y realice una implementación completa de CloudFormation si la implementación de intercambio en caliente no tiene éxito.

--logs BOOLEAN

De forma predeterminada, cdk watch supervisa todos los grupos de registros de CloudWatch en la aplicación y transmite los eventos de registro de forma local a stdout.

Valor predeterminado: true

--progress STRING

Configure la forma en que la CLI del CDK muestra el progreso de la implementación.

  • bar: muestra los eventos de implementación de la pila como una barra de progreso, con los eventos del recurso que se está implementando actualmente.

  • events: proporciona un historial completo, incluidos todos los eventos de CloudFormation.

También puede configurar esta opción en el archivo cdk.json del proyecto o en ~/.cdk.json en su máquina de desarrollo local:

{ "progress": "events" }

Valores válidos: bar, events

Valor predeterminado: bar

--rollback BOOLEAN

Durante la implementación, si no se puede crear o actualizar un recurso, la implementación volverá al último estado estable antes de que la CLI del CDK vuelva. Todos los cambios realizados hasta ese momento se anularán. Los recursos que se crearon se eliminarán y las actualizaciones que se hayan realizado se revertirán.

Utilice --no-rollback o -R para desactivar este comportamiento. Si no se puede crear o actualizar un recurso, la CLI del CDK dejará en su lugar los cambios realizados hasta ese momento y regresará. Esto puede resultar útil en entornos de desarrollo en los que se realiza una iteración rápida.

nota

Cuando es false, las implementaciones que provocan la sustitución de los recursos fallarán siempre. Solo puede usar este valor para las implementaciones que actualicen o creen nuevos recursos.

Valor predeterminado: true

--toolkit-stack-name STRING

El nombre de la pila del kit de herramientas de CDK existente.

De forma predeterminada, cdk bootstrap implementa una pila denominada CDKToolkit en el entorno de AWS especificado. Utilice esta opción para proporcionar un nombre diferente a la pila de arranque.

La CLI del CDK usa este valor para verificar la versión de la pila de arranque.

Ejemplos

Observe si hay cambios en una pila del CDK con el ID lógico DevelopmentStack

$ cdk watch DevelopmentStack Detected change to 'lambda-code/index.js' (type: change). Triggering 'cdk deploy' DevelopmentStack: deploying... ✅ DevelopmentStack

Configure un archivo cdk.json para saber qué incluir y qué excluir para que no se supervisen los cambios

{ "app": "mvn -e -q compile exec:java", "watch": { "include": "src/main/**", "exclude": "target/*" } }

Cree un proyecto de CDK con Java antes de la implementación mediante la configuración del archivo cdk.json

{ "app": "mvn -e -q exec:java", "build": "mvn package", "watch": { "include": "src/main/**", "exclude": "target/*" } }