in pkg/cloud/network.go [36:58]
func (c *client) ResolveNetwork(csCluster *infrav1.CloudStackCluster) (retErr error) {
networkID, count, err := c.cs.Network.GetNetworkID(csCluster.Spec.Network)
if err != nil {
retErr = multierror.Append(retErr, errors.Wrapf(
err, "Could not get Network ID from %s.", csCluster.Spec.Network))
networkID = csCluster.Spec.Network
} else if count != 1 {
retErr = multierror.Append(retErr, errors.Errorf(
"Expected 1 Network with name %s, but got %d.", csCluster.Spec.Network, count))
}
if networkDetails, count, err := c.cs.Network.GetNetworkByID(networkID); err != nil {
return multierror.Append(retErr, errors.Wrapf(
err, "Could not get Network by ID %s.", networkID))
} else if count != 1 {
return multierror.Append(retErr, errors.Errorf(
"Expected 1 Network with UUID %s, but got %d.", networkID, count))
} else {
csCluster.Status.NetworkID = networkID
csCluster.Status.NetworkType = networkDetails.Type
}
return nil
}