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]