Add requestheader-client-ca.

This commit is contained in:
Tom Alexander
2025-12-14 13:44:56 -05:00
parent 51feef1582
commit f18b7d0da9
8 changed files with 68 additions and 2 deletions

View File

@@ -9,5 +9,6 @@ symlinkJoin {
k8s.kubernetes
k8s.ca
k8s.service_account
k8s.requestheader-client-ca
];
}

View File

@@ -0,0 +1,16 @@
{
"CN": "Kubernetes",
"key": {
"algo": "rsa",
"size": 2048
},
"names": [
{
"C": "US",
"L": "Portland",
"O": "Kubernetes",
"OU": "CA",
"ST": "Oregon"
}
]
}

View File

@@ -0,0 +1,30 @@
# unpackPhase
# patchPhase
# configurePhase
# buildPhase
# checkPhase
# installPhase
# fixupPhase
# installCheckPhase
# distPhase
{
stdenv,
sqlite,
cfssl,
k8s,
all_hostnames,
...
}:
stdenv.mkDerivation (finalAttrs: {
name = "k8s-service-account";
nativeBuildInputs = [ cfssl ];
buildInputs = [ ];
unpackPhase = "true";
installPhase = ''
mkdir -p "$out"
cd "$out"
cfssl gencert -initca ${./files/requestheader-client-ca-csr.json} | cfssljson -bare requestheader-client-ca
'';
})

View File

@@ -151,6 +151,13 @@ makeScope newScope (
group = 10024;
mode = "0600";
}
{
dest_dir = "/vm/${vm_name}/persist/keys/kube";
file = "${self.requestheader-client-ca}/requestheader-client-ca.pem";
owner = 10024;
group = 10024;
mode = "0600";
}
])
)
);
@@ -196,6 +203,9 @@ makeScope newScope (
ca = (callPackage ./package/k8s-ca/package.nix additional_vars);
kubernetes = (callPackage ./package/k8s-kubernetes/package.nix additional_vars);
service_account = (callPackage ./package/k8s-service-account/package.nix additional_vars);
requestheader-client-ca = (
callPackage ./package/k8s-requestheader-client-ca/package.nix additional_vars
);
keys = (callPackage ./package/k8s-keys/package.nix additional_vars);
deploy_script = (writeShellScript "deploy-keys" deploy_script);
}