40 lines
844 B
Nix
Raw Normal View History

# unpackPhase
# patchPhase
# configurePhase
# buildPhase
# checkPhase
# installPhase
# fixupPhase
# installCheckPhase
# distPhase
{
stdenv,
k8s,
kubectl,
secret_name,
secret_namespace,
ssh_key_name,
...
}:
stdenv.mkDerivation (finalAttrs: {
name = "k8s-secret-ssh-${secret_name}";
nativeBuildInputs = [ kubectl ];
buildInputs = [ ];
unpackPhase = "true";
buildPhase = ''
kubectl create secret generic ${secret_name} \
--namespace ${secret_namespace} \
--from-file=identity=${k8s.ssh-keys."${ssh_key_name}"}/${ssh_key_name} \
--from-file=identity.pub=${k8s.ssh-keys."${ssh_key_name}"}/${ssh_key_name}.pub \
--dry-run=client -o yaml > ${secret_name}.yaml
'';
# --from-file=known_hosts=$(OUT)/known_hosts \
installPhase = ''
mkdir "$out"
cp "${secret_name}.yaml" $out/
'';
})