| 104 | } |
| 105 | |
| 106 | func (meta MetaQuery) queryResourceSet(ctx context.Context, predicate string, recursive bool) (*resourceset.AzureResourceSet, error) { |
| 107 | opt := azlist.Option{ |
| 108 | Logger: meta.logger.WithGroup("azlist"), |
| 109 | SubscriptionId: meta.subscriptionId, |
| 110 | Cred: meta.azureSDKCred, |
| 111 | ClientOpt: meta.azureSDKClientOpt, |
| 112 | Parallelism: meta.parallelism, |
| 113 | Recursive: recursive, |
| 114 | IncludeResourceGroup: meta.includeResourceGroup, |
| 115 | ExtensionResourceTypes: extBuilder{includeRoleAssignment: meta.includeRoleAssignment}.Build(), |
| 116 | IncludeManaged: meta.includeManagedResource, |
| 117 | ARGTable: meta.argTable, |
| 118 | ARGAuthorizationScopeFilter: meta.argAuthenticationScopeFilter, |
| 119 | } |
| 120 | lister, err := azlist.NewLister(opt) |
| 121 | if err != nil { |
| 122 | return nil, fmt.Errorf("building azlister: %v", err) |
| 123 | } |
| 124 | result, err := lister.ListByQuery(ctx, predicate) |
| 125 | if err != nil { |
| 126 | return nil, fmt.Errorf("listing resource set: %w", err) |
| 127 | } |
| 128 | |
| 129 | var rl []resourceset.AzureResource |
| 130 | for _, res := range result.Resources { |
| 131 | res := resourceset.AzureResource{ |
| 132 | Id: res.Id, |
| 133 | } |
| 134 | rl = append(rl, res) |
| 135 | } |
| 136 | |
| 137 | return &resourceset.AzureResourceSet{Resources: rl}, nil |
| 138 | } |