-
Notifications
You must be signed in to change notification settings - Fork 80
[WIP] GNMI module #2435
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
base: main
Are you sure you want to change the base?
[WIP] GNMI module #2435
Conversation
5122ebd to
53fde6b
Compare
GnmiSouthboundProvider expected to be provided a path to initial models from json configuration. Since we are no longer relying on json configuration, we need to provide them manually.
1762ddd to
9801f2d
Compare
ihrasko
left a comment
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.
Disable maven-dependency plugin and make cleanups.
d307fa0 to
1e5cc28
Compare
We do not need this since GnmiSouthboundModule is now component
The point of this rework is to not rely on other lighty modules to run gnmi. Let's rather use what is available from opendaylight instead.
33839dc to
2d5fa35
Compare
| @@ -0,0 +1,66 @@ | |||
| <?xml version="1.0" encoding="UTF-8"?> | |||
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.
copyright on new files, please
| @@ -0,0 +1,3 @@ | |||
| -noextraheaders: true | |||
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's the purpose of this file?
features/features-gnmi/pom.xml
Outdated
|
|
||
|
|
||
| <properties> | ||
| <maven.compiler.source>21</maven.compiler.source> |
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.
Java 21 source/target should be inherited from odparent
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.
encoding, too
| @@ -0,0 +1,103 @@ | |||
| /* | |||
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.
where are these files from? what's their purpose?
| <dependency> | ||
| <groupId>org.opendaylight.aaa</groupId> | ||
| <artifactId>aaa-encrypt-service</artifactId> | ||
| <groupId>org.bouncycastle</groupId> |
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 would expect to depend on odlparent/aaa instead
| this.gnmiExecutorService, this.appModuleConfig.getGnmiConfiguration(), encryptionService, | ||
| this.customReactor); | ||
| startAndWaitLightyModule(this.gnmiSouthboundModule); | ||
| gnmiSouthboundModule.init(); |
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 next logical step would be to translate this module to OSGI and use @reference gnmiSouthboundModule
| final AAAEncryptionService encryptionService, | ||
| @Nullable final GnmiConfiguration configuration, | ||
| @Nullable final CrossSourceStatementReactor customReactor) { | ||
| @Activate |
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.
| @Activate | ||
| public GnmiSouthboundModule(@Reference DataBroker dataBroker, @Reference RpcProviderService rpcProviderService, | ||
| @Reference DOMMountPointService domMountPointService, @Reference AAAEncryptionService encryptionService) { | ||
| this.dataBroker = Objects.requireNonNull(dataBroker); |
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.
requireNonNull() with static import
| protected boolean initProcedure() { | ||
| LOG.info("Starting lighty gNMI Southbound Module"); | ||
| final List<YangLoaderService> initialLoaders = prepareByPathLoaders(); | ||
| @Activate |
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.
please check docs how to have multiple @activate methods
| .YangModuleInfoImpl.getInstance() | ||
| ); | ||
|
|
||
| public static final Set<YangModuleInfo> OPENCONFIG_YANG_MODELS = Set.of( |
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.
optional: in follow-up patches we can use dependency on mdsal/ietf features
Signed-off-by: tobias.pobocik <tobias.pobocik@pantheon.tech>
Signed-off-by: tobias.pobocik <tobias.pobocik@pantheon.tech>
Signed-off-by: tobias.pobocik <tobias.pobocik@pantheon.tech>
Signed-off-by: tobias.pobocik <tobias.pobocik@pantheon.tech>
Signed-off-by: tobias.pobocik <tobias.pobocik@pantheon.tech>
No description provided.