Fala devs, beleza?
Me chamo Luan e atualmente passo por um problema bem chato na minha rotina de trabalho: como sou dev e acabo tendo que ficar acessando a infraestrutura para fazer manutenção e configurar os ambientes, acabei criando essa mini-lib.
Quem gerencia instâncias no GCP sabe como a CLI oficial (gcloud compute ssh...) é burocrática no dia a dia. Ficar lembrando o nome exato da máquina, passando --zone, alternando entre projeto de staging/prod ou catando IP no Cloud Console toda vez que precisa subir um túnel consome um tempo chato.
Para acabar com esse atrito, criei o gcvm (google-cloud-vm-essentials-cli): uma ferramenta de terminal focada em produtividade que transforma o acesso a instâncias GCP em um fluxo interativo.
👉 Repositório: github.com/Luan1Schons/google-cloud-vm-essentials-cli
O que a ferramenta resolve na prática
Com o gcvm, em vez de digitar comandos longos ou buscar instâncias no navegador, basta rodar:
gcvm
✨ Principais recursos:
- Seleção interativa com
fzf: Você filtra as instâncias digitando partes do nome, da zona ou do status e conecta na hora. - Identificação visual de ambiente: Badges automáticos (
[PROD],[STAGING],[DEV]) para não correr o risco de rodar comandos no ambiente errado. - Boot automático de VMs paradas: Se a máquina estiver
TERMINATEDouSTOPPED, ogcvmpergunta se você deseja iniciá-la antes de conectar. - Extração rápida de IP: Pega o IP interno ou externo direto na saída padrão (
gcvm --ip nome-da-vm) para usar em scripts descp,rsyncou automações. - Pass-through de argumentos SSH: Encaminha portas e túneis facilmente passando os argumentos após
--(ex:gcvm db -- -L 5432:localhost:5432).
Instalação rápida
Para quem quiser testar no Linux ou macOS:
# 1. Clonar o repositório
git clone https://github.com/Luan1Schons/google-cloud-vm-essentials-cli.git ~/.local/share/gcvm
# 2. Criar link simbólico para o seu PATH
ln -s ~/.local/share/gcvm/gcvm ~/.local/bin/gcvm
# 3. Testar
gcvm --help
O projeto é 100% open source sob licença MIT. Quem puder testar em labs ou na rotina de trabalho com GCP, gostaria de feedbacks e sugestões no repositório!
