in internal/meta/meta_rg.go [42:91]
func (meta *MetaResourceGroup) ListResource(ctx context.Context) (ImportList, error) {
meta.Logger().Debug("Query resource set")
rset, err := meta.queryResourceSet(ctx, meta.resourceGroup)
if err != nil {
return nil, err
}
var rl []resourceset.TFResource
if meta.useAzAPI() {
rl = rset.ToTFAzAPIResources()
} else {
meta.Logger().Debug("Populate resource set")
if err := rset.PopulateResource(); err != nil {
return nil, fmt.Errorf("tweaking single resources in the azure resource set: %v", err)
}
meta.Logger().Debug("Reduce resource set")
if err := rset.ReduceResource(); err != nil {
return nil, fmt.Errorf("tweaking across resources in the azure resource set: %v", err)
}
meta.Logger().Debug("Azure Resource set map to TF resource set")
rl = rset.ToTFAzureRMResources(meta.Logger(), meta.parallelism, meta.azureSDKCred, meta.azureSDKClientOpt)
}
var l ImportList
for i, res := range rl {
tfAddr := tfaddr.TFAddr{
Type: "",
Name: fmt.Sprintf("%s%d%s", meta.resourceNamePrefix, i, meta.resourceNameSuffix),
}
item := ImportItem{
AzureResourceID: res.AzureId,
TFResourceId: res.TFId,
TFAddr: tfAddr,
TFAddrCache: tfAddr,
}
if res.TFType != "" {
item.Recommendations = []string{res.TFType}
item.TFAddr.Type = res.TFType
item.TFAddrCache.Type = res.TFType
item.IsRecommended = true
}
l = append(l, item)
}
l = meta.excludeImportList(l)
return l, nil
}