mirror of https://github.com/k3s-io/k3s
Merge pull request #52866 from ixdy/bazel-hyperkube-image
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>. Build hyperkube image using Bazel **What this PR does / why we need it**: Before we had the hyperkube base image, it was difficult to build the hyperkube with Bazel. Now that we have the base image with all the necessary dependencies, this has become trivial. This will enable federation jobs etc on prow. **Special notes for your reviewer**: **Release note**: ```release-note NONE ``` /assign @BenTheElder @mikedanese @spxtr cc @luxas @pipejakobpull/6/head
commit
6e2249b784
|
@ -34,9 +34,9 @@ http_archive(
|
|||
|
||||
http_archive(
|
||||
name = "io_bazel_rules_docker",
|
||||
sha256 = "40d780165c0b9fbb3ddca858df7347381af0e87e430c74863e4ce9d6f6441023",
|
||||
strip_prefix = "rules_docker-8359263f35227a3634ea023ff4ae163189eb4b26",
|
||||
urls = ["https://github.com/bazelbuild/rules_docker/archive/8359263f35227a3634ea023ff4ae163189eb4b26.tar.gz"],
|
||||
sha256 = "e86b8764fccc62dddf6e08382ba692b16479a2af478080b1ece4d9add8abbb9a",
|
||||
strip_prefix = "rules_docker-28d492bc1dc1275e2c6ff74e51adc864e59ddc76",
|
||||
urls = ["https://github.com/bazelbuild/rules_docker/archive/28d492bc1dc1275e2c6ff74e51adc864e59ddc76.tar.gz"],
|
||||
)
|
||||
|
||||
load("@io_bazel_rules_go//go:def.bzl", "go_repositories")
|
||||
|
@ -62,6 +62,14 @@ docker_pull(
|
|||
tag = "v8", # ignored, but kept here for documentation
|
||||
)
|
||||
|
||||
docker_pull(
|
||||
name = "debian-hyperkube-base-amd64",
|
||||
digest = "sha256:e45d35f9f967ef7d49496d1d2e6f9ad378a29012b0c90f78b5d59a254f3135e6",
|
||||
registry = "gcr.io",
|
||||
repository = "google-containers/debian-hyperkube-base-amd64",
|
||||
tag = "0.3", # ignored, but kept here for documentation
|
||||
)
|
||||
|
||||
docker_pull(
|
||||
name = "official_busybox",
|
||||
digest = "sha256:be3c11fdba7cfe299214e46edc642e09514dbb9bbefcd0d3836c05a1e0cd0642",
|
||||
|
|
|
@ -18,6 +18,7 @@ filegroup(
|
|||
"//cluster/images/etcd-version-monitor:all-srcs",
|
||||
"//cluster/images/etcd/attachlease:all-srcs",
|
||||
"//cluster/images/etcd/rollback:all-srcs",
|
||||
"//cluster/images/hyperkube:all-srcs",
|
||||
"//cluster/lib:all-srcs",
|
||||
"//cluster/saltbase:all-srcs",
|
||||
],
|
||||
|
|
|
@ -0,0 +1,50 @@
|
|||
load("@io_bazel_rules_docker//docker:docker.bzl", "docker_build", "docker_bundle")
|
||||
|
||||
docker_build(
|
||||
name = "hyperkube-internal",
|
||||
base = "@debian-hyperkube-base-amd64//image",
|
||||
files = [
|
||||
"//cmd/hyperkube",
|
||||
],
|
||||
symlinks = {
|
||||
"/%s" % path: "/hyperkube"
|
||||
for path in [
|
||||
"/apiserver",
|
||||
"/controller-manager",
|
||||
"/federation-apiserver",
|
||||
"/federation-controller-manager",
|
||||
"/kubectl",
|
||||
"/kubelet",
|
||||
"/proxy",
|
||||
"/scheduler",
|
||||
"/usr/local/bin/kube-apiserver",
|
||||
"/usr/local/bin/kube-controller-manager",
|
||||
"/usr/local/bin/federation-apiserver",
|
||||
"/usr/local/bin/federation-controller-manager",
|
||||
"/usr/local/bin/kubectl",
|
||||
"/usr/local/bin/kubelet",
|
||||
"/usr/local/bin/kube-proxy",
|
||||
"/usr/local/bin/kube-scheduler",
|
||||
]
|
||||
},
|
||||
)
|
||||
|
||||
docker_bundle(
|
||||
name = "hyperkube",
|
||||
images = {"gcr.io/google-containers/hyperkube-amd64:{STABLE_DOCKER_TAG}": "hyperkube-internal"},
|
||||
stamp = True,
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "package-srcs",
|
||||
srcs = glob(["**"]),
|
||||
tags = ["automanaged"],
|
||||
visibility = ["//visibility:private"],
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "all-srcs",
|
||||
srcs = [":package-srcs"],
|
||||
tags = ["automanaged"],
|
||||
visibility = ["//visibility:public"],
|
||||
)
|
Loading…
Reference in New Issue