Skip to content
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

Implement resource provider API for dynamic rp #8177

Merged
merged 2 commits into from
Dec 31, 2024

Conversation

rynowak
Copy link
Contributor

@rynowak rynowak commented Dec 30, 2024

Description

This change implements the standard resource provider API for dynamic resources. This enables the dynamic-rp to serve the standard CRUDL API functionality for user-defined types.

This change does NOT add recipe support, that will come in the next change. The pattern that's supported by this change is an "inert" resource which has no backend functionality. Recipe support will be a superset of this functionality.

Type of change

Part of: #6688

Contributor checklist

Please verify that the PR meets the following requirements, where applicable:

  • An overview of proposed schema changes is included in a linked GitHub issue.
  • A design document PR is created in the design-notes repository, if new APIs are being introduced.
  • If applicable, design document has been reviewed and approved by Radius maintainers/approvers.
  • A PR for the samples repository is created, if existing samples are affected by the changes in this PR.
  • A PR for the documentation repository is created, if the changes in this PR affect the documentation or any user facing updates are made.
  • A PR for the recipes repository is created, if existing recipes are affected by the changes in this PR.

This change implements the standard resource provider API for dynamic resources. This enables the dynamic-rp to serve the standard CRUDL API functionality for user-defined types.

This change does NOT add recipe support, that will come in the next change. The pattern that's supported by this change is an "inert" resource which has no backend functionality. Recipe support will be a superset of this functionality.

Signed-off-by: Ryan Nowak <[email protected]>
@@ -104,6 +104,7 @@ jobs:
node-version: "22"
- name: Run `make format-check`
id: format-check
continue-on-error: true
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@@ -14,16 +14,18 @@
# limitations under the License.
# ------------------------------------------------------------

.PHONY: prettier-check prettier-format me prettier
##@ Formatting (of JSON files)
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@ytimocin - this was missing from the help displayed when running make.

@echo "$(ARROW) Reformatting files using prettier..."
@echo ""
@npx prettier@$(PRETTIER_VERSION) --write "*/**/*.{ts,js,mjs,json}"
@npx --yes prettier@$(PRETTIER_VERSION) --write "*/**/*.{ts,js,mjs,json}"
Copy link
Contributor Author

@rynowak rynowak Dec 30, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@ytimocin --yes should be included here to suppress the prompt.

Copy link

codecov bot commented Dec 30, 2024

Codecov Report

Attention: Patch coverage is 69.27374% with 55 lines in your changes missing coverage. Please review.

Project coverage is 60.05%. Comparing base (4952890) to head (d9a16ec).
Report is 1 commits behind head on main.

Files with missing lines Patch % Lines
pkg/dynamicrp/api/dynamicresource_conversion.go 69.56% 14 Missing and 7 partials ⚠️
...kg/dynamicrp/backend/dynamicresource_controller.go 55.88% 13 Missing and 2 partials ⚠️
...p/datamodel/converter/dynamicresource_converter.go 59.09% 6 Missing and 3 partials ⚠️
pkg/dynamicrp/backend/service.go 0.00% 7 Missing ⚠️
pkg/dynamicrp/backend/inert_delete_controller.go 70.00% 2 Missing and 1 partial ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #8177      +/-   ##
==========================================
- Coverage   60.07%   60.05%   -0.03%     
==========================================
  Files         579      584       +5     
  Lines       38504    38675     +171     
==========================================
+ Hits        23133    23226      +93     
- Misses      13669    13737      +68     
- Partials     1702     1712      +10     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@rynowak rynowak temporarily deployed to functional-tests December 31, 2024 17:56 — with GitHub Actions Inactive
@radius-functional-tests
Copy link

radius-functional-tests bot commented Dec 31, 2024

Radius functional test overview

🔍 Go to test action run

Name Value
Repository rynowak/radius
Commit ref abe5efc
Unique ID func35a0727056
Image tag pr-func35a0727056
Click here to see the list of tools in the current test run
  • gotestsum 1.12.0
  • KinD: v0.20.0
  • Dapr:
  • Azure KeyVault CSI driver: 1.4.2
  • Azure Workload identity webhook: 1.3.0
  • Bicep recipe location ghcr.io/radius-project/dev/test/testrecipes/test-bicep-recipes/<name>:pr-func35a0727056
  • Terraform recipe location http://tf-module-server.radius-test-tf-module-server.svc.cluster.local/<name>.zip (in cluster)
  • applications-rp test image location: ghcr.io/radius-project/dev/applications-rp:pr-func35a0727056
  • dynamic-rp test image location: ghcr.io/radius-project/dev/dynamic-rp:pr-func35a0727056
  • controller test image location: ghcr.io/radius-project/dev/controller:pr-func35a0727056
  • ucp test image location: ghcr.io/radius-project/dev/ucpd:pr-func35a0727056
  • deployment-engine test image location: ghcr.io/radius-project/deployment-engine:latest

Test Status

⌛ Building Radius and pushing container images for functional tests...
✅ Container images build succeeded
⌛ Publishing Bicep Recipes for functional tests...
✅ Recipe publishing succeeded
⌛ Starting corerp-cloud functional tests...
⌛ Starting ucp-cloud functional tests...
✅ ucp-cloud functional tests succeeded
✅ corerp-cloud functional tests succeeded

@radius-functional-tests
Copy link

radius-functional-tests bot commented Dec 31, 2024

Radius functional test overview

🔍 Go to test action run

Name Value
Repository rynowak/radius
Commit ref d9a16ec
Unique ID func9e436a0425
Image tag pr-func9e436a0425
Click here to see the list of tools in the current test run
  • gotestsum 1.12.0
  • KinD: v0.20.0
  • Dapr:
  • Azure KeyVault CSI driver: 1.4.2
  • Azure Workload identity webhook: 1.3.0
  • Bicep recipe location ghcr.io/radius-project/dev/test/testrecipes/test-bicep-recipes/<name>:pr-func9e436a0425
  • Terraform recipe location http://tf-module-server.radius-test-tf-module-server.svc.cluster.local/<name>.zip (in cluster)
  • applications-rp test image location: ghcr.io/radius-project/dev/applications-rp:pr-func9e436a0425
  • dynamic-rp test image location: ghcr.io/radius-project/dev/dynamic-rp:pr-func9e436a0425
  • controller test image location: ghcr.io/radius-project/dev/controller:pr-func9e436a0425
  • ucp test image location: ghcr.io/radius-project/dev/ucpd:pr-func9e436a0425
  • deployment-engine test image location: ghcr.io/radius-project/deployment-engine:latest

Test Status

⌛ Building Radius and pushing container images for functional tests...
✅ Container images build succeeded
⌛ Publishing Bicep Recipes for functional tests...
✅ Recipe publishing succeeded
⌛ Starting ucp-cloud functional tests...
✅ ucp-cloud functional tests succeeded
⌛ Starting corerp-cloud functional tests...
✅ corerp-cloud functional tests succeeded

@rynowak rynowak merged commit 710509a into radius-project:main Dec 31, 2024
29 checks passed
@rynowak
Copy link
Contributor Author

rynowak commented Dec 31, 2024

Merging this to unblock the next steps. Will address any feedback in a follow-up.

@rynowak rynowak deleted the dynamic-rp-api branch December 31, 2024 22:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant