routetables: default to name rtbl-<vpc.name>

This commit is contained in:
Yousong Zhou
2019-05-27 09:46:13 +00:00
parent 0b8239e032
commit fdca24b80a
+17 -4
View File
@@ -447,11 +447,14 @@ func (man *SRouteTableManager) newRouteTableFromCloud(userCred mcclient.TokenCre
Type: cloudRouteTable.GetType(),
Routes: &routes,
}
newName, err := db.GenerateName(man, userCred.GetProjectId(), cloudRouteTable.GetName())
if err != nil {
return nil, err
{
basename := routeTableBasename(cloudRouteTable.GetName(), vpc.Name)
newName, err := db.GenerateName(man, userCred.GetProjectId(), basename)
if err != nil {
return nil, err
}
routeTable.Name = newName
}
routeTable.Name = newName
routeTable.ManagerId = vpc.ManagerId
routeTable.ExternalId = cloudRouteTable.GetGlobalId()
routeTable.Description = cloudRouteTable.GetDescription()
@@ -460,6 +463,16 @@ func (man *SRouteTableManager) newRouteTableFromCloud(userCred mcclient.TokenCre
return routeTable, nil
}
func routeTableBasename(name, vpcName string) string {
if name != "" {
return name
} else if vpcName != "" {
return "rtbl-" + vpcName
} else {
return "rtbl"
}
}
func (man *SRouteTableManager) insertFromCloud(ctx context.Context, userCred mcclient.TokenCredential, vpc *SVpc, cloudRouteTable cloudprovider.ICloudRouteTable) (*SRouteTable, error) {
routeTable, err := man.newRouteTableFromCloud(userCred, vpc, cloudRouteTable)
if err != nil {