123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129 |
- package(default_visibility = ["//visibility:public"])
- load("//build:platforms.bzl", "CLIENT_PLATFORMS", "NODE_PLATFORMS", "for_platforms")
- load("//build:workspace.bzl", "CNI_VERSION", "CRI_TOOLS_VERSION")
- load("@io_k8s_repo_infra//defs:build.bzl", "release_filegroup")
- load("@io_k8s_repo_infra//defs:rpm.bzl", "pkg_rpm_for_goarch")
- release_filegroup(
- name = "rpms",
- conditioned_srcs = for_platforms(
- default = [],
- for_client = [":kubectl.rpm"],
- for_node = [
- ":cri-tools.rpm",
- ":kubeadm.rpm",
- ":kubelet.rpm",
- ":kubernetes-cni.rpm",
- ],
- only_os = "linux",
- ),
- tags = ["manual"],
- visibility = ["//visibility:public"],
- )
- # Create genrules to copy the arch-specific RPMs to RPMs without the arch in their filename.
- genrule(
- name = "kubectl",
- srcs = select(for_platforms(
- for_client = [":kubectl-{ARCH}.rpm"],
- only_os = "linux",
- )),
- outs = ["kubectl.rpm"],
- cmd = "cp $< $@",
- output_to_bindir = True,
- )
- [genrule(
- name = pkg,
- srcs = select(for_platforms(
- for_client = [":%s-{ARCH}.rpm" % pkg],
- only_os = "linux",
- )),
- outs = ["%s.rpm" % pkg],
- cmd = "cp $< $@",
- output_to_bindir = True,
- ) for pkg in [
- "cri-tools",
- "kubeadm",
- "kubelet",
- "kubernetes-cni",
- ]]
- [pkg_rpm_for_goarch(
- name = "kubectl",
- changelog = "//:CHANGELOG.md",
- data = [
- "//cmd/kubectl",
- ],
- goarch = arch,
- spec_file = "kubectl.spec",
- tags = ["manual"],
- version_file = "//build:os_package_version",
- ) for arch in CLIENT_PLATFORMS["linux"]]
- [pkg_rpm_for_goarch(
- name = "kubelet",
- changelog = "//:CHANGELOG.md",
- data = [
- "kubelet.service",
- "//cmd/kubelet",
- ],
- goarch = arch,
- spec_file = "kubelet.spec",
- tags = ["manual"],
- version_file = "//build:os_package_version",
- ) for arch in NODE_PLATFORMS["linux"]]
- [pkg_rpm_for_goarch(
- name = "kubeadm",
- changelog = "//:CHANGELOG.md",
- data = [
- "10-kubeadm.conf",
- "50-kubeadm.conf",
- "kubeadm.conf",
- "kubelet.env",
- "//cmd/kubeadm",
- ],
- goarch = arch,
- spec_file = "kubeadm.spec",
- tags = ["manual"],
- version_file = "//build:os_package_version",
- ) for arch in NODE_PLATFORMS["linux"]]
- [pkg_rpm_for_goarch(
- name = "kubernetes-cni",
- changelog = "//:CHANGELOG.md",
- data = [
- "@kubernetes_cni_{GOARCH}//file",
- ],
- goarch = arch,
- spec_file = "kubernetes-cni.spec",
- tags = ["manual"],
- version = CNI_VERSION,
- ) for arch in NODE_PLATFORMS["linux"]]
- [pkg_rpm_for_goarch(
- name = "cri-tools",
- data = [
- "@cri_tools_{GOARCH}//file",
- ],
- goarch = arch,
- spec_file = "cri-tools.spec",
- tags = ["manual"],
- version = CRI_TOOLS_VERSION,
- ) for arch in NODE_PLATFORMS["linux"]]
- filegroup(
- name = "package-srcs",
- srcs = glob(["**"]),
- tags = ["automanaged"],
- visibility = ["//visibility:private"],
- )
- filegroup(
- name = "all-srcs",
- srcs = [":package-srcs"],
- tags = ["automanaged"],
- )
|