You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
providers/azure/services/search/ is fully implemented (GetRecommendations, GetExistingCommitments, PurchaseCommitment, ValidateOffering, GetOfferingDetails, GetValidResourceTypes) but is never reachable — GetSupportedServices() and GetServiceClient() in providers/azure/provider.go have no reference to it.
It needs to be wired up:
Add common.ServiceSearch to the GetSupportedServices() return slice
Add a case common.ServiceSearch: branch in GetServiceClient() returning NewSearchClient(...)
Azure-Only (AWS gaps)
CosmosDB — no AWS NoSQL equivalent in CUDly
Azure Search — once wired up, AWS OpenSearch is the counterpart
Notes
All service clients that are implemented (both providers) share the full ServiceClient interface: GetRecommendations, GetExistingCommitments, PurchaseCommitment, ValidateOffering, GetOfferingDetails, GetValidResourceTypes
Azure tags reservations inline at purchase time (embedded in the PUT body); AWS EC2/OpenSearch/Redshift make a separate tagging call post-purchase — this is parity via different mechanisms, not a gap
GetRIUtilization is an AWS-specific extension explicitly outside the provider.RecommendationsClient interface
PR #560 addresses the Azure Search wiring sub-task: GetSupportedServices() now includes ServiceSearch and GetServiceClient() dispatches to NewSearchClient(). Also fixed the pre-existing ServiceOther misclassification in the search client itself.
Remaining open gaps from the original analysis (not addressed by #560):
CosmosDB client service type (check if it also returns ServiceOther vs ServiceNoSQL)
Any other service clients not yet wired (check the issue description for the full list)
The GetValidResourceTypes / ValidateOffering patterns may need integration testing once the client is reachable
Activity
cristim commentedon May 20, 2026
Sub-issues Filed
This meta-tracker has been split into the following triaged sub-issues:
See individual issues for detailed scope, acceptance criteria, and suggested approaches.
cristim commentedon May 20, 2026
PR #560 addresses the Azure Search wiring sub-task:
GetSupportedServices()now includesServiceSearchandGetServiceClient()dispatches toNewSearchClient(). Also fixed the pre-existingServiceOthermisclassification in the search client itself.Remaining open gaps from the original analysis (not addressed by #560):
GetValidResourceTypes/ValidateOfferingpatterns may need integration testing once the client is reachablecristim commentedon May 20, 2026
Status update on the 7 split-out sub-issues:
providers/azure/provider.goswitch +go.modAzure SDK deps, so concurrent agents would merge-conflict heavily. Will pick them up serially after the two P2s land.Plus PR for the Azure Search wiring sub-task is in flight under separate branch
fix/issue-473-azure-search-wiring.feat(providers/azure): add RI utilization reporting (closes #558) (#563)
feat(azure/ri-exchange): list exchangeable Azure VM reservations (refs …
feat(azure): multi-subscription enumeration parity with AWS Organizat…
feat(azure/savings-plans): provider client + dispatch wiring (refs #473)
2 remaining items
fix(providers/azure): wire Azure Search client into provider (closes #…
feat(providers/azure/synapse): add data-warehouse service client (closes
feat(azure/savings-plans): provider client + dispatch wiring (refs #473…
fix(providers/azure): wire Azure Search client into provider (closes #…
feat(providers/azure/synapse): add data-warehouse service client (closes
feat(providers/azure/synapse): add data-warehouse service client (closes
fix(providers/azure): wire Azure Search client into provider (closes #…
feat(providers/azure/synapse): add data-warehouse service client (closes
fix(providers/azure): wire Azure Search client into provider (closes #…
fix(providers/azure): wire Azure Search client into provider (closes #…
feat(azure/compute): CalculateExchange and DoExchange client operations
feat(azure/ri-exchange): find compatible offerings and execute exchan…
feat(azure/ri-exchange): list exchangeable Azure VM reservations (refs …
feat(azure/savings-plans): provider client + dispatch wiring (refs #473…