Bazel é um ferramenta criada e mantida pela Google que ajuda no processo de build de várias linguagens, sendo uma delas nosso querido Golang.
Duas de suas grandes vantagens são:
- Build de multiplas aplicações em monorepo sem precisar ficar entrando e saindo de pastas.
- Cache remoto das etapas de build (para mais detalhes, leia o post “Como Bazel funciona internamente“).
Embora para maioria das linguagens toda criação e manutenção dos arquivos do Bazel tenha que ser feita manualmente, para o Go temos o gazelle, uma ferramenta que nos auxilia nesse processo.
Se você ainda não tem o Bazel instalado na sua máquina, siga o tutorial do próprio site oficial segundo o OS que você utiliza. Se você já tem, execute um bazel version
para garantir que você está utilizando a última versão (4.2.2).
Como aplicação exemplo, vamos utilizar o mesmo código do post Implementando uma API com gorilla/mux, mas separando as duas funções de “handler” em um novo package chamado handlers.
Leia mais »