-
Notifications
You must be signed in to change notification settings - Fork 95
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implementation of resource providers and resource types registration #7967
Conversation
pkg/ucp/frontend/controller/resourceproviders/getresourceprovidersummary.go
Show resolved
Hide resolved
e4547fb
to
9f6be61
Compare
Radius functional test overview
Click here to see the list of tools in the current test run
Test Status⌛ Building Radius and pushing container images for functional tests... |
swagger/specification/ucp/resource-manager/UCP/preview/2023-10-01-preview/openapi.json
Show resolved
Hide resolved
swagger/specification/ucp/resource-manager/UCP/preview/2023-10-01-preview/openapi.json
Show resolved
Hide resolved
swagger/specification/ucp/resource-manager/UCP/preview/2023-10-01-preview/openapi.json
Show resolved
Hide resolved
swagger/specification/ucp/resource-manager/UCP/preview/2023-10-01-preview/openapi.json
Outdated
Show resolved
Hide resolved
d0a412a
to
d154add
Compare
@kachawla @lakshmimsft @sk593 - updated. Big updates:
|
Radius functional test overview
Click here to see the list of tools in the current test run
Test Status⌛ Building Radius and pushing container images for functional tests... |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
very cool changes. lgtm 🚀
.../resource-manager/UCP/preview/2023-10-01-preview/examples/ResourceGroups_CreateOrUpdate.json
Show resolved
Hide resolved
...tion/ucp/resource-manager/UCP/preview/2023-10-01-preview/examples/ResourceGroups_Update.json
Show resolved
Hide resolved
pkg/ucp/backend/controller/resourceproviders/resourceprovider_put_test.go
Outdated
Show resolved
Hide resolved
This change implements the API functionality for registering resource providers and related child-types through the Radius API. This is the first step towards making the Radius API surface extensible. For this first step there is no consumer of this data or these APIs. Subsequent changes will consume the data and implement the user-facing functionality. What's possible in this commit: - CRUDL operations on resource provider and related types like: - resource type - api version (child of resource type) - location Additionally, this change implements the resource provider "summary" API. The summary API provides a combined view of the most useful data from each resource provider and its children. --- For reviewers there are a few important notes: - Routing in UCP is complex, and error prone to work on. I abandoned the existing code and rewrote it in a form that's more native to go-chi. This was a significant improvement and made it much easier to debug the code. UCP has good integration tests so I'm not very concerned about regressions. - This is our first use-case for child resources in Radius. I used the async controllers to implement cascading deletion. - The "summary" API uses cached data. The async controllers for resource provider and other types update the cache. This is our first use of this pattern, but it felt right to me. Signed-off-by: Ryan Nowak <[email protected]>
9f09698
to
001dbf7
Compare
@lakshmimsft updated |
Radius functional test overview
Click here to see the list of tools in the current test run
Test Status⌛ Building Radius and pushing container images for functional tests... |
Description
This change implements the API functionality for registering resource providers and related child-types through the Radius API. This is the first step towards making the Radius API surface extensible. For this first step there is no consumer of this data or these APIs. Subsequent changes will consume the data and implement the user-facing functionality.
What's possible in this commit:
Additionally, this change implements the resource provider "summary" API. The summary API provides a combined view of the most useful data from each resource provider and its children.
For reviewers there are a few important notes:
Type of change
Part of: #6688