hscloud/cluster/prodvider/BUILD.bazel
Serge Bazanski 97b5cd7b58 go: re-do the entire thing
This is a mega-change, but attempting to split this up further is
probably not worth the effort.

Summary:

1. Bump up bazel, rules_go, and others.
2. Switch to new go target naming (bye bye go_default_library)
3. Move go deps to go.mod/go.sum, use make gazelle generate from that
4. Bump up Python deps a bit

And also whatever was required to actually get things to work - loads of
small useless changes.

Tested to work on NixOS and Ubuntu 20.04:

   $ bazel build //...
   $ bazel test //...

Change-Id: I8364bdaa1406b9ae4d0385a6b607f3e7989f98a9
Reviewed-on: https://gerrit.hackerspace.pl/c/hscloud/+/1583
Reviewed-by: q3k <q3k@hackerspace.pl>
2023-09-22 21:50:19 +00:00

67 lines
1.8 KiB
Python

load("@io_bazel_rules_docker//container:container.bzl", "container_image", "container_layer", "container_push")
load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library")
go_library(
name = "prodvider_lib",
srcs = [
"certs.go",
"crdb.go",
"hspki.go",
"kubernetes.go",
"main.go",
"service.go",
],
importpath = "code.hackerspace.pl/hscloud/cluster/prodvider",
visibility = ["//visibility:private"],
deps = [
"//cluster/prodvider/proto",
"@com_github_cloudflare_cfssl//config",
"@com_github_cloudflare_cfssl//csr",
"@com_github_cloudflare_cfssl//helpers",
"@com_github_cloudflare_cfssl//signer",
"@com_github_cloudflare_cfssl//signer/local",
"@com_github_go_ldap_ldap_v3//:ldap",
"@com_github_golang_glog//:glog",
"@io_k8s_api//core/v1:core",
"@io_k8s_api//rbac/v1:rbac",
"@io_k8s_apimachinery//pkg/api/errors",
"@io_k8s_apimachinery//pkg/apis/meta/v1:meta",
"@io_k8s_client_go//kubernetes",
"@io_k8s_client_go//rest",
"@org_golang_google_grpc//:go_default_library",
"@org_golang_google_grpc//codes",
"@org_golang_google_grpc//credentials",
"@org_golang_google_grpc//status",
],
)
go_binary(
name = "prodvider",
embed = [":prodvider_lib"],
visibility = ["//visibility:public"],
)
container_layer(
name = "layer_bin",
directory = "/cluster/prodvider/",
files = [
":prodvider",
],
)
container_image(
name = "runtime",
base = "@prodimage-bionic//image",
layers = [
":layer_bin",
],
)
container_push(
name = "push",
format = "Docker",
image = ":runtime",
registry = "registry.k0.hswaw.net",
repository = "q3k/prodvider",
tag = "1680303245",
)