feat(k8s): split objects hash in separate option

This commit is contained in:
Jaka Hudoklin 2019-02-20 09:33:33 +01:00
parent ed240c3b5f
commit b1319684c7
No known key found for this signature in database
GPG key ID: 6A08896BFD32BD95

View file

@ -196,13 +196,18 @@ in {
config.kubernetes.generated = let config.kubernetes.generated = let
kubernetesList = toKubernetesList config.kubernetes.objects; kubernetesList = toKubernetesList config.kubernetes.objects;
listHash = builtins.hashString "sha1" (builtins.toJSON kubernetesList);
hashedList = kubernetesList // { hashedList = kubernetesList // {
labels."kubenix/build" = listHash; labels."kubenix/build" = config.kubernetes.hash;
items = map (resource: recursiveUpdate resource { items = map (resource: recursiveUpdate resource {
metadata.labels."kubenix/build" = listHash; metadata.labels."kubenix/build" = config.kubernetes.hash;
}) kubernetesList.items; }) kubernetesList.items;
}; };
in hashedList; in hashedList;
options.kubernetes.hash = mkOption {
type = types.str;
description = "Output hash";
};
config.kubernetes.hash = builtins.hashString "sha1" (builtins.toJSON config.kubernetes.objects);
} }