Esta documentação é somente para a versão 1 da AWS CLI. Para obter a documentação relacionada à AWS CLI versão 2, consulte o Guia do usuário da versão 2.
Esqueletos da AWS CLI e arquivos de entrada na AWS CLI
A maioria dos comandos da AWS CLI aceita as entradas de parâmetro importadas de um arquivo. Esses modelos podem ser gerados usando a opção generate-cli-skeleton
e, depois, ser importados usando os parâmetros --cli-input-json
.
Tópicos
Sobre esqueletos e arquivos de entrada da AWS CLI
A maioria dos comandos da AWS Command Line Interface (AWS CLI) permite aceitar as entradas de parâmetro usando os parâmetros --cli-input-json
.
Esses mesmos comandos usam o parâmetro --generate-cli-skeleton
para gerar um arquivo JSON com todos os parâmetros que você pode editar e preencher. Depois, é possível executar o comando com o parâmetro --cli-input-json
e apontar para o arquivo preenchido.
Importante
Comandos personalizados da AWS CLI, como os comandos aws s3
não são compatíveis com os parâmetros --generate-cli-skeleton
ou --cli-input-json
descritos neste tópico. Para verificar se um comando específico é compatível com esses parâmetros, execute o comando help para o comando que você deseja usar ou consulte o Guia de referência da AWS CLI versão 1 ou o .
O --generate-cli-skeleton
gera e exibe um modelo de parâmetro que pode ser personalizado e usado como entrada em um comando. O modelo gerado inclui todos os parâmetros compatíveis com o comando.
O parâmetro --generate-cli-skeleton
aceita um dos seguintes valores:
-
input
: o modelo gerado inclui todos os parâmetros de entrada formatados como JSON. Este é o valor padrão. -
output
: o modelo gerado inclui todos os parâmetros de saída formatados como JSON.
Como a AWS CLI é essencialmente um “wrapper” em torno da API de serviço, o arquivo de esqueleto espera que você faça referência a todos os parâmetros pelo nome do parâmetro da API subjacente. Isso provavelmente é diferente do nome do parâmetro da AWS CLI. Por exemplo, um parâmetro da AWS CLI chamado user-name
pode ser mapeado para o parâmetro da API do serviço da AWS chamado UserName
(observe a capitalização alterada e o traço ausente). Recomendamos usar a opção --generate-cli-skeleton
para gerar o modelo com os nomes de parâmetro “corretos” a fim de evitar erros. Consulte o Guia de referência da API do serviço para ver os nomes de parâmetro esperados. É possível excluir quaisquer parâmetros do modelo que não sejam necessários e para os quais você não deseja fornecer um valor.
Por exemplo, se você executar o seguinte comando, ele gerará o modelo de parâmetro para o comando run-instances do Amazon Elastic Compute Cloud (Amazon EC2).
Gerar e importar um esqueleto de comando
Para gerar e usar um arquivo de esqueleto de parâmetro
-
Execute o comando com o parâmetro
--generate-cli-skeleton
para produzir JSON e direcionar a saída a um arquivo para salvá-lo. -
Abra o arquivo de esqueleto do parâmetro em seu editor de texto e remova os parâmetros que não são mais necessários. Por exemplo, você pode reduzir o modelo ao indicado a seguir. Confirme se o arquivo ainda é JSON válido depois de remover os elementos que não são necessários.
Neste exemplo, deixamos o parâmetro
DryRun
definido comotrue
para usar o recurso de simulação do Amazon EC2. Esse recurso permite que você teste com segurança o comando sem realmente criar ou modificar nenhum recursos. -
Preencha os valores restantes com valores apropriados para seu cenário. Neste exemplo, fornecemos o tipo de instância, o nome da chave, o grupo de segurança e o identificador da imagem de máquina da Amazon (AMI) que devem ser usados. Este exemplo assume a Região da AWS padrão. A AMI
ami-dfc39aef
é uma imagem de 64 bits do hospedada na regiãous-west-2
. Se você usar uma região diferente, será necessário encontrar o ID da AMI correta para usar. -
Execute o comando com os parâmetros concluídos passando o arquivo do modelo concluído o parâmetro
--cli-input-json
usando o prefixofile://
. A AWS CLI interpreta o caminho como sendo relativo ao diretório de trabalho atual. No exemplo a seguir, a AWS CLI procura o arquivo no diretório de trabalho atual.O erro de simulação indica que JSON está formado corretamente e os valores de parâmetro são válidos. Se outros problemas forem relatados na saída, corrija-os e repita a etapa anterior até que a mensagem “
Request would have succeeded
“ seja exibida. -
Agora você pode definir o parâmetro
DryRun
comofalse
para desativar a simulação. -
Execute o comando, e
run-instances
realmente iniciará uma instância do Amazon EC2 e exibirá os detalhes gerados pelo início bem-sucedido. O formato da saída é controlado pelo parâmetro--output
, separadamente do formato do modelo de parâmetro de entrada.
Combinar arquivos de entrada e parâmetros da linha de comandos
Um arquivo de entrada pode ser usado para todos os parâmetros ou pode ser combinado com os parâmetros especificados na AWS CLI. É possível usar esse recurso para configurações que você reutiliza com frequência em um arquivo de entrada, mantendo suas configurações individuais no próprio comando.
Os exemplos de aws ec2 run-instances
a seguir combinam o uso de um arquivo de entrada e parâmetros. Fornecemos o tipo de instância, o nome da chave, o grupo de segurança e o identificador da imagem de máquina da Amazon (AMI) que devem ser usados e assumimos a Região da AWS padrão. A AMI ami-dfc39aef
é uma imagem de 64 bits do hospedada na região us-west-2
. Se você usar uma região diferente, será necessário encontrar o ID da AMI correta para usar
O exemplo a seguir usa o arquivo de entrada em conjunto com o parâmetro --dry-run
para executar uma simulação do comando e confirmar se você tem as permissões necessárias e se preencheu o arquivo com valores válidos.
O exemplo a seguir usa o mesmo arquivo de entrada, mas com o parâmetro --no-dry-run
para executar o comando na íntegra.