in goalresolvers/goal_resolver.go [139:164]
func (g *webhookTlsManagerGoalResolver) Resolve(ctx context.Context) (*WebhookTlsManagerGoal, *error) {
logger := log.MustGetLogger(ctx)
logger.Infof(ctx, "Resolve: isKubeSystemNamespaceBlocked=%v, IsWebhookTlsManagerEnabled=%v", g.isKubeSystemNamespaceBlocked, g.IsWebhookTlsManagerEnabled)
goal := &WebhookTlsManagerGoal{
IsKubeSystemNamespaceBlocked: g.isKubeSystemNamespaceBlocked,
IsWebhookTlsManagerEnabled: g.IsWebhookTlsManagerEnabled,
}
rotateCert, cerr := g.shouldRotateCert(ctx)
if cerr != nil {
logger.Errorf(ctx, "Failed to check cert expiration date. error: %s", *cerr)
return nil, cerr
}
if !rotateCert {
logger.Info(ctx, "no need to rotate cert.")
goal.CertData = nil
} else {
data, cerr := g.generateCertificates(ctx)
if cerr != nil {
logger.Errorf(ctx, "generateCertificates. error: %s", *cerr)
return nil, cerr
}
goal.CertData = data
}
return goal, nil
}