I work with a Go monorepo and set up Bazel for a couple of services that used CGo. It took a while but was painless to set up.