go: add bazel buildfiles, implement leasifier
diff --git a/go/svc/topo/BUILD.bazel b/go/svc/topo/BUILD.bazel
new file mode 100644
index 0000000..5e4abff
--- /dev/null
+++ b/go/svc/topo/BUILD.bazel
@@ -0,0 +1,46 @@
+load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library")
+load("@io_bazel_rules_go//proto:def.bzl", "go_proto_library")
+
+proto_library(
+    name = "proto_proto",
+    srcs = ["config.proto"],
+    visibility = ["//visibility:public"],
+)
+
+go_proto_library(
+    name = "proto_go_proto",
+    importpath = "code.hackerspace.pl/hscloud/go/svc/topo",
+    proto = ":proto_proto",
+    visibility = ["//visibility:public"],
+)
+
+go_library(
+    name = "go_default_library",
+    srcs = [
+        "main.go",
+        "service.go",
+    ],
+    embed = [":proto_go_proto"],
+    importpath = "code.hackerspace.pl/hscloud/go/svc/topo",
+    visibility = ["//visibility:private"],
+    deps = [
+        "//go/mirko:go_default_library",
+        "//go/proto/infra:go_default_library",
+        "//go/statusz:go_default_library",
+        "//go/svc/topo/graph:go_default_library",
+        "//go/svc/topo/proto:go_default_library",
+        "//go/svc/topo/state:go_default_library",
+        "@com_github_digitalocean_go_netbox//netbox:go_default_library",
+        "@com_github_digitalocean_go_netbox//netbox/client:go_default_library",
+        "@com_github_gobuffalo_packr//:go_default_library",
+        "@com_github_golang_glog//:go_default_library",
+        "@com_github_golang_protobuf//proto:go_default_library",
+        "@ml_vbom_util//sortorder:go_default_library",
+    ],
+)
+
+go_binary(
+    name = "topo",
+    embed = [":go_default_library"],
+    visibility = ["//visibility:public"],
+)