Commit Graph

39 Commits

Author SHA1 Message Date
dan-s1 a5086a9eb2
NIFI-14067 Replaced anonymous classes with lambdas (#9571)
Signed-off-by: David Handermann <exceptionfactory@apache.org>
2024-12-09 20:59:52 -06:00
dan-s1 ba9273f8fa
NIFI-14051 Removed unnecessary generic type declarations (#9562)
Signed-off-by: David Handermann <exceptionfactory@apache.org>
2024-12-06 16:56:02 -06:00
Matt Gilman f744deebf9
NIFI-13976 Added REST Endpoints for Copying and Pasting Flows (#9535)
- Including the revision for the current Process Group in the flow response.
- Introduce a method propose built for adding new versioned components to an existing Process Group.
- Updating the paste response payload to only include the entities for the components that were just added.
- Always generating new IDs when copying components.
- Creating an ID for the copy action.
- Code clean up.
- Mapping IDs on paste to ensure connections are created correctly.
- Authorizing any components whose instance IDs are specified.
- Copying any sensitive properties from copied instances when pasting.
- Fixing mapping of copy response to ensure that nested Controller Services can be referenced.
- Including external Controller Services in copy response to they can be resolved on paste.
- Excluding unreferenced services from copy response.
- Including property descriptors to allow external services to resolve when pasting.
- Including Parameters and Parameter Providers in copy response.
- Fixing issue returning unreferenced services in the current process group.
- Reverting changes building up external service references.
- Only including external services that are references by the copy selection.
- Adding some additional test coverage.
- Adding consideration for the current ids in the paste id mapping.
- Adding an endpoint response merger for the paste endpoint.
- Including version control information in copy response.
- Being more lenient when pasting unknown registry clients.
- Ensuring groups IDs are mapped correctly when and when not versioned.
- Including registry client id in vci of versioned process groups.
- Updating copy/paste logic in existing system tests to leverage new endpoints.
- Restoring originally proposed port name if possible.
- Allow ports to be pasted into the root group.
- Fixing authorization issue when pasting a flow containing Parameter Providers.
- Fixing issue when authorizing exporting a Flow that contains a Process Group bound to a Parameter Context.
- Introducing some Copy/Paste system tests.
- Adding system tests for verify various copy paste functionality.
- Ensuring appropriate access around Parameter Providers following resolution based on locally available Parameter Providers.
- Ensuring user has access to controller services directly referenced.
- Fixing NPE in log message of Parameter Context.
- Adding more copy/paste system tests.
- Moving copy/paste version tests into the CopyPasteIT.
- Fixing unit test mocking.
- Include service authorization based on versioned component id since it may resolve during synchronization.
- Skipping properties with no values when resolving service identifiers.

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2024-11-22 15:11:29 -06:00
Pierre Villard 3fd3957b83
NIFI-13682 Fixed Flow Versioning when changing Label styles (#9526)
Signed-off-by: David Handermann <exceptionfactory@apache.org>
2024-11-15 16:16:09 -06:00
Pierre Villard 461fdd9f6f
NIFI-13608 - Handle NPE from Empty All Queues when there is no queue (#9527) 2024-11-15 14:36:26 -05:00
exceptionfactory 4adc2be12b
NIFI-13915 Updated version to 2.1.0-SNAPSHOT 2024-11-01 22:56:08 -05:00
exceptionfactory 2f13b609bd
NIFI-13915 Updated version to 2.0.0 2024-10-29 20:25:32 -05:00
Mark Payne 6d6adfeaeb
NIFI-13929 Fixed Provenance Event Handling for Stateless Engine (#9446)
Removed Provenance Repository from the stateless RepositoryContextFactory and added it to the DataflowTriggerContext. This was necessary because the previous design overlooked the possibility of many threads concurrently running the same dataflow. They all shared the same StatelessProvenanceRepository, but the code was designed as if only a single thread would be using the repository. As a result, the events that were registered with the stateless prov repo were being copied many times into NiFi's underlying provenance repository. This refactoring also led to the discovery of some old Java 8 syntax that could be cleaned up, and it led to the discovery of some methods that were no longer being used and could be cleaned up. Finally, in testing, I found that when a Stateless Group was scheduled, it scheduled the triggering of the stateless group before marking the state as RUNNING; as a result, the second thread could run, determine that the state is STARTING instead of RUNNING, and return without triggering the stateless group. This was addressed by ensuring that we set the state to RUNNING before triggering the stateless group to be triggered.

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2024-10-26 09:23:50 -05:00
jrsteinebrey 1aabc615ce
NIFI-13755 Improved Controller Service Enabling Process (#9273)
- Updated Standard Controller Service Provider to enable requested Controller Services that do not depend on a disabled Controller Service, instead of failing to enable the entire set of requested Controller Services
- Updated enabling process improves behavior when restarting NiFi and attempting to enable large numbers of Controller Services, some of which depend on disabled Services

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2024-10-18 13:05:50 -05:00
exceptionfactory 1b37d78403
NIFI-13874 Refactored KeyStore and SSLContext Creation for Tests
This closes #9392

- Added EphemeralKeyStoreBuilder to nifi-security-ssl
- Removed nifi-security-utils
- Moved StandardTlsConfiguration to nifi-ssl-context-service
- Refactored tests to use EphemeralKeyStoreBuilder and nifi-security-cert-builder for TLS

Signed-off-by: Joseph Witt <joewitt@apache.org>
2024-10-16 09:18:59 -07:00
Joe Gresock 6258f5fe04
NIFI-13831: Adding inheritance to versioned component synchronizer parameter context synchronization when considering referencing components to restart
Signed-off-by: Csaba Bejan <bejan.csaba@gmail.com>

This closes #9338.
2024-10-04 17:56:23 -04:00
Mark Payne e9ce40d209
NIFI-12992 Reset Validation State when Updating Process Group Execution Engine (#9187)
- Do not reset validation status for a component if it is not in a state where validation will be performed

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2024-09-25 16:19:46 -05:00
Mark Payne e9577ded29
NIFI-13777 Fixed Stateless Group Startup around Controller Services (#9291)
Fixed stateless group startup around Controller Services by changing the startup logic in two ways. First, we enable Controller Services before we create the Stateless Flow. Secondly, we do not bother enabling the ephemeral Controller Services that are created during the Stateless Flow creation/synchronization. This ensures that if Processors make use of a Controller Service during its @OnScheduled method (which is part of the Stateless Flow initialization process) that the Controller Service is Enabled. It also avoids calling @OnEnabled methods of Controller Services that will never actually be used, as Processors make use of the existing Controller Services when running within standard NiFi .

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2024-09-20 13:47:47 -05:00
exceptionfactory e540f72989
NIFI-13688 Run Validation on Parameter Providers before fetching
Signed-off-by: Pierre Villard <pierre.villard.fr@gmail.com>

This closes #9220.
2024-08-30 13:42:47 +02:00
Bryan Bende 71face8ea7
NIFI-13659 Call migrateProperties on components changed in synchronization (#9201)
Signed-off-by: David Handermann <exceptionfactory@apache.org>
2024-08-29 09:25:49 -05:00
Mark Payne da9c296820
NIFI-12991 Fixed Recursive Validation of Group Execution Engine (#9186)
Fixed issue in which we recursively validate that we can change Execution Engine of a group, but without changing the top level, inherited groups can't actually be changed; instead, replaced logic to ensure that we can change the top level, that we don't validate the constraint that a STATELESS group cannot have a STATEFUL child, and then validate that all descendant groups can be updated, but without checking the descendants' parent groups.

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2024-08-20 15:26:44 -05:00
Mark Payne 60e99184f8
NIFI-12898 Added Asset Management REST API and CLI Capabilities
- Added REST resource methods for managing assets associated with Parameter Contexts
- Added CLI commands for managing assets
- Added and updated system test for assets and Parameter Contexts
- Updated flow synchronization to consider referenced asset changes
- Adjusted authorization for cluster nodes to read Parameter Contexts

This closes #9138

Co-authored-by: Bryan Bende <bbende@apache.org>
Co-authored-by: Mark Payne <markap14@hotmail.com>
Signed-off-by: David Handermann <exceptionfactory@apache.org>
2024-08-13 11:42:02 -05:00
dan-s1 f64e68b23c
NIFI-13625 Removed or Replaced System.out.println in Tests (#9150)
Signed-off-by: David Handermann <exceptionfactory@apache.org>
2024-08-05 20:35:40 -05:00
David Handermann 33da3463b6
NIFI-13594 Added web-servlet-shared abstracted from web-utils (#9123)
- Moved RequestUriBuilder from web-utils to web-servlet-shared
- Refactored proxy header parsing from WebUtils to StandardRequestUriProvider
- Renamed WebUtils to WebClientUtils

This closes #9123
2024-07-30 15:41:49 -04:00
Timea Barna f262e74170
NIFI-13439 Added Performance Status to Group Status responses
- Added ProcessingPerformanceStatus to nifi-api
- Added Performance Status to Process Group and Processor Sources for Query NiFi Reporting Task

This closes #9014

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2024-07-30 12:56:55 -05:00
David Handermann 11fdc44fb9
NIFI-13577 Corrected null handling in Parameter Value Mapper (#9107) 2024-07-24 08:01:41 -04:00
David Handermann b0f419be2c
NIFI-13560 Changed Parameter Provider handling to avoid storing values (#9102)
- Added ParameterValueMapper for handling serialization of Parameter Values for Flow Configuration
- Added Parameter Group retrieval method for Flow Synchronizer
2024-07-23 11:31:16 -04:00
Joseph Witt f92d8f72a8
NIFI-13526 Removed unused variables and localized nifi-socket-utils
- Remove nifi-socket-utils and moved remaining classes to referencing framework components

This closes #9059

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2024-07-08 13:44:42 -05:00
David Handermann 3bb79f1ba6
NIFI-13476 Optimized Authorization Checking in Process Group Status (#9021)
- Avoided invoking Authorizer when nested component is not included in Process Group Status based on depth of recursion
2024-07-01 14:58:22 -04:00
dan-s1 b3fac8c80b
NIFI-13403 Removed unnecessary toString in logging statements
This closes #8984

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2024-06-25 20:13:08 -05:00
David Handermann 42c0aa6aa7
NIFI-12125 Refactored Framework SSLContext Loading (#8967)
- Added Framework SSLContext Provider for centralized loading
- Refactored Spring Framework XML to Java Configuration
- Removed Jetty StoreScanner
2024-06-25 16:08:04 -04:00
dan-s1 957510e65a NIFI-13421 Replaced String.format in logging statements where only formatting strings (%s) with the use of logging parameters ({})
This closes #8994

Signed-off-by: Mike Thomsen <mthomsen@apache.org>
2024-06-23 18:13:39 -04:00
Mark Payne 039cd2f18a
NIFI-13340 Fixed a bug in which an Output Port can leave a Process Group's DataValve open for output, but then the last FlowFile is terminated instead of going to an Output Port, ultimately resulting in the DataValve remaining open indefinitely. Now, this will be detected and the valve will be closed.
This closes #8951

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2024-06-17 09:39:38 -05:00
dan-s1 7deac6afac
NIFI-13266 Removed String concatenation in logging messages (#8940)
Signed-off-by: David Handermann <exceptionfactory@apache.org>
2024-06-11 23:26:58 -04:00
Matt Gilman 5c335cbbec
NIFI-13364 Removed autorefresh and banner UI properties
This closes #8932

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2024-06-06 08:34:17 -05:00
dan-s1 86d36d2327
NIFI-13265 Removed instantiation of Object arrays for log arguments
This closes #8896

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2024-05-30 17:17:33 -05:00
Pierre Villard ee179f4acf
NIFI-13238 Added Checkstyle rules for whitespace
This closes #8832

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2024-05-15 06:41:19 -05:00
Mark Payne 62fbd8e8b1
NIFI-13196: Added new isAutoTerminated(Relationship) method to ProcessContext, which simply delegates to Connectable.isAutoTerminated(Relationship)
This closes #8790

Signed-off-by: Joseph Witt <joewitt@apache.org>
2024-05-10 11:37:47 -07:00
Mark Payne 9cf5f947e8
NIFI-13200: Do not allow 'filename' or 'path' attribute to removed from FlowFile
This closes #8791

Signed-off-by: Joseph Witt <joewitt@apache.org>
2024-05-09 16:22:49 -07:00
Bryan Bende 7cd1a30948
NIFI-13105 Implemented FlowRegistryClient using GitHub for versioning
This closes #8765

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2024-05-09 13:38:05 -05:00
Bryan Bende e7567b04e2
NIFI-13120 Introduce branch as a concept in Registry Client and VCI
- Methods for getBranches, getDefaultBranch, and createBranch in flow registry client
- Add branch as a field to all relevant objects
- Add optional branch argument to REST API for retrieving buckets
- Add new REST API for retrieving branches for a given registry client
- Enforce NiFi Registry can only receive default branch

This closes #8726

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2024-05-07 08:44:33 -05:00
Joseph Witt 7540991a59
Revert "NIFI-12973 Add Process Group scope to Flow Analysis rules"
After commentary in the JIRA regarding UX and nifi-api considerations needing further discussion and resolution.

This reverts commit bc75ef108c.
2024-05-06 12:39:27 -07:00
tpalfy bc75ef108c
NIFI-12973 Add Process Group scope to Flow Analysis rules
Signed-off-by: Pierre Villard <pierre.villard.fr@gmail.com>

This closes #8682.
2024-05-06 20:26:34 +03:00
Joseph Witt 42a4385c82
NIFI-12998 Restructured framework and extension modules
Simplified dependency management into Bill of Material dependencies as parents that align to classloader structures.

- Moved nifi-framework-bundle to root level
- Moved nifi-nar-bundle modules to root nifi-extension-bundles
- Added nifi-extension-bom for internal and external extensions
- Added nifi-framework-nar-bom and nifi-server-nar-bom for managing framework dependencies
- Renamed nifi-jetty-bundle to nifi-jetty-nar

This closes #8677

Signed-off-by: David Handermann <exceptionfactory@apache.org>
2024-04-26 12:12:48 -05:00