Skip to content

Commit ca12aa1

Browse files
committed
Add redeploy on serving cert and operator pod template change
1 parent 78dd53b commit ca12aa1

File tree

2 files changed

+29
-8
lines changed

2 files changed

+29
-8
lines changed

pkg/operator2/ca.go

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,18 +15,19 @@ const (
1515
injectCABundleAnnotationValue = "true"
1616
)
1717

18-
func (c *authOperator) handleServiceCA() (*corev1.ConfigMap, error) {
18+
func (c *authOperator) handleServiceCA() (*corev1.ConfigMap, *corev1.Secret, error) {
1919
cm := c.configMaps.ConfigMaps(targetName)
20+
secret := c.secrets.Secrets(targetName)
2021
serviceCA, err := cm.Get(serviceCAName, metav1.GetOptions{})
2122
if errors.IsNotFound(err) {
2223
serviceCA, err = cm.Create(defaultServiceCA())
2324
}
2425
if err != nil {
25-
return nil, err
26+
return nil, nil, err
2627
}
2728

2829
if len(serviceCA.Data[serviceCAKey]) == 0 {
29-
return nil, fmt.Errorf("config map has no service ca data: %#v", serviceCA)
30+
return nil, nil, fmt.Errorf("config map has no service ca data: %#v", serviceCA)
3031
}
3132

3233
if err := isValidServiceCA(serviceCA); err != nil {
@@ -36,10 +37,15 @@ func (c *authOperator) handleServiceCA() (*corev1.ConfigMap, error) {
3637
if err := cm.Delete(serviceCA.Name, opts); err != nil && !errors.IsNotFound(err) {
3738
glog.Infof("failed to delete invalid service CA config map: %v", err)
3839
}
39-
return nil, err
40+
return nil, nil, err
4041
}
4142

42-
return serviceCA, nil
43+
servingCert, err := secret.Get(servingCertName, metav1.GetOptions{})
44+
if err != nil {
45+
return nil, nil, err
46+
}
47+
48+
return serviceCA, servingCert, nil
4349
}
4450

4551
func isValidServiceCA(ca *corev1.ConfigMap) error {

pkg/operator2/operator.go

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -180,11 +180,11 @@ func (c *authOperator) handleSync(operatorConfig *operatorv1.Authentication) err
180180
}
181181
resourceVersions = append(resourceVersions, route.GetResourceVersion())
182182

183-
serviceCA, err := c.handleServiceCA()
183+
serviceCA, servingCert, err := c.handleServiceCA()
184184
if err != nil {
185185
return err
186186
}
187-
resourceVersions = append(resourceVersions, serviceCA.GetResourceVersion())
187+
resourceVersions = append(resourceVersions, serviceCA.GetResourceVersion(), servingCert.GetResourceVersion())
188188

189189
metadata, _, err := resourceapply.ApplyConfigMap(c.configMaps, c.recorder, getMetadataConfigMap(route))
190190
if err != nil {
@@ -235,9 +235,14 @@ func (c *authOperator) handleSync(operatorConfig *operatorv1.Authentication) err
235235
}
236236
resourceVersions = append(resourceVersions, cliConfig.GetResourceVersion())
237237

238+
operatorDeploymentRV, err := c.getOperatorDeploymentResourceVersion()
239+
if err != nil {
240+
return err
241+
}
242+
resourceVersions = append(resourceVersions, operatorDeploymentRV)
243+
238244
// deployment, have RV of all resources
239245
// TODO use ExpectedDeploymentGeneration func
240-
// TODO we also need the RV for the serving-cert secret (servingCertName)
241246
expectedDeployment := defaultDeployment(
242247
operatorConfig,
243248
syncData,
@@ -284,3 +289,13 @@ func getPrefixFilter() controller.Filter {
284289
DeleteFunc: prefix,
285290
}
286291
}
292+
293+
func (c *authOperator) getOperatorDeploymentResourceVersion() (string, error) {
294+
deployments := c.deployments.Deployments(targetNameOperator)
295+
operator, err := deployments.Get(targetNameOperator, metav1.GetOptions{})
296+
if err != nil {
297+
return "", err
298+
}
299+
300+
return operator.GetResourceVersion(), nil
301+
}

0 commit comments

Comments
 (0)