Merge branch 'master' of github.com:zalando/postgres-operator

This commit is contained in:
Felix Kunde 2021-02-22 17:28:07 +01:00
commit e438ff5628
2 changed files with 14 additions and 11 deletions

View File

@ -320,14 +320,17 @@ func getLocalAndBoostrapPostgreSQLParameters(parameters map[string]string) (loca
return return
} }
func generateCapabilities(capabilities []string) v1.Capabilities { func generateCapabilities(capabilities []string) *v1.Capabilities {
additionalCapabilities := make([]v1.Capability, 0, len(capabilities)) additionalCapabilities := make([]v1.Capability, 0, len(capabilities))
for _, capability := range capabilities { for _, capability := range capabilities {
additionalCapabilities = append(additionalCapabilities, v1.Capability(strings.ToUpper(capability))) additionalCapabilities = append(additionalCapabilities, v1.Capability(strings.ToUpper(capability)))
} }
return v1.Capabilities{ if len(additionalCapabilities) > 0 {
Add: additionalCapabilities, return &v1.Capabilities{
Add: additionalCapabilities,
}
} }
return nil
} }
func nodeAffinity(nodeReadinessLabel map[string]string, nodeAffinity *v1.NodeAffinity) *v1.Affinity { func nodeAffinity(nodeReadinessLabel map[string]string, nodeAffinity *v1.NodeAffinity) *v1.Affinity {
@ -440,7 +443,7 @@ func generateContainer(
envVars []v1.EnvVar, envVars []v1.EnvVar,
volumeMounts []v1.VolumeMount, volumeMounts []v1.VolumeMount,
privilegedMode bool, privilegedMode bool,
additionalPodCapabilities v1.Capabilities, additionalPodCapabilities *v1.Capabilities,
) *v1.Container { ) *v1.Container {
return &v1.Container{ return &v1.Container{
Name: name, Name: name,
@ -467,7 +470,7 @@ func generateContainer(
AllowPrivilegeEscalation: &privilegedMode, AllowPrivilegeEscalation: &privilegedMode,
Privileged: &privilegedMode, Privileged: &privilegedMode,
ReadOnlyRootFilesystem: util.False(), ReadOnlyRootFilesystem: util.False(),
Capabilities: &additionalPodCapabilities, Capabilities: additionalPodCapabilities,
}, },
} }
} }
@ -1914,7 +1917,7 @@ func (c *Cluster) generateLogicalBackupJob() (*batchv1beta1.CronJob, error) {
envVars, envVars,
[]v1.VolumeMount{}, []v1.VolumeMount{},
c.OpConfig.SpiloPrivileged, // use same value as for normal DB pods c.OpConfig.SpiloPrivileged, // use same value as for normal DB pods
v1.Capabilities{}, nil,
) )
labels := map[string]string{ labels := map[string]string{

View File

@ -1496,25 +1496,25 @@ func TestGenerateCapabilities(t *testing.T) {
tests := []struct { tests := []struct {
subTest string subTest string
configured []string configured []string
capabilities v1.Capabilities capabilities *v1.Capabilities
err error err error
}{ }{
{ {
subTest: "no capabilities", subTest: "no capabilities",
configured: nil, configured: nil,
capabilities: v1.Capabilities{Add: []v1.Capability{}}, capabilities: nil,
err: fmt.Errorf("could not parse capabilities configuration of nil"), err: fmt.Errorf("could not parse capabilities configuration of nil"),
}, },
{ {
subTest: "empty capabilities", subTest: "empty capabilities",
configured: []string{}, configured: []string{},
capabilities: v1.Capabilities{Add: []v1.Capability{}}, capabilities: nil,
err: fmt.Errorf("could not parse empty capabilities configuration"), err: fmt.Errorf("could not parse empty capabilities configuration"),
}, },
{ {
subTest: "configured capability", subTest: "configured capability",
configured: []string{"SYS_NICE"}, configured: []string{"SYS_NICE"},
capabilities: v1.Capabilities{ capabilities: &v1.Capabilities{
Add: []v1.Capability{"SYS_NICE"}, Add: []v1.Capability{"SYS_NICE"},
}, },
err: fmt.Errorf("could not generate one configured capability"), err: fmt.Errorf("could not generate one configured capability"),
@ -1522,7 +1522,7 @@ func TestGenerateCapabilities(t *testing.T) {
{ {
subTest: "configured capabilities", subTest: "configured capabilities",
configured: []string{"SYS_NICE", "CHOWN"}, configured: []string{"SYS_NICE", "CHOWN"},
capabilities: v1.Capabilities{ capabilities: &v1.Capabilities{
Add: []v1.Capability{"SYS_NICE", "CHOWN"}, Add: []v1.Capability{"SYS_NICE", "CHOWN"},
}, },
err: fmt.Errorf("could not generate multiple configured capabilities"), err: fmt.Errorf("could not generate multiple configured capabilities"),