NIFI-228 fixed build to always create assembly non-attached and to use curren maven approaches

This commit is contained in:
joewitt 2015-01-06 13:43:54 -05:00
parent 23dcdeb61b
commit 33ad7934ea
2 changed files with 118 additions and 121 deletions

View File

@ -27,69 +27,27 @@
<description>This is the assembly Apache NiFi (incubating)</description> <description>This is the assembly Apache NiFi (incubating)</description>
<build> <build>
<plugins> <plugins>
<plugin>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>unpack-shared-resources</id>
<goals>
<goal>unpack-dependencies</goal>
</goals>
<phase>generate-resources</phase>
<configuration>
<outputDirectory>${project.build.directory}/generated-resources</outputDirectory>
<includeArtifactIds>nifi-resources</includeArtifactIds>
<includeGroupIds>org.apache.nifi</includeGroupIds>
<excludeTransitive>false</excludeTransitive>
</configuration>
</execution>
<execution>
<id>unpack-docs</id>
<goals>
<goal>unpack-dependencies</goal>
</goals>
<phase>generate-resources</phase>
<configuration>
<outputDirectory>${project.build.directory}/generated-docs</outputDirectory>
<includeArtifactIds>nifi-docs</includeArtifactIds>
<includeGroupIds>org.apache.nifi</includeGroupIds>
<excludeTransitive>false</excludeTransitive>
</configuration>
</execution>
</executions>
</plugin>
<plugin> <plugin>
<artifactId>maven-assembly-plugin</artifactId> <artifactId>maven-assembly-plugin</artifactId>
<configuration> <configuration>
<descriptors> <attach>true</attach>
<descriptor>src/main/assembly/dependencies.xml</descriptor>
</descriptors>
</configuration> </configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<executions> <executions>
<execution> <execution>
<id>make shared resource</id>
<goals> <goals>
<goal>exec</goal> <goal>single</goal>
</goals> </goals>
<phase>package</phase>
<configuration>
<descriptors>
<descriptor>src/main/assembly/dependencies.xml</descriptor>
</descriptors>
</configuration>
</execution> </execution>
</executions> </executions>
<configuration>
<executable>${project.build.directory}/${project.artifactId}-${project.version}-${nifi.assembly.id}.dir/${nifi.executable}</executable>
</configuration>
</plugin> </plugin>
</plugins> </plugins>
<resources>
<resource>
<directory>${basedir}/src/main/resources</directory>
</resource>
<resource>
<directory>${project.build.directory}/generated-resources</directory>
<filtering>true</filtering>
</resource>
</resources>
</build> </build>
<dependencies> <dependencies>
<dependency> <dependency>
@ -133,14 +91,14 @@
<groupId>org.apache.nifi</groupId> <groupId>org.apache.nifi</groupId>
<artifactId>nifi-resources</artifactId> <artifactId>nifi-resources</artifactId>
<classifier>resources</classifier> <classifier>resources</classifier>
<scope>provided</scope> <!-- Provided - we don't want the zip in the libs --> <scope>runtime</scope>
<type>zip</type> <type>zip</type>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.apache.nifi</groupId> <groupId>org.apache.nifi</groupId>
<artifactId>nifi-docs</artifactId> <artifactId>nifi-docs</artifactId>
<classifier>resources</classifier> <classifier>resources</classifier>
<scope>provided</scope> <!-- Provided - we don't want the zip in the libs --> <scope>runtime</scope>
<type>zip</type> <type>zip</type>
</dependency> </dependency>
<dependency> <dependency>
@ -203,11 +161,11 @@
<artifactId>hadoop-nar</artifactId> <artifactId>hadoop-nar</artifactId>
<type>nar</type> <type>nar</type>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.apache.nifi</groupId> <groupId>org.apache.nifi</groupId>
<artifactId>kafka-nar</artifactId> <artifactId>kafka-nar</artifactId>
<type>nar</type> <type>nar</type>
</dependency> </dependency>
</dependencies> </dependencies>
<properties> <properties>
@ -359,6 +317,37 @@
</activation> </activation>
<build> <build>
<plugins> <plugins>
<plugin>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>unpack-shared-resources</id>
<goals>
<goal>unpack-dependencies</goal>
</goals>
<phase>generate-resources</phase>
<configuration>
<outputDirectory>${project.build.directory}/generated-resources</outputDirectory>
<includeArtifactIds>nifi-resources</includeArtifactIds>
<includeGroupIds>org.apache.nifi</includeGroupIds>
<excludeTransitive>false</excludeTransitive>
</configuration>
</execution>
<execution>
<id>unpack-docs</id>
<goals>
<goal>unpack-dependencies</goal>
</goals>
<phase>generate-resources</phase>
<configuration>
<outputDirectory>${project.build.directory}/generated-docs</outputDirectory>
<includeArtifactIds>nifi-docs</includeArtifactIds>
<includeGroupIds>org.apache.nifi</includeGroupIds>
<excludeTransitive>false</excludeTransitive>
</configuration>
</execution>
</executions>
</plugin>
<plugin> <plugin>
<groupId>org.codehaus.mojo</groupId> <groupId>org.codehaus.mojo</groupId>
<artifactId>rpm-maven-plugin</artifactId> <artifactId>rpm-maven-plugin</artifactId>
@ -401,6 +390,9 @@
<source> <source>
<location>../NOTICE</location> <location>../NOTICE</location>
</source> </source>
<source>
<location>../DISCLAIMER</location>
</source>
<source> <source>
<location>../README.md</location> <location>../README.md</location>
<destination>README</destination> <destination>README</destination>
@ -433,6 +425,8 @@
<dependency> <dependency>
<excludes> <excludes>
<exclude>org.apache.nifi:nifi-bootstrap</exclude> <exclude>org.apache.nifi:nifi-bootstrap</exclude>
<exclude>org.apache.nifi:nifi-resources</exclude>
<exclude>org.apache.nifi:nifi-docs</exclude>
</excludes> </excludes>
</dependency> </dependency>
</mapping> </mapping>
@ -440,7 +434,7 @@
<directory>/opt/nifi/nifi-${project.version}/lib/bootstrap</directory> <directory>/opt/nifi/nifi-${project.version}/lib/bootstrap</directory>
<dependency> <dependency>
<includes> <includes>
<include>org.apache.nifi:nifi-bootstrap</include> <include>org.apache.nifi:nifi-bootstrap</include>
</includes> </includes>
</dependency> </dependency>
</mapping> </mapping>

View File

@ -17,94 +17,97 @@
<id>bin</id> <id>bin</id>
<formats> <formats>
<format>dir</format> <format>dir</format>
<format>zip</format>
<format>tar.gz</format> <format>tar.gz</format>
</formats> </formats>
<includeBaseDirectory>true</includeBaseDirectory> <includeBaseDirectory>true</includeBaseDirectory>
<baseDirectory>${project.artifactId}-${project.version}</baseDirectory> <baseDirectory>${project.artifactId}-${project.version}</baseDirectory>
<dependencySets> <dependencySets>
<!-- Write out all dependency artifacts to lib directory -->
<dependencySet> <dependencySet>
<scope>runtime</scope> <scope>runtime</scope>
<useProjectArtifact>false</useProjectArtifact> <useProjectArtifact>false</useProjectArtifact>
<outputDirectory>lib</outputDirectory> <outputDirectory>lib</outputDirectory>
<directoryMode>0750</directoryMode>
<fileMode>0640</fileMode>
<useTransitiveFiltering>true</useTransitiveFiltering> <useTransitiveFiltering>true</useTransitiveFiltering>
<excludes> <excludes>
<exclude>nifi-bootstrap</exclude> <exclude>nifi-bootstrap</exclude>
<exclude>nifi-resources</exclude>
<exclude>nifi-docs</exclude>
</excludes> </excludes>
</dependencySet> </dependencySet>
<!-- Write out the bootstrap lib component to its own dir -->
<dependencySet> <dependencySet>
<scope>runtime</scope> <scope>runtime</scope>
<useProjectArtifact>false</useProjectArtifact> <useProjectArtifact>false</useProjectArtifact>
<outputDirectory>lib/bootstrap</outputDirectory> <outputDirectory>lib/bootstrap</outputDirectory>
<directoryMode>0750</directoryMode>
<fileMode>0640</fileMode>
<useTransitiveFiltering>true</useTransitiveFiltering> <useTransitiveFiltering>true</useTransitiveFiltering>
<includes> <includes>
<include>nifi-bootstrap</include> <include>nifi-bootstrap</include>
</includes> </includes>
</dependencySet> </dependencySet>
<!-- Write out the conf directory contents -->
<dependencySet>
<scope>runtime</scope>
<useProjectArtifact>false</useProjectArtifact>
<outputDirectory>./</outputDirectory>
<directoryMode>0750</directoryMode>
<fileMode>0640</fileMode>
<useTransitiveFiltering>true</useTransitiveFiltering>
<includes>
<include>nifi-resources</include>
</includes>
<unpack>true</unpack>
<unpackOptions>
<filtered>true</filtered>
<includes>
<include>conf/*</include>
</includes>
</unpackOptions>
</dependencySet>
<!-- Write out the bin directory contents -->
<dependencySet>
<scope>runtime</scope>
<useProjectArtifact>false</useProjectArtifact>
<outputDirectory>./</outputDirectory>
<directoryMode>0750</directoryMode>
<fileMode>0750</fileMode>
<useTransitiveFiltering>true</useTransitiveFiltering>
<includes>
<include>nifi-resources</include>
</includes>
<unpack>true</unpack>
<unpackOptions>
<filtered>true</filtered>
<includes>
<include>bin/*</include>
</includes>
</unpackOptions>
</dependencySet>
<!-- Writes out the docs directory contents -->
<dependencySet>
<scope>runtime</scope>
<useProjectArtifact>false</useProjectArtifact>
<outputDirectory>docs/</outputDirectory>
<useTransitiveFiltering>true</useTransitiveFiltering>
<includes>
<include>nifi-docs</include>
</includes>
<unpack>true</unpack>
<unpackOptions>
<filtered>false</filtered>
</unpackOptions>
</dependencySet>
</dependencySets> </dependencySets>
<fileSets>
<fileSet>
<directory>${project.build.directory}/generated-resources/bin</directory>
<outputDirectory>bin</outputDirectory>
<directoryMode>0750</directoryMode>
<fileMode>0750</fileMode>
<filtered>false</filtered>
</fileSet>
<fileSet>
<directory>${project.build.directory}/generated-resources/conf</directory>
<outputDirectory>conf</outputDirectory>
<excludes>
<exclude>nifi.properties</exclude>
</excludes>
<directoryMode>0750</directoryMode>
<fileMode>0640</fileMode>
<filtered>true</filtered>
</fileSet>
<fileSet>
<directory>${project.build.directory}/generated-resources/lib</directory>
<outputDirectory>lib</outputDirectory>
<directoryMode>0750</directoryMode>
<fileMode>0640</fileMode>
</fileSet>
<fileSet>
<directory>${project.build.directory}/generated-resources/logs</directory>
<outputDirectory>logs</outputDirectory>
<directoryMode>0750</directoryMode>
<fileMode>0640</fileMode>
</fileSet>
<fileSet>
<directory>${project.build.directory}/generated-resources/docs</directory>
<outputDirectory>docs</outputDirectory>
<directoryMode>0750</directoryMode>
<fileMode>0640</fileMode>
<filtered>false</filtered>
</fileSet>
<fileSet>
<directory>${project.build.directory}/generated-docs/</directory>
<outputDirectory>docs</outputDirectory>
<directoryMode>0750</directoryMode>
<fileMode>0640</fileMode>
<filtered>false</filtered>
</fileSet>
</fileSets>
<files> <files>
<file>
<source>${project.build.directory}/generated-resources/conf/nifi.properties</source>
<outputDirectory>conf</outputDirectory>
<destName>${project.artifactId}.properties</destName>
<fileMode>0640</fileMode>
<filtered>true</filtered>
</file>
<file>
<source>${project.build.directory}/generated-resources/bin/nifi.sh</source>
<outputDirectory>bin</outputDirectory>
<destName>nifi.sh</destName>
<fileMode>0750</fileMode>
<filtered>true</filtered>
</file>
<file> <file>
<source>../README.md</source> <source>../README.md</source>
<outputDirectory>./</outputDirectory> <outputDirectory>./</outputDirectory>