-
Notifications
You must be signed in to change notification settings - Fork 100
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
Update long running test workflow to verify manifests are registered #8298
Update long running test workflow to verify manifests are registered #8298
Conversation
a618a6b
to
f34decb
Compare
f34decb
to
c32ff8b
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... |
Signed-off-by: lakshmimsft <ljavadekar@microsoft.com>
c32ff8b
to
d7e2165
Compare
@@ -404,6 +404,50 @@ jobs: | |||
rad install kubernetes --reinstall \ | |||
--chart ${{ env.RADIUS_CHART_LOCATION }} \ | |||
--set rp.image=${{ env.CONTAINER_REGISTRY }}/applications-rp,rp.tag=${{ env.REL_VERSION }},dynamicrp.image=${{ env.CONTAINER_REGISTRY }}/dynamic-rp,dynamicrp.tag=${{ env.REL_VERSION }},controller.image=${{ env.CONTAINER_REGISTRY }}/controller,controller.tag=${{ env.REL_VERSION }},ucp.image=${{ env.CONTAINER_REGISTRY }}/ucpd,ucp.tag=${{ env.REL_VERSION }} | |||
|
|||
echo "*** Verify manifests are registered ***" |
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.
What I am trying to understand is why we need this step. I will try to explain below:
- Adding initializer as a service here: https://github.com/radius-project/radius/blob/main/pkg/ucp/server/server.go#L49
- Running the host with all the services needed: https://github.com/radius-project/radius/blob/main/cmd/ucpd/cmd/root.go#L72
- If any one of the services has an error, shut down for UCP is initiated: https://github.com/radius-project/radius/blob/main/pkg/components/hosting/run.go#L46
If this is the case why do we need to check all the logs of UCP to see if there is an error with the initializer. We are specifically looking for this error: "Service initializer terminated with error". If that is the case, that should mean that one of the services that UCP depends on was terminated. That should trigger the termination of UCP.
Please help me understand why this wouldn't make the UCP pod fail when doing the rad install
.
rad install
is run- if one of the services of UCP fails, then UCP will fail to get to READY state
Is this wrong?
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.
Are we running an extra command after initializing the initializer
service?
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.
The initializer service waits for UCP server to be up and calls apis to add data for the manifests.
wait for ucp:
radius/pkg/ucp/initializer/service.go
Line 110 in de99173
err = waitForServer(ctx, hostName, port, 500*time.Millisecond, 500*time.Millisecond, 5*time.Second) |
The pod up, ucp is receiving requests to add these manifests.
The error we're seeing is we're trying to add groups/resources as part of the test workflow before these manifests have completed registering.
Yes, If there is an error during registering, it will cause the UCP pod to fail.
no additional/extra command is being run.
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.
I see. Thanks for explaining. The only feedback I have is that we should make this a separate step. Like Check Manifests
. We can do this in a separate PR.
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #8298 +/- ##
=======================================
Coverage 59.81% 59.82%
=======================================
Files 590 590
Lines 39513 39513
=======================================
+ Hits 23636 23639 +3
+ Misses 14116 14114 -2
+ Partials 1761 1760 -1 ☔ View full report in Codecov by Sentry. |
Sample tests are failing, does this need to be added to test samples workflow as well? |
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
Apply same verification check as was done for cloud and non-cloud tests to check for registered manifests in long running test workflow.
Type of change
Contributor checklist
Please verify that the PR meets the following requirements, where applicable: