void-packages/srcpkgs/kubernetes-helm/template

76 lines
2.1 KiB
Bash

# Template file for 'kubernetes-helm'
pkgname=kubernetes-helm
version=2.12.0
revision=2
wrksrc="helm-${version}"
hostmakedepends="go make git mercurial"
short_desc="The Kubernetes Package Manager"
maintainer="Kyle Nusbaum <knusbaum+void@sdf.org>"
license="Apache-2.0"
homepage="https://helm.sh/"
distfiles="https://github.com/helm/helm/archive/v${version}.tar.gz"
checksum=5bfc368df2551d228a941286a59f31c53faebdc7a02edda2dc6df33998d1a438
conflicts="helm"
nopie=true
_convert_arch() {
case "$1" in
aarch64*) echo arm64;;
armv6*) echo arm;;
armv7*) echo arm;;
i686*) echo 386;;
x86_64*) echo amd64;;
esac
}
export _go_target_arch=$(_convert_arch $XBPS_TARGET_MACHINE)
export _go_host_arch=$(_convert_arch $XBPS_MACHINE)
do_extract() {
mkdir -p golib/src/k8s.io/helm
tar -xvzf ${XBPS_SRCDISTDIR}/${pkgname}-${version}/v${version}.tar.gz \
-C golib/src/k8s.io/helm \
--strip-components 1 \
helm-${version}
}
pre_build() {
export GOPATH="$(pwd)/golib"
## The current version of glide in the repository has
## a bug that prevents building, so pull the current
## version from git.
CC=/bin/gcc go get github.com/Masterminds/glide
CC=/bin/gcc go get github.com/mitchellh/gox
CC=/bin/gcc go install github.com/Masterminds/glide
CC=/bin/gcc go install github.com/mitchellh/gox
PATH="$PATH:$(pwd)/golib/bin/"
export PATH
}
do_build() {
cd golib/src/k8s.io/helm
TARGETS="linux/${_go_target_arch} linux/${_go_host_arch}" make bootstrap build-cross APP="..." LDFLAGS="-X k8s.io/helm/pkg/version.BuildMetadata="
_dist/linux-${_go_host_arch}/helm completion bash > completion.bash
_dist/linux-${_go_host_arch}/helm completion zsh > completion.zsh
}
do_install() {
cd golib/src/k8s.io/helm
# Copy documentation and examples.
vmkdir usr/share/examples/$pkgname
vcopy "docs/examples/*" usr/share/examples/$pkgname
for file in docs/man/man1/*.1; do
vman ${file}
done
vinstall completion.bash 644 usr/share/bash-completion/completions helm
vinstall completion.zsh 644 usr/share/$pkgname
# Copy binaries and license
vbin _dist/linux-${_go_target_arch}/helm
vbin _dist/linux-${_go_target_arch}/tiller
vlicense LICENSE
}