# Template file for 'kubernetes'
pkgname=kubernetes
version=1.17.0
revision=1
build_style=go
nocross=yes
archs="x86_64* ppc64le*"
hostmakedepends="rsync git go-bindata"
depends="kubectl"
short_desc="Container Cluster Manager for Docker"
maintainer="Andrea Brancaleoni <abc@pompel.me>"
license="Apache-2.0"
go_import_path="github.com/kubernetes/kubernetes"
homepage="http://kubernetes.io"
distfiles="https://$go_import_path/archive/v$version.tar.gz"
checksum=b4f82f5006ff945edc17726ac93489173876313855020e7760b1c189fb402bb1
system_accounts="kube"
make_dirs="/var/lib/kubelet 0755 kube kube"
conf_files="/etc/kubernetes/*"

do_build() {
	make
	hack/generate-docs.sh
	find "_output/local/bin/linux/" -type f -executable | grep "kubectl" | egrep -v "gen|test" | while read line
	do
		$line completion bash > completion.bash
		$line completion zsh > completion.zsh
		break
	done
}

do_install() {
	find "_output/local/bin/linux/" -type f -executable | grep "kube" | egrep -v "gen|test" | while read line
	do
		vbin "${line}"
	done

	for MAN in docs/man/man1/*.1; do
		vman ${MAN}
	done

	vmkdir etc/kubernetes
	vcopy ${FILESDIR}/environ/* etc/kubernetes

	vsv kube-apiserver
	vsv kube-controller-manager
	vsv kubelet
	vsv kube-scheduler
	vsv kube-proxy

	vlicense LICENSE
}

kubectl_package() {
	short_desc="Controls the Kubernetes cluster manager"
	pkg_install() {
		vmove usr/bin/kubectl
		vmove usr/share/man/man1/kubectl*
		vinstall completion.bash 644 usr/share/bash-completion/completions kubectl
		vinstall completion.zsh 644 usr/share/kubectl
		vlicense LICENSE
	}
}
