mirror of https://github.com/k3s-io/k3s
129 lines
3.0 KiB
Python
129 lines
3.0 KiB
Python
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"],
|
|
)
|