You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@nifi.apache.org by "Otto Fowler (JIRA)" <ji...@apache.org> on 2017/03/20 17:54:41 UTC

[jira] [Created] (NIFI-3628) Allow configuration of nifi-nar-maven-plugin to control output and manifest

Otto Fowler created NIFI-3628:
---------------------------------

             Summary: Allow configuration of nifi-nar-maven-plugin to control output and manifest
                 Key: NIFI-3628
                 URL: https://issues.apache.org/jira/browse/NIFI-3628
             Project: Apache NiFi
          Issue Type: New Feature
            Reporter: Otto Fowler


The nifi-nar-maven-plugin produces .nar files, and also looks for 'special' nar dependencies with .nar extensions. 

It also inserts manifest entries with special nifi properties used by the nifi runtime system ( nifi-nar-utils ).

The changes proposed here would allow for other projects to use nar formatted archives while specializing them to fit that project.

Specifically - 

Allowing the configuration of the prefix used when writing out the nar specific manifest entries ( Nar-Group etc ), such that another project could change those properters to be Other-Group etc.

Utilizing the 'type' property to control the output file extension name, and removing hard coded 'nar' strings.

This should be done in both the NarMojo and the NarDependencyMojo.

The NarDependencyMojo should be modified to honor the type parameter setting, instead of a hard coded value as well.

These changes should be made such as with default settings no modifications to existing NiFi bundles will be required

With these changes, other projects, such as Apache Metron (incubating) will have the ability to use and adapt the nar artifacts without forking or creating duplicate functionality in the long run.

A sample configuration would be :

<plugins>
      <plugin>
        <groupId>org.apache.nifi</groupId>
        <artifactId>nifi-nar-maven-plugin</artifactId>
        <version>1.2.1-SNAPSHOT</version>
        <configuration>
          <packageIDPrefix>Par</packageIDPrefix>
          <narDependencyVersion>1.0</narDependencyVersion>
          <narDependencyId>foo</narDependencyId>
          <narDependencyGroup>foobars</narDependencyGroup>
          <type>par</type>
          <mode>pom</mode>
        </configuration>
      </plugin>
    </plugins>




--
This message was sent by Atlassian JIRA
(v6.3.15#6346)