<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Filipe Almeida Guimaraes</title>
    <description>The latest articles on Forem by Filipe Almeida Guimaraes (@o_filipealmeida).</description>
    <link>https://forem.com/o_filipealmeida</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1570370%2F05f85641-7194-4353-ba69-24b167cde5d3.png</url>
      <title>Forem: Filipe Almeida Guimaraes</title>
      <link>https://forem.com/o_filipealmeida</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/o_filipealmeida"/>
    <language>en</language>
    <item>
      <title>Configurando perfis do AWS CLI no seu terminal</title>
      <dc:creator>Filipe Almeida Guimaraes</dc:creator>
      <pubDate>Mon, 29 Jul 2024 04:53:40 +0000</pubDate>
      <link>https://forem.com/aws-builders/configurando-perfis-do-aws-cli-no-seu-terminal-bno</link>
      <guid>https://forem.com/aws-builders/configurando-perfis-do-aws-cli-no-seu-terminal-bno</guid>
      <description>&lt;p&gt;Nesse artigo, vamos configurar múltiplos de perfis de CLI em um terminal Linux usando o Ubuntu 22.04 instalado usando o WSL2 no Windows 11.&lt;/p&gt;

&lt;p&gt;Veremos vários comandos para configurar, listar e trocar perfis programáticos do aws-cli e ao final como você pode usar a ferramenta &lt;strong&gt;awsp&lt;/strong&gt; para facilitar ainda mais essa troca de perfis através do seu terminal Linux.&lt;/p&gt;

&lt;p&gt;Este artigo já considera um usuário que tenha o AWS CLI instalado. Para entender como instalar o AWS CLI corretamente em seu terminal, &lt;a href="https://dev.to/aws-builders/como-instalar-e-atualizar-o-seu-aws-cli-corretamente-usando-o-ubuntu-2204-no-wsl2-windows-11-3jom"&gt;veja esse artigo&lt;/a&gt;. &lt;/p&gt;

&lt;h2&gt;
  
  
  Sumário:
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;O que você precisa saber?&lt;/li&gt;
&lt;li&gt;Configurando múltiplos perfis de acesso em seu terminal;&lt;/li&gt;
&lt;li&gt;Configurando um perfil através dos arquivos no diretório oculto .aws/;&lt;/li&gt;
&lt;li&gt;Bônus: Como agilizar a troca de perfis;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  O que você precisa saber?
&lt;/h3&gt;

&lt;p&gt;No momento em que você instala e configura o AWS CLI pela primeira vez, um diretório oculto &lt;strong&gt;.aws/&lt;/strong&gt; é criado no diretório home do usuário em uso. Para verificar esse diretório oculto do aws-cli, execute o comando abaixo:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;ls -la ~/
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fm4litv57ychmqiulsap6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fm4litv57ychmqiulsap6.png" alt="Diretório .aws" width="522" height="104"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Nesse diretório é onde estarão armazenadas as informações das credenciais que serão utilizadas em cada perfil de cli que é configurado no seu terminal. Ao entrar nesse diretório e listar o conteúdo lá existente, você verá que lá existem dois arquivos: O arquivo &lt;strong&gt;config&lt;/strong&gt; e o arquivo &lt;strong&gt;credentials&lt;/strong&gt;:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcuouthllldme4cazt33c.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcuouthllldme4cazt33c.png" alt="Arquivos no diretório .aws/" width="581" height="165"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;No arquivo &lt;strong&gt;config&lt;/strong&gt; ficam armazenadas as informações do nome do perfil, a região padrão daquele perfil e o formato padrão de saída daquele perfil. No arquivo &lt;strong&gt;credentials&lt;/strong&gt; ficam armazenadas a &lt;em&gt;aws_access_key_id&lt;/em&gt; e a &lt;em&gt;aws_secret_access_key&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ps.:&lt;/strong&gt; Caso você não esteja visualizando ainda essas informações, o diretório e os dois arquivos serão criados assim que você configurar um perfil pela primeira vez.&lt;/p&gt;

&lt;p&gt;Esses arquivos podem ser editados e a configuração de perfis pode acontecer diretamente por eles. Veremos abaixo a primeira forma de configurar os perfis de acesso que é através de comandos de CLI.&lt;/p&gt;

&lt;h3&gt;
  
  
  Configurando múltiplos perfis no seu terminal
&lt;/h3&gt;

&lt;p&gt;Usando o comando &lt;code&gt;aws configure --profile nome_do_perfil&lt;/code&gt; você começará o processo de configuração de um perfil. Após executar esse comando você deve entrar com as seguintes informações:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;AWS Access Key ID&lt;/li&gt;
&lt;li&gt;AWS Secret Access Key ID&lt;/li&gt;
&lt;li&gt;Region (Região padrão para aquele perfil)&lt;/li&gt;
&lt;li&gt;Default Output Format (Formato padrão de saída do retorno dos comandos. Podem ser 5 valores: json, yaml, yaml-stream, text e table)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Após entrar com essas informações o seu primeiro perfil estará configurado:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc7o26m685go881e9dymw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc7o26m685go881e9dymw.png" alt="Primeiro perfil do aws-cli configurado" width="731" height="167"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Se você verificar o conteúdo dos arquivos &lt;strong&gt;config&lt;/strong&gt; e &lt;strong&gt;credentials&lt;/strong&gt; no diretório &lt;strong&gt;.aws/&lt;/strong&gt;, você observará que as informações do perfil que você acabou de configurar estão nesses arquivos:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcabcnjt7t5j2xjbvv5uv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcabcnjt7t5j2xjbvv5uv.png" alt="cat config" width="380" height="104"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsh94gal4q8qkjk27dbc5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsh94gal4q8qkjk27dbc5.png" alt="cat credentials" width="652" height="104"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Depois de configurar o perfil, você tenta já executar algum comando de cli para interagir com os seus recursos na AWS. Porém, você ainda se depara com a seguinte mensagem:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fryfnrstc6bwc9gpqdd0e.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fryfnrstc6bwc9gpqdd0e.png" alt="Unable to locate credentials" width="800" height="77"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Isso acontece porque, apesar de já configurado o seu primeiro perfil, você ainda não carregou em seu terminal o perfil que deve ser usado para os seus comandos de cli. Isso é feito através da variável de ambiente AWS_PROFILE. Você precisa popular o valor dessa variável com o valor do nome do perfil que deseja atualizar. No linux, para atribuir um valor a uma variável de ambiente você usa o comando &lt;strong&gt;export&lt;/strong&gt;, da forma mostrada abaixo:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;export AWS_PROFILE=nome_do_perfil
echo $AWS_PROFILE
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F689alwb8v8cm88uyha2j.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F689alwb8v8cm88uyha2j.png" alt="Variáveis do AWS CLI" width="494" height="63"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Depois de inserido o nome do seu perfil nessa variável de ambiente, você terá sucesso na execução dos comandos de cli:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F987ep435b9odao69rlxu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F987ep435b9odao69rlxu.png" alt="Resultado do comando depois de configurado corretamente o perfil" width="381" height="65"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ps.:&lt;/strong&gt; Uma outra opção seria você informar o perfil que deseja usar a cada comando de cli que você executar através do parâmetro &lt;em&gt;&lt;strong&gt;--profile nome_do_perfil&lt;/strong&gt;&lt;/em&gt;, porém fazer isso via variável de ambiente é um caminho mais fácil.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9dw3eop5ixldkipnnbmk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9dw3eop5ixldkipnnbmk.png" alt="Executando o comando com o parâmetro --profile" width="688" height="66"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Configurando um perfil através dos arquivos no diretório oculto .aws/
&lt;/h3&gt;

&lt;p&gt;Você pode configurar um perfil entrando com as informações desse perfil diretamente nos arquivos .aws/config e .aws/credentials. Basta abrir esses arquivo em um editor de texto (nano ou vim, por exemplo) e configurar corretamente cada um dos campos de acordo com o padrão de configuração. Vamos fazer isso para o perfil-02. Os arquivo finais ficam da seguinte forma:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Arquivo config:&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fo3etxlshfxmxjr9je0nf.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fo3etxlshfxmxjr9je0nf.gif" alt="Arquivo config" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Arquivo credentials:&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbnl0mynyobe6qpvvqaoj.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbnl0mynyobe6qpvvqaoj.gif" alt="Arquivo credentials" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Depois de configurado o segundo perfil via edição dos arquivos, você pode selecionar o seu perfil configurado normalmente através da variável de ambiente AWS_PROFILE.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;export AWS_PROFILE=perfil-02
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Se desejar conferir se o valor foi atribuído corretamente, liste o valor da variável de ambiente usando o comando &lt;code&gt;echo&lt;/code&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;echo $AWS_PROFILE
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Depois de definido o seu perfil, você poderá executar os seus comandos de CLI normalmente&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxnn6epmgr3l9gq0hv4ee.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxnn6epmgr3l9gq0hv4ee.png" alt="Saída do comando aws-cli" width="498" height="127"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Como agilizar a troca de perfis
&lt;/h3&gt;

&lt;p&gt;Você percebeu que para todo perfil configurado em seu terminal e que você deseja utilizar para executar um ou uma sequência de comandos você tem duas opções:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Em cada comando a ser executado você informa qual perfil deseja utilizar através do parâmetro --profile, o que não é nada prático;&lt;/li&gt;
&lt;li&gt;Define o valor da variável de ambiente com o nome do perfil que deseja utilizar e depois troca o valor dessa variável de ambiente caso precise trabalhar com outro perfil;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;O que acontece é que existem alguns plugins que facilitam a nossa vida em se tratando de troca de perfis de CLI. O que vale ressaltar é que essas ferramentas não são oficiais da AWS e sim criadas e mantidas pela comunidade de usuários. A ferramenta que vamos utilizar para facilitar a troca de perfis em nosso terminal é a &lt;strong&gt;&lt;em&gt;awsp&lt;/em&gt;&lt;/strong&gt; e o &lt;strong&gt;repo oficial&lt;/strong&gt; pode ser &lt;a href="https://github.com/johnnyopao/awsp" rel="noopener noreferrer"&gt;encontrado aqui&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Com o npm já instalado em seu terminal, basta executar o comando abaixo para instalar essa ferramenta:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npm install -g awsp
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;No seu arquivo .bashrc ou .zshrc (a depender do bash que você utiliza), adicione a seguinte linha ao final do arquivo:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;alias awsp="source _awsp"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Um exemplo desse campo adicionado está abaixo:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5v01trv1bzvk6zqqp7pv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5v01trv1bzvk6zqqp7pv.png" alt="alias do awsp adicionado ao arquivo .bashrc no linux" width="448" height="99"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Após essas configurações, o &lt;strong&gt;awsp&lt;/strong&gt; já deve estar preparado para ser utilizado e pode ser invocado através do comando &lt;code&gt;awsp&lt;/code&gt;. Você verá uma lista dos seus perfis de CLI e poderá selecionar, usando simplesmente as setas do seu teclado, o perfil que você deseja utilizar e digitando &lt;strong&gt;Enter&lt;/strong&gt;:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmebnf15h1d02lh2u1ok7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmebnf15h1d02lh2u1ok7.png" alt="awsp em utilização" width="388" height="138"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Dessa forma, a troca de perfis de torna extremamente facilitada, não sendo necessária mais a manipulação da variável de ambiente AWS_PROFILE toda vez que quiser utilizar um perfil diferente. O awsp faz isso pra você "por baixo dos panos" ;)&lt;/p&gt;

&lt;h3&gt;
  
  
  Formatos padrão de saída do AWS CLI
&lt;/h3&gt;

&lt;p&gt;No AWS CLI V2 nós temos 5 formatos padrão de saída e cada um deles entrega vantagens para definir o formato de saída das informações do terminal após a execução de comandos de CLI. Os formatos são:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;json&lt;/li&gt;
&lt;li&gt;yaml&lt;/li&gt;
&lt;li&gt;yaml-stream&lt;/li&gt;
&lt;li&gt;text&lt;/li&gt;
&lt;li&gt;table&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Vamos observar a saída proveniente de um mesmo comando para dois tipos de saídas diferentes vinculadas a perfis diferentes. O &lt;strong&gt;perfil-01&lt;/strong&gt; tem o formato padrão de saída definido como &lt;strong&gt;json&lt;/strong&gt; e o &lt;strong&gt;perfil-02&lt;/strong&gt; tem o formato padrão de  saída definido como &lt;strong&gt;table&lt;/strong&gt;. Após executar o seguinte comando &lt;code&gt;aws ec2 describe-instances&lt;/code&gt;, vemos as seguintes saídas:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Saída para o perfil-01 com o valor json definido como padrão de saída:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6hc1u72rjs0b5h54mv9v.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6hc1u72rjs0b5h54mv9v.png" alt="Saída em formato json do aws cli" width="800" height="551"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Saída para o perfil-02 com o valor table definido como padrão de saída:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fh5ku5nlm0kxvr7hw34hn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fh5ku5nlm0kxvr7hw34hn.png" alt="Saída em formato table para o aws cli" width="800" height="505"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Você deve utilizar o formato padrão de saída que fique mais conveniente para a situação  em que você estiver inserido. Se for utilizar a saída de um comando como input para uma API ou se deseja armazenar essa informação para uso posterior, pode fazer sentido que essa saída seja em JSON. Se deseja apenas visualizar as informações de saída de um comando, o formato TABLE pode fazer mais sentido para você. Conheça cada um dos formatos de saída para saber o melhor momento de usar cada um deles.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>awscli</category>
      <category>linux</category>
      <category>cloudcomputing</category>
    </item>
    <item>
      <title>Como instalar ou atualizar o seu AWS CLI corretamente usando o Ubuntu 22.04 no WSL2 (Windows 11)</title>
      <dc:creator>Filipe Almeida Guimaraes</dc:creator>
      <pubDate>Tue, 16 Jul 2024 21:42:05 +0000</pubDate>
      <link>https://forem.com/aws-builders/como-instalar-e-atualizar-o-seu-aws-cli-corretamente-usando-o-ubuntu-2204-no-wsl2-windows-11-3jom</link>
      <guid>https://forem.com/aws-builders/como-instalar-e-atualizar-o-seu-aws-cli-corretamente-usando-o-ubuntu-2204-no-wsl2-windows-11-3jom</guid>
      <description>&lt;p&gt;Nessa documentação você terá acesso ao processo de instalação e atualização do AWS CLI sendo feito via terminal em uma distribuição Ubuntu 22.04 executada via WSL 2.0 no Windows 11&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Sumário:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Instalação do AWS CLI;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Atualização do AWS CLI;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Deleção do AWS CLI;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Instalação do AWS CLI
&lt;/h2&gt;

&lt;p&gt;O processo de instalação do AWS CLI é extremamente simples e a &lt;a href="https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html" rel="noopener noreferrer"&gt;documentação oficial&lt;/a&gt; da AWS no entrega os comandos necessários, são eles:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;blockquote&gt;
&lt;p&gt;O comando &lt;strong&gt;curl&lt;/strong&gt; baixa o binário compactado em um zip file;&lt;br&gt;
 O comando &lt;strong&gt;unzip&lt;/strong&gt; extrai esse binário do zip no diretório /aws (Se você não tiver o unzip instalado, basta executar o comando: &lt;strong&gt;sudo apt install unzip -y;&lt;/strong&gt;&lt;br&gt;
 O comando &lt;strong&gt;sudo ./aws/install&lt;/strong&gt; instala o aws-cli no seu terminal;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Para verificar se a instalação aconteceu corretamente, basta executar o comando:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;aws --version
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Você verá a versão do CLI instalado como retorno no seu terminal:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F2174%2F1%2AeW3bH0NFdi6IT7sdE0i9yw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F2174%2F1%2AeW3bH0NFdi6IT7sdE0i9yw.png" alt="Saída do comando mostrando a versão instalado do aws-cli no seu terminal"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Atualização do AWS CLI
&lt;/h2&gt;

&lt;p&gt;Caso o seu aws-cli esteja desatualizado, o processo de atualização também é consideravelmente simples. Abaixo estão os passos:&lt;/p&gt;

&lt;p&gt;Execute o comando abaixo para baixar o binário mais recente do AWS CLI e extraia o arquivo:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Após baixar e extrair o arquivo, você verá o seguinte no seu terminal:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F2000%2F1%2AbZ_i6Lw9n82AbWpj4QbiGw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F2000%2F1%2AbZ_i6Lw9n82AbWpj4QbiGw.png" alt="Execute o comando ls -l para listar o conteudo do seu diretório"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Você poderá deletar o arquivo .zip depois de extraído, se desejar. Para deletar, basta executar o comando:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;rm awscliv2.zip
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Para atualizar finalmente o aws-cli, execute o comando &lt;strong&gt;&lt;em&gt;which aws&lt;/em&gt;&lt;/strong&gt; para verificar o local de instalação do aws-cli e usar essa saída no próximo comando que executaremos. Normalmente o resultado é: &lt;strong&gt;&lt;em&gt;/usr/local/bin&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F2000%2F1%2AOUuRcIdq406jDZ9rduTx8g.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F2000%2F1%2AOUuRcIdq406jDZ9rduTx8g.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Se o seu local for diferente você precisa informá-lo no comando de instalação abaixo no parâmetro &lt;em&gt;**bin-dir. *&lt;/em&gt;&lt;em&gt;O parâmetro **instal-dir&lt;/em&gt;* indica o local de instalação do aws-cli e deve ser deixado dessa forma. O comando final ficaria da seguinte forma:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo ./aws/install --bin-dir /usr/local/bin --install-dir /usr/local/aws-cli --update
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Após a execução do comando, o aws-cli mais recente será instalado no seu terminal. Para conferir, basta executar o comando:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;aws --version
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Executando o comando novamente, você verá que a versão mais recente do AWS CLI foi instalada em seu terminal&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F2000%2F1%2A5jLwfxsTBBIzq_m0n_5_IQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F2000%2F1%2A5jLwfxsTBBIzq_m0n_5_IQ.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Antes: Versão 2.15.40&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F2174%2F1%2AeW3bH0NFdi6IT7sdE0i9yw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F2174%2F1%2AeW3bH0NFdi6IT7sdE0i9yw.png" alt="Saída do comando mostrando a versão instalado do aws-cli no seu terminal antes do update"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Depois: Versão 2.17.13&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F2000%2F1%2A5jLwfxsTBBIzq_m0n_5_IQ.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F2000%2F1%2A5jLwfxsTBBIzq_m0n_5_IQ.png" alt="Saída do comando mostrando a versão instalado do aws-cli no seu terminal depois do update"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Troubleshooting:&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Caso após executar e conferir toda a sequência de comandos, o seu aws-cli não for atualizado, você pode remover explicitamente o aws-cli e depois instalá-lo novamente. Para o processo de deleção do AWS CLI no Ubuntu, siga os passos abaixo:&lt;/p&gt;

&lt;h2&gt;
  
  
  Deleção do AWS CLI do seu terminal
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Localize os symlinks abaixo:&lt;/strong&gt;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;which aws
which aws_completer
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Você terá uma saída como a mostrada abaixo:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F2000%2F1%2AS1ZZDToGVr98dL1aNPQ4Pw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F2000%2F1%2AS1ZZDToGVr98dL1aNPQ4Pw.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Remova os dois symlinks:&lt;/strong&gt;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo rm /usr/local/bin/aws
sudo rm /usr/local/bin/aws_completer
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Encontre o diretório de instalação do aws-cli. Observe que ao executar os comandos abaixo, o diretório de instalação do aws-cli está no mesmo caminho tanto para o &lt;strong&gt;&lt;em&gt;aws&lt;/em&gt;&lt;/strong&gt; quanto para o &lt;strong&gt;&lt;em&gt;aws_completer&lt;/em&gt;&lt;/strong&gt;: &lt;strong&gt;&lt;em&gt;/usr/local/aws-cli/…&lt;/em&gt;&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;ls -l /usr/local/bin/aws
ls -l /usr/local/bin/aws_completer
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;O resultado é:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F2392%2F1%2AEHS--sXkLX3BwaXgeQSSug.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcdn-images-1.medium.com%2Fmax%2F2392%2F1%2AEHS--sXkLX3BwaXgeQSSug.png"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Removendo o diretório /usr/local/aws-cli/ você já removerá todos os arquivo e diretórios subsequentes:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo rm -rf /usr/local/aws-cli
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Opcional:&lt;/strong&gt; Delete os arquivos de configuração do aws-cli. Os arquivos nesse diretório armazenam as configurações de credenciais usadas no seu terminal&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo rm -rf ~/.aws/
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Execute o comando abaixo para verificar se o aws-cli foi removido com sucesso:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;aws --version
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Se a saída for que o &lt;strong&gt;comando não é reconhecido&lt;/strong&gt;, o aws-cli foi desinstalado corretamente. Agora é só seguir os passos de instalação para instalá-lo novamente!&lt;/p&gt;

&lt;p&gt;Para manusear corretamente a(s) sua(s) conta(s) na AWS, você precisará agora configurar corretamente as suas credenciais programáticas e a melhor forma de fazer isso é através dos perfis de CLI. Para entender mais sobre esse assunto, veja esse meu artigo:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Links uteis:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Verificar versões do AWS CLI V2: &lt;a href="https://raw.githubusercontent.com/aws/aws-cli/v2/CHANGELOG.rst" rel="noopener noreferrer"&gt;https://raw.githubusercontent.com/aws/aws-cli/v2/CHANGELOG.rst&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Documentação oficial de install/update do AWS CLI V2: &lt;a href="https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html" rel="noopener noreferrer"&gt;https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Documentação oficial de deleção do AWS CLI V2: &lt;a href="https://docs.aws.amazon.com/cli/latest/userguide/uninstall.html" rel="noopener noreferrer"&gt;https://docs.aws.amazon.com/cli/latest/userguide/uninstall.html&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
    </item>
  </channel>
</rss>
