Building a Go Microservice and Container Image with Bazel


Session Information

Meetup Link

Abstract

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.

Slides

Recording

From 32:37

Reviews