Building a Go Microservice and Container Image with Bazel

Session Information

Meetup Link


Bazel is a build system. Bored yet?

Bazel is a build system where you declare your builds in terms of binaries and tests; the library knows all the compiler flags. It produces byte-for-byte identical outputs in a hermetic sandbox, and pins the version of everything including the compiler. It can use remote build farms and caches, and decide that 100k source files don’t need to be rebuilt in 200ms. This isn’t your grandad’s Maven

Bazel is great for DevOps engineers. We SREs should be software engineers, and we should be good ones. Bazel is a useful and interesting software engineering tool that everyone should be at least familiar with.

We’ll run over its design and features, then build a simple Go project up from scratch.



From 32:37