

Esta es la guía para desarrolladores de AWS CDK v2. La primera versión del CDK pasó a la etapa de mantenimiento el 1.° de junio de 2022 y no cuenta con soporte desde 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 migrate`
<a name="ref-cli-cdk-migrate"></a>

Migre los recursos de AWS implementados, las pilas de AWS CloudFormation y las plantillas de CloudFormation a un nuevo proyecto de AWS CDK.

Este comando crea una nueva aplicación del CDK. En ella, se incluye una única pila que recibe el nombre del valor que usted proporciona con `--stack-name`. Puede configurar el origen de la migración con `--from-scan`, `--from-stack` o `--from-path`.

Para obtener más información sobre el uso de `cdk migrate`, consulte [Migrar los recursos existentes y las plantillas de AWS CloudFormation al AWS CDK](migrate.md).

**nota**  
El comando `cdk migrate` es experimental y es posible que se someta a cambios importantes en el futuro.

## Uso
<a name="ref-cli-cdk-migrate-usage"></a>

```
$ cdk migrate <options>
```

## Opciones
<a name="ref-cli-cdk-migrate-options"></a>

Para obtener una lista de las opciones globales que funcionan con todos los comandos de la CLI de CDK, consulte [Opciones globales](ref-cli-cmd.md#ref-cli-cmd-options).

### Opciones obligatorias
<a name="ref-cli-cdk-migrate-options-required"></a><a name="ref-cli-cdk-migrate-options-stack-name"></a>

 `--stack-name <STRING>`   
El nombre de la pila de AWS CloudFormation que se creará en la aplicación de CDK después de la migración.  
 *Obligatorio*: sí

### Opciones condicionales
<a name="ref-cli-cdk-migrate-options-conditional"></a><a name="ref-cli-cdk-migrate-options-from-path"></a>

 `--from-path <PATH>`   
La ruta a la plantilla de AWS CloudFormation que se desea migrar. Proporcione esta opción para especificar una plantilla local.  
 *Obligatorio*: condicional. Es obligatorio si se realiza la migración desde una plantilla de AWS CloudFormation local.<a name="ref-cli-cdk-migrate-options-from-scan"></a>

 `--from-scan <STRING>`   
Al migrar los recursos implementados desde un entorno de AWS, utilice esta opción para especificar si se debe iniciar un nuevo análisis o si la CLI de AWS CDK debe utilizar el último análisis realizado correctamente.  
 *Obligatorio*: condicional. Es obligatorio cuando se realiza la migración desde recursos de AWS implementados.  
 *Valores aceptados*: `most-recent`, `new` <a name="ref-cli-cdk-migrate-options-from-stack"></a>

 `--from-stack <BOOLEAN>`   
Proporcione esta opción para migrar a partir de una pila de AWS CloudFormation implementada. Use `--stack-name` para especificar el nombre de la pila de AWS CloudFormation implementada.  
 *Obligatorio*: condicional. Es obligatorio si se realiza la migración desde una pila de AWS CloudFormation implementada.

### Opciones no obligatorias
<a name="ref-cli-cdk-migrate-options-optional"></a><a name="ref-cli-cdk-migrate-options-account"></a>

 `--account <STRING>`   
La cuenta de la que se recuperará la plantilla de la pila de AWS CloudFormation.  
 *Obligatorio*: no  
 *Predeterminado*: la CLI de AWS CDK obtiene la información de la cuenta de las fuentes predeterminadas.<a name="ref-cli-cdk-migrate-options-compress"></a>

 `--compress <BOOLEAN>`   
Se brinda esta opción para comprimir el proyecto de CDK generado en un archivo `ZIP`.  
 *Obligatorio*: no<a name="ref-cli-cdk-migrate-options-filter"></a>

 `--filter <ARRAY>`   
Se utiliza al migrar los recursos implementados desde una cuenta de AWS y región de AWS. Esta opción especifica un filtro para determinar qué recursos implementados se van a migrar.  
Esta opción acepta una matriz de pares clave-valor, donde la **clave** representa el tipo de filtro y el **valor** representa el contenido que se va a filtrar.  
Se aceptan las siguientes claves:  
+  `resource-identifier`: el identificador del recurso. El valor puede ser el ID lógico o físico del recurso. Por ejemplo, `resource-identifier="ClusterName"`.
+  `resource-type-prefix`: el prefijo del tipo de recurso de AWS CloudFormation. Por ejemplo, especifique `resource-type-prefix="AWS::DynamoDB::"` para filtrar todos los recursos de Amazon DynamoDB.
+  `tag-key`: la clave de una etiqueta de recurso. Por ejemplo, `tag-key="myTagKey"`.
+  `tag-value`: el valor de una etiqueta de recurso. Por ejemplo, `tag-value="myTagValue"`.
Proporcione varios pares clave-valor para la lógica condicional `AND`. El siguiente ejemplo filtra cualquier recurso de DynamoDB que esté etiquetado con `myTagKey` como la clave de la etiqueta: `--filter resource-type-prefix="AWS::DynamoDB::", tag-key="myTagKey"`.  
Proporcione la opción `--filter` varias veces con un solo comando para la lógica condicional `OR`. El siguiente ejemplo filtra cualquier recurso de DynamoDB o que esté etiquetado con `myTagKey` como la clave de la etiqueta: `--filter resource-type-prefix="AWS::DynamoDB::" --filter tag-key="myTagKey"`.  
 *Obligatorio*: no<a name="ref-cli-cdk-migrate-options-help"></a>

 `--help, -h <BOOLEAN>`   
Muestra la información de referencia del comando `cdk migrate`.<a name="ref-cli-cdk-migrate-options-language"></a>

 `--language <STRING>`   
El lenguaje de programación que se utilizará en el proyecto de CDK creado durante la migración.  
 *Obligatorio*: no  
 *Valores válidos*: `typescript`, `python`, `java`, `csharp`, `go`.  
 *Valor predeterminado*: `typescript` <a name="ref-cli-cdk-migrate-options-output-path"></a>

 `--output-path <PATH>`   
La ruta de salida del proyecto de CDK migrado.  
 *Obligatorio*: no  
 *Predeterminado*: la CLI de AWS CDK utilizará su directorio de trabajo actual de forma predeterminada.<a name="ref-cli-cdk-migrate-options-region"></a>

 `--region <STRING>`   
La región de AWS de la que se recuperará la plantilla de la pila de AWS CloudFormation.  
 *Obligatorio*: no  
 *Predeterminado*: la CLI de AWS CDK obtiene la información de la región de AWS de las fuentes predeterminadas.

## Ejemplos
<a name="ref-cli-cdk-migrate-examples"></a>

### Ejemplo sencillo de migración desde una pila de CloudFormation
<a name="ref-cli-cdk-migrate-examples-1"></a>

Migre desde una pila de CloudFormation implementada en un entorno de AWS específico con `--from-stack`. Indique `--stack-name` para asignar un nombre a su nueva pila del CDK. El siguiente código es un ejemplo que migra `myCloudFormationStack` a una nueva aplicación de CDK que está utilizando TypeScript:

```
$ cdk migrate --language typescript --from-stack --stack-name 'myCloudFormationStack'
```

### Ejemplo sencillo de migración desde una plantilla local de CloudFormation
<a name="ref-cli-cdk-migrate-examples-2"></a>

Migre desde una plantilla JSON o YAML de CloudFormation local con `--from-path`. Indique `--stack-name` para asignar un nombre a su nueva pila de CDK. El siguiente código es un ejemplo en el que se crea una nueva aplicación de CDK en TypeScript que incluye una pila `myCloudFormationStack` de un archivo `template.json` local:

```
$ cdk migrate --stack-name "myCloudFormationStack" --language typescript --from-path "./template.json"
```

### Ejemplo sencillo de migración desde recursos de AWS implementados
<a name="ref-cli-cdk-migrate-examples-3"></a>

Migre, desde un entorno de AWS específico, los recursos de AWS implementados que no estén asociados a una pila de CloudFormation con `--from-scan`. La CLI de CDK utiliza el servicio IaC generator para buscar recursos y generar una plantilla. Luego, la CLI de CDK hace referencia a la plantilla para crear la nueva aplicación de CDK. A continuación, se muestra un ejemplo en el que se crea una nueva aplicación de CDK en `myCloudFormationStack` TypeScript con una pila nueva que contiene los recursos de AWS migrados:

```
$ cdk migrate --language typescript --from-scan --stack-name "myCloudFormationStack"
```