add kubeconfig option

This commit is contained in:
Bryton Hall 2022-08-31 21:35:36 -04:00
parent 548188d3fa
commit faad0c48ff
2 changed files with 11 additions and 0 deletions

View file

@ -272,6 +272,13 @@ in {
imports = [./base.nix]; imports = [./base.nix];
options.kubernetes = { options.kubernetes = {
kubeconfig = mkOption {
description = "path to kubeconfig file (default: use $KUBECONFIG)";
type = types.nullOr types.str;
default = null;
example = "/run/secrets/kubeconfig";
};
version = mkOption { version = mkOption {
description = "Kubernetes version to use"; description = "Kubernetes version to use";
type = types.enum versions; type = types.enum versions;

View file

@ -60,6 +60,10 @@ writeShellScriptBin "kubenix" ''
# if no args given, add empty string # if no args given, add empty string
[ $# -eq 0 ] && set -- "" [ $# -eq 0 ] && set -- ""
# use kubeconfig, if given
kubeconfig=$(nix eval '.#kubenix.config.kubernetes.kubeconfig' --raw)
[ -n "$kubeconfig" ] && export KUBECONFIG=$kubeconfig
# parse arguments # parse arguments
while test $# -gt 0; do while test $# -gt 0; do
case "$1" in case "$1" in