fapifta opened a new pull request, #5009: URL: https://github.com/apache/ozone/pull/5009
## What changes were proposed in this pull request? During the rotation of the rootCA certificate, we need to update the cached PEM format representation of the CA certificates in Ozone Manager, so that via the ServiceInfoEx object we are able to provide those to the clients. In this PR, I have separated a class called ServiceInfoProvider, into which I have pushed out all the relevant code. It attaches a listener to the OM's certificate client that manages the polling for the rootCA certificate, and then notifies this provider to update its cached data. OM every time creates a ServiceInfoEx object once it is requested via the OzoneManagerProtocol, so does the provider. The provider is needed to separate away the logic and to be able to test the handling of the renew separately and effectively. In order to utilize some pre-written utilities in the test for the Provider, I have moved the relevant methods from TestInterSCMProtocolService to a test utility class under hdds-common. With that I had to move the HDDSKeyGenerator utility class in the production code as well, so that it is available for the test utilities. Both of these are general utilities, so they are rightfully placed in hdds-common I believe. NOTE: this PR is a draft to enable review, while we are waiting a couple of included preliminary patches to arrive. I will rebase once those are in, and move from draft. CI: https://github.com/fapifta/hadoop-ozone/actions/runs/5422533623 ## What is the link to the Apache JIRA https://issues.apache.org/jira/browse/HDDS-8605 ## How was this patch tested? Added UT for the new functionality. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
