<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Armando - Blog</title><link>https://armandosolheiro.com.br/</link><description>Recent content on Armando - Blog</description><generator>Hugo</generator><language>en</language><lastBuildDate>Wed, 04 Jun 2025 00:00:00 +0000</lastBuildDate><atom:link href="https://armandosolheiro.com.br/index.xml" rel="self" type="application/rss+xml"/><item><title>Atualizando clusters EKS</title><link>https://armandosolheiro.com.br/posts/eks-update/</link><pubDate>Wed, 04 Jun 2025 00:00:00 +0000</pubDate><guid>https://armandosolheiro.com.br/posts/eks-update/</guid><description>&lt;h1 id="atualizando-clusters-eks"&gt;
 Atualizando clusters EKS
 &lt;a class="heading-link" href="#atualizando-clusters-eks"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h1&gt;
&lt;h2 id="pré-atualização"&gt;
 Pré-atualização
 &lt;a class="heading-link" href="#pr%c3%a9-atualiza%c3%a7%c3%a3o"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Instale o utilitário &lt;a href="https://eksctl.io/" class="external-link" target="_blank" rel="noopener"&gt;&lt;code&gt;eksctl&lt;/code&gt;&lt;/a&gt; utilizado na atualização dos clusters;&lt;/li&gt;
&lt;li&gt;Obtenha a credencial de acesso para um usuário no IAM da AWS, a credencial possui uma &lt;code&gt;Access Key&lt;/code&gt; e uma &lt;code&gt;Secret Key&lt;/code&gt;;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#e6edf3;background-color:#0d1117;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;export &lt;span style="color:#79c0ff"&gt;AWS_ACCESS_KEY_ID&lt;/span&gt;&lt;span style="color:#ff7b72;font-weight:bold"&gt;=&lt;/span&gt;&amp;lt;access_key&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;export &lt;span style="color:#79c0ff"&gt;AWS_SECRET_ACCESS_KEY&lt;/span&gt;&lt;span style="color:#ff7b72;font-weight:bold"&gt;=&lt;/span&gt;&amp;lt;secret_access_key&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;export &lt;span style="color:#79c0ff"&gt;AWS_DEFAULT_REGION&lt;/span&gt;&lt;span style="color:#ff7b72;font-weight:bold"&gt;=&lt;/span&gt;&amp;lt;default_region&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;Instale o &lt;a href="https://github.com/FairwindsOps/pluto" class="external-link" target="_blank" rel="noopener"&gt;&lt;code&gt;Pluto CLI&lt;/code&gt;&lt;/a&gt; para analisar a API do Kubernetes;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#e6edf3;background-color:#0d1117;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#8b949e;font-style:italic"&gt;## Obtém um relatório completo do cluster, incluindo helm charts&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;pluto detect-all-in-cluster -o wide 2&amp;gt;/dev/null &amp;gt; pluto-output.txt
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#8b949e;font-style:italic"&gt;## Obtém um relatório apenas sobre os helm charts instalados&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;pluto detect-helm -o wide 2&amp;gt;/dev/null &amp;gt; pluto-output.txt
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;Obs.: Após a obtenção do relatório, é interessante realizar uma nova verificação nos recursos listados para confirmar que o &lt;code&gt;kind&lt;/code&gt; utilizado no YAML é o mesmo que está presente na coluna &lt;code&gt;REPLACEMENT&lt;/code&gt; do relatório. Caso não esteja, será necessária intervenção direta, atualizando o yaml em si ou o helm chart.&lt;/p&gt;</description></item><item><title>Contato</title><link>https://armandosolheiro.com.br/contact/</link><pubDate>Sat, 29 Mar 2025 00:00:00 +0000</pubDate><guid>https://armandosolheiro.com.br/contact/</guid><description>&lt;h3 id="-links--fuso-horário"&gt;
 🌎 Links &amp;amp; Fuso Horário
 &lt;a class="heading-link" href="#-links--fuso-hor%c3%a1rio"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;⏰ Fuso Horário:&lt;/strong&gt; Belém, Pará, Brasil (GMT-3)&lt;/p&gt;
&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;🌐 Plataforma&lt;/th&gt;
					&lt;th&gt;🔗 Link&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;📧 &lt;strong&gt;Email&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;&lt;a href="mailto:avgsolheiro@gmail.com" &gt;avgsolheiro@gmail.com&lt;/a&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;👨‍💻 &lt;strong&gt;LinkedIn&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;&lt;a href="https://www.linkedin.com/in/armandosolheiro" class="external-link" target="_blank" rel="noopener"&gt;armandosolheiro&lt;/a&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;🐙 &lt;strong&gt;GitHub&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;&lt;a href="https://github.com/asolheiro" class="external-link" target="_blank" rel="noopener"&gt;asolheiro&lt;/a&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;✍️ &lt;strong&gt;Dev.to&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;&lt;a href="https://dev.to/asolheiro" class="external-link" target="_blank" rel="noopener"&gt;asolheiro&lt;/a&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;🐘 &lt;strong&gt;Mastodon&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;&lt;a href="https://mastodon.social/@asolheiro" class="external-link" target="_blank" rel="noopener"&gt;@asolheiro&lt;/a&gt;&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;</description></item><item><title>Distribuições linux e binários Go</title><link>https://armandosolheiro.com.br/posts/linux-and-go-binaries/</link><pubDate>Sat, 29 Mar 2025 00:00:00 +0000</pubDate><guid>https://armandosolheiro.com.br/posts/linux-and-go-binaries/</guid><description>&lt;p&gt;Na minha humilde opinião, um dos motivos que fazem programar em Go ser tão bom é a possibilidade de gerar um binário para execução com a facilidade de um &lt;code&gt;go build .&lt;/code&gt; no terminal.&lt;/p&gt;
&lt;p&gt;Essa pequena prática traz diversas vantagens para nós desenvolvedores:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;os binários podem ser usados como forma de documentar as versões do código-fonte;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;facilitamos o deploy da aplicação;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;otimizamos o desempenho ao compilar para determinada arquitetura;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;binários são mais difíceis de ler e alterar, logo aumentamos a segurança ao utilizá-los;&lt;/p&gt;</description></item><item><title>Git Releases</title><link>https://armandosolheiro.com.br/posts/git-releases/</link><pubDate>Sat, 29 Mar 2025 00:00:00 +0000</pubDate><guid>https://armandosolheiro.com.br/posts/git-releases/</guid><description>&lt;h2 id="1-introdução"&gt;
 1. Introdução
 &lt;a class="heading-link" href="#1-introdu%c3%a7%c3%a3o"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Recentemente tive a oportunidade de escrever uma CLI em Go para automatizar a produção de relatórios com dados retirados do &lt;strong&gt;Gita&lt;/strong&gt;, uma plataforma de monitoramento e gerenciamento de clusters desenvolvida pela empresa na qual trabalho.&lt;/p&gt;
&lt;p&gt;A CLI atende muito bem seu objetivo, mas, por se tratar de uma empresa com foco em Infraestrutura achamos mais adequado fornecer o binário já construído, ao invés de delegar que o usuário clone o repositório e construa o artefato final.&lt;/p&gt;</description></item><item><title>Projetos</title><link>https://armandosolheiro.com.br/projetos/</link><pubDate>Sat, 29 Mar 2025 00:00:00 +0000</pubDate><guid>https://armandosolheiro.com.br/projetos/</guid><description>&lt;h1 id="projetos-pessoais"&gt;
 Projetos pessoais
 &lt;a class="heading-link" href="#projetos-pessoais"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h1&gt;
&lt;h2 id="-apps"&gt;
 🖥️ Apps
 &lt;a class="heading-link" href="#-apps"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://affine.armandosolheiro.com.br" class="external-link" target="_blank" rel="noopener"&gt;AFFiNE&lt;/a&gt;: Workspace self-hosted estilo Notion — documentos em blocos, whiteboard e banco de dados, com armazenamento de objetos na Magalu Cloud.&lt;/li&gt;
&lt;li&gt;&lt;a href="https://securo.armandosolheiro.com.br" class="external-link" target="_blank" rel="noopener"&gt;Securo&lt;/a&gt;: Gerenciador financeiro pessoal, open-source e self-hosted, com foco em privacidade.&lt;/li&gt;
&lt;li&gt;&lt;a href="https://e-ile.armandosolheiro.com.br" class="external-link" target="_blank" rel="noopener"&gt;e-ile&lt;/a&gt;: App multiplataforma offline-first para gestão da vida comunitária de um terreiro de candomblé.&lt;/li&gt;
&lt;li&gt;&lt;a href="https://tec-sheets.armandosolheiro.com.br" class="external-link" target="_blank" rel="noopener"&gt;tec-sheets&lt;/a&gt;: Fork pessoal da Iris PDV (plataforma de ponto de venda), rodando para testes e validação.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="-documentação"&gt;
 📚 Documentação
 &lt;a class="heading-link" href="#-documenta%c3%a7%c3%a3o"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/GitaCloudTeam/gita-doc" class="external-link" target="_blank" rel="noopener"&gt;GitaDocs&lt;/a&gt;: documentação do Gita feita com Docusaurus&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="-devops"&gt;
 ⚙️ DevOps
 &lt;a class="heading-link" href="#-devops"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/asolheiro/desafio-jackexperts" class="external-link" target="_blank" rel="noopener"&gt;Desafio JackExperts&lt;/a&gt;: projeto que utilizei para entrar na JackExperts, empacotamento de uma aplicação utilizando Helm, deploy no cluster Kubernetes na MagaluCloud a partir de uma pipeline no GitHub actions.&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/asolheiro/DevOpsManifests-examples" class="external-link" target="_blank" rel="noopener"&gt;DevOps Manifests&lt;/a&gt;: Fruto dos meus estudos de DevOps, exemplos de manifestos para a comunidade consumir.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="-go"&gt;
 🦫 Go
 &lt;a class="heading-link" href="#-go"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/asolheiro/ghc" class="external-link" target="_blank" rel="noopener"&gt;GHC&lt;/a&gt;: Ferramenta de linha de comando para gerar relatórios que eu precisava realizar manualmente todos os dias no Gita. O repositório conta com pipeline para distribuição de releases, possui versões para GitHub e GitLab.&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/asolheiro/gtw-cc" class="external-link" target="_blank" rel="noopener"&gt;GTW-CC&lt;/a&gt;: Desafio para consumo e integração das APIs da Binance e Huobi.&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/asolheiro/kiosk-api" class="external-link" target="_blank" rel="noopener"&gt;Kiosk API&lt;/a&gt;: versão em Go de uma API utilizada para realizar o credenciamento em eventos. É integrada com um front em Flutter e uma impressora Zebra.&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/asolheiro/pls-go" class="external-link" target="_blank" rel="noopener"&gt;PLS-GO&lt;/a&gt;: CLI que uso diariamente para gerenciar tarefas no meu terminal. Versão em Go para o projeto &lt;a href="https://github.com/guedesfelipe/pls-cli" class="external-link" target="_blank" rel="noopener"&gt;pls-cli&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="-java"&gt;
 ☕️ Java
 &lt;a class="heading-link" href="#-java"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/asolheiro/rest-with-springboot" class="external-link" target="_blank" rel="noopener"&gt;rest-with-springboot&lt;/a&gt;: API RESTful com ambiente completo. Foi desenvolvida como forma de aprendizado e aprofundamento em Java.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="-python"&gt;
 🐍 Python
 &lt;a class="heading-link" href="#-python"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/asolheiro/APIcultura" class="external-link" target="_blank" rel="noopener"&gt;APICultura&lt;/a&gt;: API em Python com FastAPI, meu modelo utilizado para estudos, onde testo conceitos e novas tecnologias.&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/asolheiro/giropops-senhas-fapi" class="external-link" target="_blank" rel="noopener"&gt;Giropops Senhas - FastAPI&lt;/a&gt;: Minha versão do &lt;a href="https://github.com/badtux/giropops-senhas" class="external-link" target="_blank" rel="noopener"&gt;GiropopsSenhas&lt;/a&gt; em FastAPI.&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/asolheiro/juris-python" class="external-link" target="_blank" rel="noopener"&gt;JurisAPI&lt;/a&gt;: Versão em python de um sistema que coleta inserções do usuário e produz licitações usando jinja2.&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Sobre</title><link>https://armandosolheiro.com.br/sobre/</link><pubDate>Sat, 29 Mar 2025 00:00:00 +0000</pubDate><guid>https://armandosolheiro.com.br/sobre/</guid><description>&lt;h2 id="visão-geral"&gt;
 Visão geral
 &lt;a class="heading-link" href="#vis%c3%a3o-geral"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Sou um profissional com foco em Desenvolvimento de BackEnd de Softwares e Sustentação de Operações. Apaixonado pelo código livre, pelo novo e pelo meu jeito de fazer as coisas.&lt;/p&gt;
&lt;p&gt;Com uma sólida experiência em Go e Python para o desenvolvimento e Docker, Kubernetes e Helm para empregar DevOps, estou sempre em busca de desafios e novas tecnologias que me permitam crescer, me tornar um profissional mais completo e contribuir para o sucesso das equipes e empresas com as quais colaboro.&lt;/p&gt;</description></item></channel></rss>