Truncate cronjob name at 52 characters (#1208)
This commit is contained in:
parent
772f0ca771
commit
17da6bc649
|
|
@ -2101,7 +2101,7 @@ func (c *Cluster) generateLogicalBackupPodEnvVars() []v1.EnvVar {
|
|||
|
||||
// getLogicalBackupJobName returns the name; the job itself may not exists
|
||||
func (c *Cluster) getLogicalBackupJobName() (jobName string) {
|
||||
return c.OpConfig.LogicalBackupJobPrefix + c.clusterName().Name
|
||||
return trimCronjobName(c.OpConfig.LogicalBackupJobPrefix + c.clusterName().Name)
|
||||
}
|
||||
|
||||
// Return an array of ownerReferences to make an arbitraty object dependent on
|
||||
|
|
|
|||
|
|
@ -576,3 +576,12 @@ func mergeContainers(containers ...[]v1.Container) ([]v1.Container, []string) {
|
|||
}
|
||||
return result, conflicts
|
||||
}
|
||||
|
||||
func trimCronjobName(name string) string {
|
||||
maxLength := 52
|
||||
if len(name) > maxLength {
|
||||
name = name[0:maxLength]
|
||||
name = strings.TrimRight(name, "-")
|
||||
}
|
||||
return name
|
||||
}
|
||||
|
|
|
|||
|
|
@ -139,3 +139,43 @@ func TestInheritedAnnotations(t *testing.T) {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
func Test_trimCronjobName(t *testing.T) {
|
||||
type args struct {
|
||||
name string
|
||||
}
|
||||
tests := []struct {
|
||||
name string
|
||||
args args
|
||||
want string
|
||||
}{
|
||||
{
|
||||
name: "short name",
|
||||
args: args{
|
||||
name: "short-name",
|
||||
},
|
||||
want: "short-name",
|
||||
},
|
||||
{
|
||||
name: "long name",
|
||||
args: args{
|
||||
name: "very-very-very-very-very-very-very-very-very-long-db-name",
|
||||
},
|
||||
want: "very-very-very-very-very-very-very-very-very-long-db",
|
||||
},
|
||||
{
|
||||
name: "long name should not end with dash",
|
||||
args: args{
|
||||
name: "very-very-very-very-very-very-very-very-very-----------long-db-name",
|
||||
},
|
||||
want: "very-very-very-very-very-very-very-very-very",
|
||||
},
|
||||
}
|
||||
for _, tt := range tests {
|
||||
t.Run(tt.name, func(t *testing.T) {
|
||||
if got := trimCronjobName(tt.args.name); got != tt.want {
|
||||
t.Errorf("trimCronjobName() = %v, want %v", got, tt.want)
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue