Contexto & Requisitos
Automatizar o empacotamento e distribuição de binários multiplataforma (Linux, macOS, Windows) do envguard utilizando GoReleaser, incluindo publicação em gerenciadores de pacotes populares (Homebrew, Scoop, WinGet, AUR) e distribuição via pacote npm / npx para facilitar o uso em projetos JavaScript/TypeScript sem necessidade de instalação prévia do runtime Go.
Tarefas
GoReleaser & Compilação Multiplataforma
Gerenciadores de Pacotes Nativos
Pacote npm (npm / npx)
CI/CD & Documentação
Contexto & Requisitos
Automatizar o empacotamento e distribuição de binários multiplataforma (Linux, macOS, Windows) do
envguardutilizando GoReleaser, incluindo publicação em gerenciadores de pacotes populares (Homebrew, Scoop, WinGet, AUR) e distribuição via pacote npm / npx para facilitar o uso em projetos JavaScript/TypeScript sem necessidade de instalação prévia do runtime Go.Tarefas
GoReleaser & Compilação Multiplataforma
.goreleaser.yamldefinindo matriz de compilação:darwin/amd64,darwin/arm64(macOS Intel & Apple Silicon)linux/amd64,linux/arm64(Linux x86_64 & ARM64)windows/amd64,windows/arm64(Windows x86_64 & ARM64).tar.gz,.zip).-ldflags(Version,Commit,Date) nointernal/cli/version.go.Gerenciadores de Pacotes Nativos
joaooncode/homebrew-tap).joaooncode/scoop-bucket).joaooncode/winget-pkgs).envguard-bin).Pacote npm (
npm/npx)package.json,bin/envguard.js) para permitir execução direta vianpx envguarde instalação local vianpm install -D envguard.npm publish) comNPM_TOKENno workflow de release.CI/CD & Documentação
.github/workflows/release.yml) acionado na publicação de tags semânticas (v*).README.md.