diff --git a/types/mapper/metadata.go b/types/mapper/metadata.go index 130786c5..26610509 100644 --- a/types/mapper/metadata.go +++ b/types/mapper/metadata.go @@ -8,7 +8,7 @@ func NewMetadataMapper() types.Mapper { return types.Mappers{ ChangeType{Field: "name", Type: "dnsLabel"}, Drop{Field: "generateName"}, - Move{From: "uid", To: "uuid"}, + Move{From: "uid", To: "uuid", CodeName: "UUID"}, Drop{Field: "resourceVersion"}, Drop{Field: "generation"}, Move{From: "creationTimestamp", To: "created"}, diff --git a/types/mapper/move.go b/types/mapper/move.go index f21c5602..03629a64 100644 --- a/types/mapper/move.go +++ b/types/mapper/move.go @@ -12,9 +12,9 @@ import ( ) type Move struct { - From, To string - DestDefined bool - NoDeleteFromField bool + From, To, CodeName string + DestDefined bool + NoDeleteFromField bool } func (m Move) FromInternal(data map[string]interface{}) { @@ -53,7 +53,11 @@ func (m Move) ModifySchema(s *types.Schema, schemas *types.Schemas) error { } if !m.DestDefined { - fromField.CodeName = convert.Capitalize(toFieldName) + if m.CodeName == "" { + fromField.CodeName = convert.Capitalize(toFieldName) + } else { + fromField.CodeName = m.CodeName + } toSchema.ResourceFields[toFieldName] = fromField } diff --git a/types/mapper/rename_reference.go b/types/mapper/rename_reference.go index 1f007ef0..d63fb5e6 100644 --- a/types/mapper/rename_reference.go +++ b/types/mapper/rename_reference.go @@ -4,6 +4,7 @@ import ( "strings" "github.com/rancher/norman/types" + "github.com/rancher/norman/types/convert" "github.com/rancher/norman/types/definition" ) @@ -29,7 +30,8 @@ func (r *RenameReference) ModifySchema(schema *types.Schema, schemas *types.Sche for name, field := range schema.ResourceFields { if definition.IsReferenceType(field.Type) && strings.HasSuffix(name, "Name") { newName := strings.TrimSuffix(name, "Name") + "Id" - move := Move{From: name, To: newName} + newCodeName := convert.Capitalize(strings.TrimSuffix(name, "Name") + "ID") + move := Move{From: name, To: newName, CodeName: newCodeName} if err := move.ModifySchema(schema, schemas); err != nil { return err } @@ -37,7 +39,8 @@ func (r *RenameReference) ModifySchema(schema *types.Schema, schemas *types.Sche mappers = append(mappers, move) } else if definition.IsArrayType(field.Type) && definition.IsReferenceType(definition.SubType(field.Type)) && strings.HasSuffix(name, "Names") { newName := strings.TrimSuffix(name, "Names") + "Ids" - move := Move{From: name, To: newName} + newCodeName := convert.Capitalize(strings.TrimSuffix(name, "Names") + "IDs") + move := Move{From: name, To: newName, CodeName: newCodeName} if err := move.ModifySchema(schema, schemas); err != nil { return err }