use kubenix attr instead of k8s for cli

This commit is contained in:
Bryton Hall 2022-08-31 21:35:57 -04:00
parent faad0c48ff
commit ee38caab0e

View file

@ -24,17 +24,14 @@ writeShellScriptBin "kubenix" ''
} }
function _helm() { function _helm() {
RELEASES="$(${nix}/bin/nix eval '.#k8s.config.kubernetes.helm' --json | jq -c '.releases[] | del(.objects)')" ${nix}/bin/nix eval '.#kubenix.config.kubernetes.helm' --json | jq -c '.releases[] | del(.objects)' | while read -r release; do
[ -n "$RELEASES" ] || return 0
for release in $RELEASES; do
values=$(mktemp) values=$(mktemp)
echo $release | jq -r '.values' > $values echo "$release" | jq -r '.values' > $values
${kubernetes-helm}/bin/helm $@ \ ${kubernetes-helm}/bin/helm $@ \
-n $(echo $release | jq -r '.namespace // "default"') \ -n $(echo "$release" | jq -r '.namespace // "default"') \
$(echo $release | jq -r '.name') \ $(echo "$release" | jq -r '.name') \
$(echo $release | jq -r '.chart') \ $(echo "$release" | jq -r '.chart') \
-f $values -f $values
done done
} }
@ -42,8 +39,8 @@ writeShellScriptBin "kubenix" ''
function _kubectl() { function _kubectl() {
MANIFESTS=$(mktemp) MANIFESTS=$(mktemp)
# TODO: find a better filter, not just not-helm, not-crd # TODO: find a better filter, not just not-helm, not-crd
cat $(${nix}/bin/nix build '.#k8s.config.kubernetes.result' --json | jq -r '.[0].outputs.out') \ resources=$(${nix}/bin/nix build '.#kubenix.config.kubernetes.result' --json | jq -r '.[0].outputs.out')
| jq '.items[] cat $resources | jq '.items[]
| select(.metadata.labels."app.kubernetes.io/managed-by" != "Helm") | select(.metadata.labels."app.kubernetes.io/managed-by" != "Helm")
| select(.kind != "CustomResourceDefinition")' > $MANIFESTS | select(.kind != "CustomResourceDefinition")' > $MANIFESTS