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

Este é o Guia do Desenvolvedor AWS CDK v2. A versão CDK 1 mais antiga entrou em manutenção em 1º de junho de 2022 e encerrou o suporte em 1º de junho de 2023.

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

cdk watch

Observe continuamente um AWS CDK projeto local em busca de mudanças para realizar implantações e hotswaps.

Esse comando é semelhante aocdk deploy, exceto que ele pode realizar implantações contínuas e hotswaps por meio de um único comando.

Esse comando é um atalho paracdk deploy --watch.

Para finalizar uma cdk watch sessão, interrompa o processo Ctrl+C pressionando.

Os arquivos observados são determinados pela "watch" configuração em seu cdk.json arquivo. Ele tem duas subchaves "include" e "exclude" aceita uma única string ou uma matriz de strings. Cada entrada é interpretada como um caminho relativo à localização do cdk.json arquivo. Ambos * ** são aceitos.

Se você criar um projeto usando o cdk init comando, o seguinte comportamento padrão será configurado cdk watch no cdk.json arquivo do seu projeto:

  • "include"é definido como"**/*", o que inclui todos os arquivos e diretórios na raiz do projeto.

  • "exclude"é opcional, exceto para arquivos e pastas já ignorados por padrão. Isso consiste em arquivos e diretórios começando com., o diretório CDK de saída e o node_modules diretório.

A configuração mínima a ser watch configurada é"watch": {}.

Se o CDK código ou o código do aplicativo exigirem uma etapa de criação antes da implantação, cdk watch trabalhe com a "build" chave no cdk.json arquivo.

nota

Esse comando é considerado experimental e pode ter alterações significativas no futuro.

As mesmas limitações do cdk deploy --hotswap se aplicam cdk watch a. Para obter mais informações, consulte cdk deploy --hotswap.

Uso

$ cdk watch <arguments> <options>

Argumentos

CDKID da pilha

O ID de construção da CDK pilha do seu aplicativo a ser assistido.

Type: string

Obrigatório: não

Opções

Para obter uma lista de opções globais que funcionam com todos CDK CLI comandos, vejaOpções globais.

--build-exclude, -E ARRAY

Não reconstrua o ativo com o ID fornecido.

Essa opção pode ser especificada várias vezes em um único comando.

Valor padrão: []

--change-set-name STRING

O nome do conjunto de CloudFormation alterações a ser criado.

--concurrency NUMBER

Implante e faça o hotswap de várias pilhas em paralelo enquanto contabiliza as dependências entre pilhas. Use essa opção para acelerar as implantações. Você ainda deve considerar qualquer outra limitação Conta da AWS de taxa. CloudFormation

Forneça um número para especificar o número máximo de implantações simultâneas (se a dependência permitir) a serem executadas.

Valor padrão: 1

--exclusively, -e BOOLEAN

Implante somente as pilhas solicitadas e não inclua dependências.

--force, -f BOOLEAN

Sempre implante pilhas, mesmo que os modelos sejam idênticos.

Valor padrão: false

--help, -h BOOLEAN

Mostra as informações de referência do cdk watch comando.

--hotswap BOOLEAN

Por padrão, cdk watch usa implantações de hotswap quando possível para atualizar seus recursos. O CDK CLI tentará realizar uma implantação de hotswap e não retornará a uma CloudFormation implantação completa se não for bem-sucedida. Quaisquer alterações detectadas que não possam ser atualizadas por meio de um hotswap são ignoradas.

Valor padrão: true

--hotswap-fallback BOOLEAN

Por padrão, cdk watch tenta realizar implantações de hotswap e ignora as alterações que exigem implantações. CloudFormation --hotswap-fallbackForneça uma alternativa e execute uma CloudFormation implantação completa se a implantação do hotswap não for bem-sucedida.

--logs BOOLEAN

Por padrão, cdk watch monitora todos os grupos de CloudWatch log em seu aplicativo e transmite os eventos de log localmente para o. stdout

Valor padrão: true

--progress STRING

Configure como o CDK CLI exibe o progresso da implantação.

  • bar— Exiba os eventos de implantação da pilha como uma barra de progresso, com os eventos do recurso que está sendo implantado no momento.

  • events— Forneça um histórico completo, incluindo todos os CloudFormation eventos.

Você também pode configurar essa opção no cdk.json arquivo do projeto ou ~/.cdk.json em sua máquina de desenvolvimento local:

{ "progress": "events" }

Valores válidos: bar, events

Valor padrão: bar

--rollback BOOLEAN

Durante a implantação, se um recurso não for criado ou atualizado, a implantação voltará ao estado estável mais recente antes do CDK CLI devoluções. Todas as alterações feitas até esse ponto serão desfeitas. Os recursos criados serão excluídos e as atualizações feitas serão revertidas.

Use --no-rollback ou -R para desativar esse comportamento. Se um recurso não for criado ou atualizado, o CDK CLI deixará as alterações feitas até aquele momento e retornará. Isso pode ser útil em ambientes de desenvolvimento em que você está iterando rapidamente.

nota

Quandofalse, implantações que causam substituições de recursos sempre falharão. Você só pode usar esse valor para implantações que atualizam ou criam novos recursos.

Valor padrão: true

--toolkit-stack-name STRING

O nome da pilha existente do CDK Toolkit.

Por padrão, cdk bootstrap implanta uma pilha nomeada CDKToolkit no ambiente especificado AWS . Use essa opção para fornecer um nome diferente para sua pilha de bootstrap.

O CDK CLI usa esse valor para verificar a versão da pilha de bootstrap.

Exemplos

Observe as alterações CDK em uma pilha com ID DevelopmentStack lógica

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

Configure um arquivo cdk.json para saber o que incluir e excluir da observação de alterações

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

Crie um CDK projeto usando Java antes da implantação, configurando o arquivo cdk.json

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