Skip to content

NIFI-13651 moved framework extension modules to new framework extensions module#9169

Closed
joewitt wants to merge 1 commit intoapache:mainfrom
joewitt:NIFI-13651
Closed

NIFI-13651 moved framework extension modules to new framework extensions module#9169
joewitt wants to merge 1 commit intoapache:mainfrom
joewitt:NIFI-13651

Conversation

@joewitt
Copy link
Copy Markdown
Contributor

@joewitt joewitt commented Aug 9, 2024

Summary

NIFI-13651

Tracking

Please complete the following tracking steps prior to pull request creation.

Issue Tracking

Pull Request Tracking

  • Pull Request title starts with Apache NiFi Jira issue number, such as NIFI-00000
  • Pull Request commit message starts with Apache NiFi Jira issue number, as such NIFI-00000

Pull Request Formatting

  • Pull Request based on current revision of the main branch
  • Pull Request refers to a feature branch with one commit containing changes

Verification

Please indicate the verification steps performed prior to pull request creation.

Build

  • Build completed using mvn clean install -P contrib-check
    • JDK 21

Licensing

  • New dependencies are compatible with the Apache License 2.0 according to the License Policy
  • New dependencies are documented in applicable LICENSE and NOTICE files

Documentation

  • Documentation formatting appears as expected in rendered files

@joewitt
Copy link
Copy Markdown
Contributor Author

joewitt commented Aug 9, 2024

Key points:

  1. nothing in 'nifi-extensions' has access/reference to NiFiProperties class anymore.
  2. moved remaining extensions that are really extensions to core nifi framework and not meant as generally user extensible points to nifi-framework-extensions. These currently do reference NiFiProperties in most cases. This should be refactored out in a later JIRA
  3. Removed defunct reference to NiFiProperties in an hdfs events test.

nifi-property-utils and nifi-properties should fine their way out of the root lib directory. They should at most be in the nifi framework nar and the framework extensions should likely have the framework nar as their parent to be bound at that level. But more work is needed to understand the relationship of the bootstrap folder and the properties to the framework.

Copy link
Copy Markdown
Contributor

@exceptionfactory exceptionfactory left a comment

Choose a reason for hiding this comment

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

Thanks for putting together these changes @joewitt, placing framework-level extensions in a separate category provides a very helpful distinction. The general approach looks good, I plan to take a closer look, but this appears to cover the applicable modules on initial review.

Copy link
Copy Markdown
Contributor

@exceptionfactory exceptionfactory left a comment

Choose a reason for hiding this comment

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

@joewitt Reviewing other modules in nifi-extensions-bundles, the nifi-py4j-bundle is one other candidate for moving to the nifi-framework-extensions because it supports the Python Processor integration at the framework level.

@bbende
Copy link
Copy Markdown
Contributor

bbende commented Aug 12, 2024

@joewitt @exceptionfactory Thoughts on moving nifi-framework-kubernetes-bundle under nifi-framework-extensions ? It is currently nested under nifi-framework-bundle/nifi-framework.

@exceptionfactory
Copy link
Copy Markdown
Contributor

@bbende That's a good point, I agree the nifi-framework-kubernetes-bundle fits under nifi-framework-extensions as well.

@joewitt
Copy link
Copy Markdown
Contributor Author

joewitt commented Aug 12, 2024

rgr. will grab nifi-py4j-bundle and nifi-framework-kubernetes-bundle to move there as well

@joewitt
Copy link
Copy Markdown
Contributor Author

joewitt commented Aug 12, 2024

breaking apart the 'nifi-py4j-bundle' as a few modules go together in a framework sense. And a few modules go together as examples/tests/impls as an extension. The nifi-py4j-bridge component actually combines core framework elements and ties to extension concepts such as 'records' and such. Until we promote 'records' as part of the official/formal API this seems like the right place for these few. Will have that in the next commit but the next commit will squash and rebase to latest main as well

@joewitt
Copy link
Copy Markdown
Contributor Author

joewitt commented Aug 13, 2024

ok i think i addressed each of the suggestions. Full clean build and all the trimmings works as expected.

…ork-bundle and ensure nothing in nifi-extension-bundles references nifi-property-utils
Copy link
Copy Markdown
Contributor

@exceptionfactory exceptionfactory left a comment

Choose a reason for hiding this comment

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

Thanks for making the adjustments @joewitt, this is a helpful restructuring of framework-specific extension modules. +1 merging

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.

3 participants