From 94439ad8d828fe4463e743d51f086f7087d3aa62 Mon Sep 17 00:00:00 2001 From: Jeff Grafton Date: Thu, 21 Sep 2017 14:30:16 -0700 Subject: [PATCH 1/2] bazel: bump rules_go --- build/root/WORKSPACE | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/build/root/WORKSPACE b/build/root/WORKSPACE index 6b5fa03c64c..74d205f8d4f 100644 --- a/build/root/WORKSPACE +++ b/build/root/WORKSPACE @@ -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") From 01252967f1a5da755d81b8ce108f64ac01068b09 Mon Sep 17 00:00:00 2001 From: Jeff Grafton Date: Thu, 21 Sep 2017 14:25:58 -0700 Subject: [PATCH 2/2] Build hyperkube image with Bazel --- build/root/WORKSPACE | 8 ++++++ cluster/BUILD | 1 + cluster/images/hyperkube/BUILD | 50 ++++++++++++++++++++++++++++++++++ 3 files changed, 59 insertions(+) create mode 100644 cluster/images/hyperkube/BUILD diff --git a/build/root/WORKSPACE b/build/root/WORKSPACE index 74d205f8d4f..2db8d38a8a8 100644 --- a/build/root/WORKSPACE +++ b/build/root/WORKSPACE @@ -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", diff --git a/cluster/BUILD b/cluster/BUILD index a5b4fbd0025..aaad5d31a02 100644 --- a/cluster/BUILD +++ b/cluster/BUILD @@ -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", ], diff --git a/cluster/images/hyperkube/BUILD b/cluster/images/hyperkube/BUILD new file mode 100644 index 00000000000..20a1873c20e --- /dev/null +++ b/cluster/images/hyperkube/BUILD @@ -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"], +)