mirror of https://github.com/kubernetes/kops.git
95 lines
3.0 KiB
Python
95 lines
3.0 KiB
Python
load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library")
|
|
|
|
go_library(
|
|
name = "go_default_library",
|
|
srcs = ["main.go"],
|
|
importpath = "k8s.io/kops/cmd/kops-controller",
|
|
visibility = ["//visibility:private"],
|
|
deps = [
|
|
"//cmd/kops-controller/controllers:go_default_library",
|
|
"//cmd/kops-controller/pkg/config:go_default_library",
|
|
"//cmd/kops-controller/pkg/server:go_default_library",
|
|
"//pkg/nodeidentity:go_default_library",
|
|
"//pkg/nodeidentity/aws:go_default_library",
|
|
"//pkg/nodeidentity/azure:go_default_library",
|
|
"//pkg/nodeidentity/do:go_default_library",
|
|
"//pkg/nodeidentity/gce:go_default_library",
|
|
"//pkg/nodeidentity/openstack:go_default_library",
|
|
"//upup/pkg/fi:go_default_library",
|
|
"//upup/pkg/fi/cloudup/awsup:go_default_library",
|
|
"//vendor/k8s.io/api/core/v1:go_default_library",
|
|
"//vendor/k8s.io/apimachinery/pkg/runtime:go_default_library",
|
|
"//vendor/k8s.io/client-go/plugin/pkg/client/auth/gcp:go_default_library",
|
|
"//vendor/k8s.io/klog/v2:go_default_library",
|
|
"//vendor/k8s.io/klog/v2/klogr:go_default_library",
|
|
"//vendor/sigs.k8s.io/controller-runtime:go_default_library",
|
|
"//vendor/sigs.k8s.io/controller-runtime/pkg/manager:go_default_library",
|
|
"//vendor/sigs.k8s.io/yaml:go_default_library",
|
|
],
|
|
)
|
|
|
|
go_binary(
|
|
name = "kops-controller",
|
|
out = select({
|
|
"@io_bazel_rules_go//go/platform:linux_amd64": "linux-amd64/kops-controller",
|
|
"@io_bazel_rules_go//go/platform:linux_arm64": "linux-arm64/kops-controller",
|
|
"@io_bazel_rules_go//go/platform:darwin_amd64": "darwin-amd64/kops-controller",
|
|
}),
|
|
embed = [":go_default_library"],
|
|
visibility = ["//visibility:public"],
|
|
)
|
|
|
|
load(
|
|
"@io_bazel_rules_docker//container:container.bzl",
|
|
"container_bundle",
|
|
"container_image",
|
|
"container_push",
|
|
)
|
|
|
|
ARCH = [
|
|
"amd64",
|
|
"arm64",
|
|
]
|
|
|
|
[container_image(
|
|
name = "image-%s" % arch,
|
|
architecture = arch,
|
|
base = "@distroless_base_%s//image" % arch,
|
|
cmd = ["/kops-controller"],
|
|
files = [
|
|
"//cmd/kops-controller",
|
|
],
|
|
stamp = True,
|
|
user = "10011",
|
|
) for arch in ARCH]
|
|
|
|
[container_push(
|
|
name = "push-image-%s" % arch,
|
|
format = "Docker",
|
|
image = ":image-%s" % arch,
|
|
registry = "{STABLE_DOCKER_REGISTRY}",
|
|
repository = "{STABLE_DOCKER_IMAGE_PREFIX}kops-controller",
|
|
tag = "{STABLE_KOPS_CONTROLLER_TAG}-%s" % arch,
|
|
) for arch in ARCH]
|
|
|
|
[container_bundle(
|
|
name = "image-bundle-%s" % arch,
|
|
images = {
|
|
"{STABLE_DOCKER_IMAGE_PREFIX}kops-controller:{STABLE_KOPS_CONTROLLER_TAG}": "image-%s" % arch,
|
|
},
|
|
) for arch in ARCH]
|
|
|
|
load("//tools:gzip.bzl", "gzip")
|
|
|
|
[gzip(
|
|
name = "image-bundle-%s.tar.gz" % arch,
|
|
src = "image-bundle-%s.tar" % arch,
|
|
) for arch in ARCH]
|
|
|
|
load("//tools:hashes.bzl", "hashes")
|
|
|
|
[hashes(
|
|
name = "image-bundle-%s.tar.gz.hashes" % arch,
|
|
src = "image-bundle-%s.tar.gz" % arch,
|
|
) for arch in ARCH]
|