diff --git a/pkg/compute/models/guests.go b/pkg/compute/models/guests.go index a13e1a56fb..750587df3a 100644 --- a/pkg/compute/models/guests.go +++ b/pkg/compute/models/guests.go @@ -2778,7 +2778,7 @@ func getCloudNicNetwork(ctx context.Context, vnic cloudprovider.ICloudNic, host if vnet == nil { if vnic.InClassicNetwork() { region := host.GetRegion() - cloudprovider := region.GetCloudprovider() + cloudprovider := host.GetCloudprovider() vpc, err := VpcManager.GetOrCreateVpcForClassicNetwork(ctx, cloudprovider, region) if err != nil { return nil, errors.Wrap(err, "NewVpcForClassicNetwork") diff --git a/pkg/compute/models/vpcs.go b/pkg/compute/models/vpcs.go index 3cd3213540..68bbfe101b 100644 --- a/pkg/compute/models/vpcs.go +++ b/pkg/compute/models/vpcs.go @@ -211,7 +211,7 @@ func (manager *SVpcManager) getVpcExternalIdForClassicNetwork(regionId, cloudpro func (manager *SVpcManager) GetOrCreateVpcForClassicNetwork(ctx context.Context, cloudprovider *SCloudprovider, region *SCloudregion) (*SVpc, error) { externalId := manager.getVpcExternalIdForClassicNetwork(region.Id, cloudprovider.Id) _vpc, err := db.FetchByExternalIdAndManagerId(manager, externalId, func(q *sqlchemy.SQuery) *sqlchemy.SQuery { - return q.Equals("manager_id", region.ManagerId) + return q.Equals("manager_id", cloudprovider.Id) }) if err == nil { return _vpc.(*SVpc), nil @@ -228,7 +228,7 @@ func (manager *SVpcManager) GetOrCreateVpcForClassicNetwork(ctx context.Context, vpc.SetEnabled(false) vpc.Status = api.VPC_STATUS_UNAVAILABLE vpc.ExternalId = externalId - vpc.ManagerId = region.ManagerId + vpc.ManagerId = cloudprovider.Id err = manager.TableSpec().Insert(ctx, vpc) if err != nil { return nil, errors.Wrap(err, "Insert vpc for classic network")