

Este é o Guia do desenvolvedor do AWS CDK v2. O CDK v1 antigo 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 flags`
<a name="ref-cli-cmd-flags"></a>

Visualize e modifique suas configurações de sinalizadores de atributos para a CLI do CDK.

Os sinalizadores de atributos controlam o comportamento da CLI do CDK e é possível usá-los para habilitar ou desabilitar recursos específicos. Use o comando `cdk flags` para visualizar suas configurações atuais de sinalizadores de atributos e modificá-las conforme necessário.

**Atenção**  
O comando `cdk flags` está em desenvolvimento para o AWS CDK. Os atributos atuais desse comando são considerados prontos para produção e seguros de usar. Contudo, o escopo desse comando e seus atributos estão sujeitos a alterações. Sendo assim, é necessário se cadastrar fornecendo a opção `unstable=flags` de usar esse comando.

## Uso
<a name="ref-cli-cmd-flags-usage"></a>

```
$ cdk flags <arguments> <options>
```

## Argumentos
<a name="ref-cli-cmd-flags-args"></a><a name="ref-cli-cmd-flags-args-flagname"></a>

 **FLAGNAME**   
O nome do sinalizador de atributo específico que você deseja visualizar ou modificar.  
 *Tipo:* string  
 *Obrigatório*: não

## Opções
<a name="ref-cli-cmd-flags-options"></a>

Para obter uma lista das opções globais que funcionam com todos os comandos da CLI do CDK, consulte [Opções globais](ref-cli-cmd.md#ref-cli-cmd-options).<a name="ref-cli-cmd-flags-options-set"></a>

 `--set <BOOLEAN>`   
Modifica uma configuração de sinalizador de atributo.<a name="ref-cli-cmd-flags-options-all"></a>

 `--all <BOOLEAN>`   
Modifica ou visualiza todos os sinalizadores de atributos.<a name="ref-cli-cmd-flags-options-recommended"></a>

 `--recommended <BOOLEAN>`   
Altera os sinalizadores para os estados recomendados.<a name="ref-cli-cmd-flags-options-default"></a>

 `--default <BOOLEAN>`   
Altera os sinalizadores para os estados padrão.<a name="ref-cli-cmd-flags-options-unconfigured"></a>

 `--unconfigured <BOOLEAN>`   
Modifica sinalizadores de atributos não configurados.<a name="ref-cli-cmd-flags-options-value"></a>

 `--value <STRING>`   
O valor para definir a configuração do sinalizador de atributo.  
 *requiresArg*: verdadeiro<a name="ref-cli-cmd-flags-options-safe"></a>

 `--safe <BOOLEAN>`   
Habilita todos os sinalizadores de atributos que não afetam a sua aplicação.<a name="ref-cli-cmd-flags-options-interactive"></a>

 `--interactive, -i <BOOLEAN>`   
Opção interativa para o comando flags.

## Exemplos
<a name="ref-cli-cmd-flags-examples"></a>

### Visualizar configurações de sinalizadores de atributos
<a name="ref-cli-cmd-flags-examples-1"></a>

Execute `cdk flags` para exibir um relatório das configurações do seu sinalizador de atributos que diferem dos nossos estados recomendados. Os sinalizadores não configurados são rotulados com `<unset>` para indicar que o sinalizador atualmente não tem valor. As sinalizadores são exibidos na ordem a seguir:
+ Sinalizadores definidos com um valor que não corresponde ao nosso valor recomendado
+ Sinalizadores que você não configurou

```
$ cdk flags --unstable=flags
Feature Flag                           Recommended                       User
* @aws-cdk/...                              true                         false
* @aws-cdk/...                              true                         false
* @aws-cdk/...                              true                         <unset>
```

Você também pode executar `cdk flags --all` para exibir um relatório de todos os sinalizadores de atributos na ordem a seguir:
+ Sinalizadores definidos com um valor que corresponde ao nosso valor recomendado
+ Sinalizadores definidos com um valor que não corresponde ao nosso valor recomendado
+ Sinalizadores que você não configurou

```
$ cdk flags --unstable=flags --all
Feature Flag                              Recommended                     User
@aws-cdk/...                                true                         true
* @aws-cdk/...                              true                         false
* @aws-cdk/...                              true                         false
* @aws-cdk/...                              true                         <unset>
```

### Modificação de valores de sinalizadores de atributos
<a name="ref-cli-cmd-flags-examples-2"></a>

Para modificar seus sinalizadores de atributos de forma interativa, execute `cdk flags --interactive` (ou `cdk flags -i`) para ver uma lista de opções de menu.

Para alterar cada sinalizador de atributo para nosso valor recomendado, execute `cdk flags --set --recommended --all`. Esse comando mantém a configuração do sinalizador de atributo atualizada com as configurações mais recentes do sinalizador de atributos do CDK. Esteja ciente de que a execução desse comando pode potencialmente substituir os valores configurados existentes.

```
$ cdk flags --unstable=flags --set --recommended --all
Feature Flag                              Recommended Value            User Value
* @aws-cdk/...                              true                         false
* @aws-cdk/...                              true                         false
* @aws-cdk/...                              true                         <unset>
  Synthesizing...
    Resources
    [~] AWS::S3::Bucket MyBucket
    └─ [~] Properties
        └─ [~] Encryption
                ...
    Number of stacks with differences: 2
  Do you want to accept these changes? (y/n) y
  Resynthesizing...
```

Se você quiser preservar o estado dos seus sinalizadores configurados existentes, execute `cdk flags --set --recommended --unconfigured`. Essa opção altera somente os sinalizadores de atributos não configurados para nossos valores recomendados.

```
$ cdk flags --unstable=flags --set --recommended --unconfigured
Feature Flag                              Recommended Value            User Value
* @aws-cdk/...                              true                         <unset>
* @aws-cdk/...                              true                         <unset>
  Synthesizing...
    Resources
    [~] AWS::S3::Bucket MyBucket
    └─ [~] Properties
        └─ [~] Encryption
            ├─ [-] None
            └─ [+] ServerSideEncryptionConfiguration:
                    - ...
            ...
    Number of stacks with differences: 2
  Do you want to accept these changes? (y/n) y
  Resynthesizing...
```

Se você quiser garantir que quaisquer sinalizadores de atributos não configurados não interfiram na sua aplicação, execute o comando `cdk flags --set --default --unconfigured` para alterar os sinalizadores não configurados para seus valores padrão. Por exemplo, se `@aws-cdk/aws-cloudfront:defaultSecurityPolicyTLSv1.2_2021` não estiver configurado, uma notificação será exibida após a execução de `cdk synth`. No entanto, se você definir o sinalizador para seu estado padrão (falso), ele será configurado, desativado e não afetará sua aplicação.

```
$ cdk flags --unstable=flags --set --default --unconfigured
Feature Flag                              Recommended Value            User Value
* @aws-cdk/...                              true                         <unset>
* @aws-cdk/...                              true                         <unset>
  Synthesizing...

  Do you want to accept these changes? (y/n) y
  Resynthesizing...
```

### Inspeção de sinalizadores de atributos específicos
<a name="ref-cli-cmd-flags-examples-3"></a>

#### Visualização de mais informações sobre um sinalizador
<a name="_view_more_information_about_a_flag"></a>

Além de executar `cdk flags` e `cdk flags --all` para exibir sua configuração de sinalizadores de atributos, você também pode usar `cdk flags "FLAGNAME"` para inspecionar um sinalizador de atributo específico e descobrir o que o sinalizador faz. Isso pode ser útil nos casos em que você deseja entender um sinalizador específico e seu impacto na sua aplicação.

```
$ cdk flags --unstable=flags "@aws-cdk/aws-cloudfront:defaultSecurityPolicyTLSv1.2_2021"
    Description: Enable this feature flag to have cloudfront distributions use the security policy TLSv1.2_2021 by default.
    Recommended Value: true
    User Value: true
```

#### Filtragem de sinalizadores por substring
<a name="_filter_flags_by_substring"></a>

Você também pode executar `cdk flags substring` para exibir todos os sinalizadores de atributos correspondentes. Se houver apenas um sinalizador de atributo que corresponda a essa substring, detalhes específicos serão exibidos.

```
$ cdk flags --unstable=flags ebs
@aws-cdk/aws-ec2:ebsDefaultGp3Volume
    Description: When enabled, the default volume type of the EBS volume will be GP3
    Recommended Value: true
    User Value: true
```

Se vários sinalizadores corresponderem à substring, todos os sinalizadores correspondentes serão exibidos em uma tabela. Se você inserir várias substrings, todos os sinalizadores correspondentes que contenham qualquer uma das substrings serão retornados.

```
$ cdk flags --unstable=flags s3 lambda
Feature Flag                              Recommended                     User
* @aws-cdk/s3...                            true                         false
* @aws-cdk/lambda...                        true                         false
* @aws-cdk/lambda...                        true                         <unset>
```

#### Modificação de um sinalizador específico
<a name="_modify_a_specific_flag"></a>

Se você precisar modificar o valor de um sinalizador e quiser ter certeza de que está configurando-o para um estado correto e com suporte, execute `cdk flags --set "FLAGNAME" --value="state"`.

```
$ cdk flags --unstable=flags --set "@aws-cdk/aws-cloudfront:defaultSecurityPolicyTLSv1.2_2021" --value="true"
  Synthesizing...
    Resources
    [~] AWS::CloudFront::Distribution MyDistribution
    └─ [~] Properties
        └─ [~] DefaultSecurityPolicy
            ├─ [-] TLSv1.0
            └─ [+] TLSv1.2_2021
                    - ...
    Number of stacks with differences: 2
  Do you want to accept these changes? (y/n) y
  Resynthesizing...
```