mirror of
https://github.com/zalando/postgres-operator.git
synced 2026-10-03 05:42:04 +02:00
do not use words like whitelisting
This commit is contained in:
@@ -1019,7 +1019,7 @@ var OperatorConfigCRDResourceValidation = apiextv1.CustomResourceValidation{
|
||||
"major_version_upgrade_mode": {
|
||||
Type: "string",
|
||||
},
|
||||
"major_version_upgrade_team_whitelist": {
|
||||
"major_version_upgrade_team_allow_list": {
|
||||
Type: "array",
|
||||
Items: &apiextv1.JSONSchemaPropsOrArray{
|
||||
Schema: &apiextv1.JSONSchemaProps{
|
||||
|
||||
@@ -44,7 +44,7 @@ type PostgresUsersConfiguration struct {
|
||||
// MajorVersionUpgradeConfiguration defines how to execute major version upgrades of Postgres.
|
||||
type MajorVersionUpgradeConfiguration struct {
|
||||
MajorVersionUpgradeMode string `json:"major_version_upgrade_mode" default:"off"` // off - no actions, manual - manifest triggers action, full - manifest and minimal version violation trigger upgrade
|
||||
MajorVersionUpgradeTeamWhitelist []string `json:"major_version_upgrade_team_whitelist,omitempty"`
|
||||
MajorVersionUpgradeTeamAllowList []string `json:"major_version_upgrade_team_allow_list,omitempty"`
|
||||
MinimalMajorVersion string `json:"minimal_major_version" default:"9.6"`
|
||||
TargetMajorVersion string `json:"target_major_version" default:"14"`
|
||||
}
|
||||
|
||||
@@ -45,25 +45,25 @@ func (c *Cluster) GetDesiredMajorVersion() string {
|
||||
return c.Spec.PgVersion
|
||||
}
|
||||
|
||||
func (c *Cluster) isTeamWhitelisted(owningTeam string) bool {
|
||||
whitelistedTeams := c.OpConfig.MajorVersionUpgradeTeamWhitelist
|
||||
func (c *Cluster) isUpgradeAllowedForTeam(owningTeam string) bool {
|
||||
allowedTeams := c.OpConfig.MajorVersionUpgradeTeamAllowList
|
||||
|
||||
if len(whitelistedTeams) == 0 {
|
||||
if len(allowedTeams) == 0 {
|
||||
return false
|
||||
}
|
||||
|
||||
return util.SliceContains(whitelistedTeams, owningTeam)
|
||||
return util.SliceContains(allowedTeams, owningTeam)
|
||||
}
|
||||
|
||||
/*
|
||||
Execute upgrade when mode is set to manual or full or when the owning team is whitelisted for upgrade.
|
||||
Execute upgrade when mode is set to manual or full or when the owning team is allowed for upgrade.
|
||||
|
||||
Manual upgrade means, it is triggered by the user via manifest version change
|
||||
Full upgrade means, operator also determines the minimal version used accross all clusters and upgrades violators.
|
||||
*/
|
||||
func (c *Cluster) majorVersionUpgrade() error {
|
||||
|
||||
if c.OpConfig.MajorVersionUpgradeMode == "off" && !c.isTeamWhitelisted(c.Spec.TeamID) {
|
||||
if c.OpConfig.MajorVersionUpgradeMode == "off" && !c.isUpgradeAllowedForTeam(c.Spec.TeamID) {
|
||||
return nil
|
||||
}
|
||||
|
||||
|
||||
@@ -56,7 +56,7 @@ func (c *Controller) importConfigurationFromCRD(fromCRD *acidv1.OperatorConfigur
|
||||
|
||||
// major version upgrade config
|
||||
result.MajorVersionUpgradeMode = util.Coalesce(fromCRD.MajorVersionUpgrade.MajorVersionUpgradeMode, "off")
|
||||
result.MajorVersionUpgradeTeamWhitelist = fromCRD.MajorVersionUpgrade.MajorVersionUpgradeTeamWhitelist
|
||||
result.MajorVersionUpgradeTeamAllowList = fromCRD.MajorVersionUpgrade.MajorVersionUpgradeTeamAllowList
|
||||
result.MinimalMajorVersion = util.Coalesce(fromCRD.MajorVersionUpgrade.MinimalMajorVersion, "9.6")
|
||||
result.TargetMajorVersion = util.Coalesce(fromCRD.MajorVersionUpgrade.TargetMajorVersion, "14")
|
||||
|
||||
|
||||
@@ -212,7 +212,7 @@ type Config struct {
|
||||
EnablePgVersionEnvVar bool `name:"enable_pgversion_env_var" default:"true"`
|
||||
EnableSpiloWalPathCompat bool `name:"enable_spilo_wal_path_compat" default:"false"`
|
||||
MajorVersionUpgradeMode string `name:"major_version_upgrade_mode" default:"off"`
|
||||
MajorVersionUpgradeTeamWhitelist []string `name:"major_version_upgrade_team_whitelist" default:""`
|
||||
MajorVersionUpgradeTeamAllowList []string `name:"major_version_upgrade_team_allow_list" default:""`
|
||||
MinimalMajorVersion string `name:"minimal_major_version" default:"9.6"`
|
||||
TargetMajorVersion string `name:"target_major_version" default:"14"`
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user