|
|
|
@ -1,27 +1,24 @@ |
|
|
|
|
{ stdenv, kubernetes }: |
|
|
|
|
{ stdenv, kubernetes, installShellFiles }: |
|
|
|
|
|
|
|
|
|
stdenv.mkDerivation { |
|
|
|
|
name = "kubectl-${kubernetes.version}"; |
|
|
|
|
|
|
|
|
|
# kubectl is currently part of the main distribution but will eventially be |
|
|
|
|
# split out (see homepage) |
|
|
|
|
src = kubernetes; |
|
|
|
|
dontUnpack = true; |
|
|
|
|
|
|
|
|
|
nativeBuildInputs = [ installShellFiles ]; |
|
|
|
|
|
|
|
|
|
outputs = [ "out" "man" ]; |
|
|
|
|
|
|
|
|
|
installPhase = '' |
|
|
|
|
mkdir -p \ |
|
|
|
|
"$out/bin" \ |
|
|
|
|
"$out/share/bash-completion/completions" \ |
|
|
|
|
"$out/share/zsh/site-functions" \ |
|
|
|
|
"$man/share/man/man1" |
|
|
|
|
|
|
|
|
|
cp bin/kubectl $out/bin/kubectl |
|
|
|
|
install -D ${kubernetes}/bin/kubectl -t $out/bin |
|
|
|
|
|
|
|
|
|
cp "${kubernetes.man}/share/man/man1"/kubectl* "$man/share/man/man1" |
|
|
|
|
installManPage "${kubernetes.man}/share/man/man1"/kubectl* |
|
|
|
|
|
|
|
|
|
$out/bin/kubectl completion bash > $out/share/bash-completion/completions/kubectl |
|
|
|
|
$out/bin/kubectl completion zsh > $out/share/zsh/site-functions/_kubectl |
|
|
|
|
installShellCompletion --cmd kubectl \ |
|
|
|
|
--bash <($out/bin/kubectl completion bash) \ |
|
|
|
|
--zsh <($out/bin/kubectl completion zsh) |
|
|
|
|
''; |
|
|
|
|
|
|
|
|
|
meta = kubernetes.meta // { |
|
|
|
|