@@ -29,13 +29,13 @@ func (c *KubeAPIServerToKubeletSignerCertKey) Generate(ctx context.Context, pare
2929 installConfig := & installconfig.InstallConfig {}
3030 parents .Get (installConfig )
3131 cfg := & CertCfg {
32- Subject : pkix.Name {CommonName : "kube-apiserver-to-kubelet-signer" , OrganizationalUnit : []string {"openshift" }},
33- KeyUsages : x509 . KeyUsageKeyEncipherment | x509 . KeyUsageDigitalSignature | x509 . KeyUsageCertSign ,
34- Validity : ValidityOneYear (installConfig ),
35- IsCA : true ,
32+ Subject : pkix.Name {CommonName : "kube-apiserver-to-kubelet-signer" , OrganizationalUnit : []string {"openshift" }},
33+ // KeyUsages is set by GenerateSelfSignedCertificate based on the key algorithm.
34+ Validity : ValidityOneYear (installConfig ),
35+ IsCA : true ,
3636 }
3737
38- return c .SelfSignedCertKey .Generate (ctx , cfg , "kube-apiserver-to-kubelet-signer" )
38+ return c .SelfSignedCertKey .Generate (ctx , cfg , "kube-apiserver-to-kubelet-signer" , nil )
3939}
4040
4141// Name returns the human-friendly name of the asset.
@@ -116,21 +116,27 @@ type KubeAPIServerLocalhostSignerCertKey struct {
116116
117117var _ asset.WritableAsset = (* KubeAPIServerLocalhostSignerCertKey )(nil )
118118
119- // Dependencies returns the dependency of the root-ca, which is empty.
119+ // Dependencies returns no dependencies. Configurable PKI requires
120+ // reading the PKI config from InstallConfig, but adding InstallConfig
121+ // as a dependency here would break codepaths that generate signer certs
122+ // without an install-config on disk (e.g. agent create certificates,
123+ // node-joiner). A follow-up commit introduces an intermediate asset
124+ // that reads the config directly from disk without triggering
125+ // InstallConfig validation.
120126func (c * KubeAPIServerLocalhostSignerCertKey ) Dependencies () []asset.Asset {
121127 return []asset.Asset {}
122128}
123129
124130// Generate generates the root-ca key and cert pair.
125131func (c * KubeAPIServerLocalhostSignerCertKey ) Generate (ctx context.Context , parents asset.Parents ) error {
126132 cfg := & CertCfg {
127- Subject : pkix.Name {CommonName : "kube-apiserver-localhost-signer" , OrganizationalUnit : []string {"openshift" }},
128- KeyUsages : x509 . KeyUsageKeyEncipherment | x509 . KeyUsageDigitalSignature | x509 . KeyUsageCertSign ,
129- Validity : ValidityTenYears (),
130- IsCA : true ,
133+ Subject : pkix.Name {CommonName : "kube-apiserver-localhost-signer" , OrganizationalUnit : []string {"openshift" }},
134+ // KeyUsages is set by GenerateSelfSignedCertificate based on the key algorithm.
135+ Validity : ValidityTenYears (),
136+ IsCA : true ,
131137 }
132138
133- return c .SelfSignedCertKey .Generate (ctx , cfg , "kube-apiserver-localhost-signer" )
139+ return c .SelfSignedCertKey .Generate (ctx , cfg , "kube-apiserver-localhost-signer" , nil )
134140}
135141
136142// Load reads the asset files from disk.
@@ -220,21 +226,27 @@ type KubeAPIServerServiceNetworkSignerCertKey struct {
220226
221227var _ asset.WritableAsset = (* KubeAPIServerServiceNetworkSignerCertKey )(nil )
222228
223- // Dependencies returns the dependency of the root-ca, which is empty.
229+ // Dependencies returns no dependencies. Configurable PKI requires
230+ // reading the PKI config from InstallConfig, but adding InstallConfig
231+ // as a dependency here would break codepaths that generate signer certs
232+ // without an install-config on disk (e.g. agent create certificates,
233+ // node-joiner). A follow-up commit introduces an intermediate asset
234+ // that reads the config directly from disk without triggering
235+ // InstallConfig validation.
224236func (c * KubeAPIServerServiceNetworkSignerCertKey ) Dependencies () []asset.Asset {
225237 return []asset.Asset {}
226238}
227239
228240// Generate generates the root-ca key and cert pair.
229241func (c * KubeAPIServerServiceNetworkSignerCertKey ) Generate (ctx context.Context , parents asset.Parents ) error {
230242 cfg := & CertCfg {
231- Subject : pkix.Name {CommonName : "kube-apiserver-service-network-signer" , OrganizationalUnit : []string {"openshift" }},
232- KeyUsages : x509 . KeyUsageKeyEncipherment | x509 . KeyUsageDigitalSignature | x509 . KeyUsageCertSign ,
233- Validity : ValidityTenYears (),
234- IsCA : true ,
243+ Subject : pkix.Name {CommonName : "kube-apiserver-service-network-signer" , OrganizationalUnit : []string {"openshift" }},
244+ // KeyUsages is set by GenerateSelfSignedCertificate based on the key algorithm.
245+ Validity : ValidityTenYears (),
246+ IsCA : true ,
235247 }
236248
237- return c .SelfSignedCertKey .Generate (ctx , cfg , "kube-apiserver-service-network-signer" )
249+ return c .SelfSignedCertKey .Generate (ctx , cfg , "kube-apiserver-service-network-signer" , nil )
238250}
239251
240252// Load reads the asset files from disk.
@@ -333,21 +345,27 @@ type KubeAPIServerLBSignerCertKey struct {
333345
334346var _ asset.WritableAsset = (* KubeAPIServerLBSignerCertKey )(nil )
335347
336- // Dependencies returns the dependency of the root-ca, which is empty.
348+ // Dependencies returns no dependencies. Configurable PKI requires
349+ // reading the PKI config from InstallConfig, but adding InstallConfig
350+ // as a dependency here would break codepaths that generate signer certs
351+ // without an install-config on disk (e.g. agent create certificates,
352+ // node-joiner). A follow-up commit introduces an intermediate asset
353+ // that reads the config directly from disk without triggering
354+ // InstallConfig validation.
337355func (c * KubeAPIServerLBSignerCertKey ) Dependencies () []asset.Asset {
338356 return []asset.Asset {}
339357}
340358
341359// Generate generates the root-ca key and cert pair.
342360func (c * KubeAPIServerLBSignerCertKey ) Generate (ctx context.Context , parents asset.Parents ) error {
343361 cfg := & CertCfg {
344- Subject : pkix.Name {CommonName : "kube-apiserver-lb-signer" , OrganizationalUnit : []string {"openshift" }},
345- KeyUsages : x509 . KeyUsageKeyEncipherment | x509 . KeyUsageDigitalSignature | x509 . KeyUsageCertSign ,
346- Validity : ValidityTenYears (),
347- IsCA : true ,
362+ Subject : pkix.Name {CommonName : "kube-apiserver-lb-signer" , OrganizationalUnit : []string {"openshift" }},
363+ // KeyUsages is set by GenerateSelfSignedCertificate based on the key algorithm.
364+ Validity : ValidityTenYears (),
365+ IsCA : true ,
348366 }
349367
350- return c .SelfSignedCertKey .Generate (ctx , cfg , "kube-apiserver-lb-signer" )
368+ return c .SelfSignedCertKey .Generate (ctx , cfg , "kube-apiserver-lb-signer" , nil )
351369}
352370
353371// Load reads the asset files from disk.
0 commit comments