2016-07-06 16:56:08 -04:00
<?xml version="1.0" encoding="UTF-8"?>
<!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor
license agreements. See the NOTICE file distributed with this work for additional
information regarding copyright ownership. The ASF licenses this file to
You under the Apache License, Version 2.0 (the "License"); you may not use
this file except in compliance with the License. You may obtain a copy of
the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required
by applicable law or agreed to in writing, software distributed under the
License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
OF ANY KIND, either express or implied. See the License for the specific
language governing permissions and limitations under the License. -->
2019-05-28 20:14:09 -04:00
<project xmlns= "http://maven.apache.org/POM/4.0.0" xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation= "http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd" >
2016-07-06 16:56:08 -04:00
<modelVersion > 4.0.0</modelVersion>
<parent >
<groupId > org.apache.nifi</groupId>
<artifactId > nifi-toolkit</artifactId>
2023-02-09 17:40:01 -05:00
<version > 1.21.0-SNAPSHOT</version>
2016-07-06 16:56:08 -04:00
</parent>
<artifactId > nifi-toolkit-assembly</artifactId>
<packaging > pom</packaging>
2016-08-15 23:18:47 -04:00
<description > This is the assembly for the Apache NiFi Toolkit</description>
2016-07-06 16:56:08 -04:00
<build >
<plugins >
<plugin >
<groupId > org.apache.rat</groupId>
<artifactId > apache-rat-plugin</artifactId>
<configuration >
<excludes combine.children= "append" >
<exclude > src/main/resources/conf/config-client.json</exclude>
<exclude > src/main/resources/conf/config-server.json</exclude>
2018-05-24 10:15:55 -04:00
<exclude > docker/tests/tls-toolkit.sh</exclude>
<exclude > docker/tests/exit-codes.sh</exclude>
2016-07-06 16:56:08 -04:00
</excludes>
</configuration>
</plugin>
<plugin >
<artifactId > maven-assembly-plugin</artifactId>
<configuration >
<finalName > nifi-toolkit-${project.version}</finalName>
</configuration>
<executions >
<execution >
<id > make shared resource</id>
<goals >
<goal > single</goal>
</goals>
<phase > package</phase>
<configuration >
<archiverConfig >
<defaultDirectoryMode > 0755</defaultDirectoryMode>
<directoryMode > 0755</directoryMode>
<fileMode > 0644</fileMode>
</archiverConfig>
<descriptors >
<descriptor > src/main/assembly/dependencies.xml</descriptor>
</descriptors>
<tarLongFileMode > posix</tarLongFileMode>
2022-01-20 17:32:16 -05:00
<formats > zip</formats>
2016-07-06 16:56:08 -04:00
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
<dependencies >
<dependency >
<groupId > org.apache.nifi</groupId>
<artifactId > nifi-toolkit-tls</artifactId>
2023-02-09 17:40:01 -05:00
<version > 1.21.0-SNAPSHOT</version>
2016-07-06 16:56:08 -04:00
</dependency>
2016-08-15 23:18:47 -04:00
<dependency >
<groupId > org.apache.nifi</groupId>
<artifactId > nifi-toolkit-encrypt-config</artifactId>
2023-02-09 17:40:01 -05:00
<version > 1.21.0-SNAPSHOT</version>
2016-08-15 23:18:47 -04:00
</dependency>
2016-09-23 11:32:05 -04:00
<dependency >
<groupId > org.apache.nifi</groupId>
<artifactId > nifi-toolkit-s2s</artifactId>
2023-02-09 17:40:01 -05:00
<version > 1.21.0-SNAPSHOT</version>
2016-09-23 11:32:05 -04:00
</dependency>
2017-02-07 10:28:15 -05:00
<dependency >
<groupId > org.apache.nifi</groupId>
<artifactId > nifi-toolkit-admin</artifactId>
2023-02-09 17:40:01 -05:00
<version > 1.21.0-SNAPSHOT</version>
2017-02-07 10:28:15 -05:00
</dependency>
2016-10-27 12:21:20 -04:00
<dependency >
<groupId > org.apache.nifi</groupId>
<artifactId > nifi-toolkit-zookeeper-migrator</artifactId>
2023-02-09 17:40:01 -05:00
<version > 1.21.0-SNAPSHOT</version>
2017-04-30 21:33:12 -04:00
</dependency>
<dependency >
<groupId > org.apache.nifi</groupId>
<artifactId > nifi-toolkit-flowanalyzer</artifactId>
2023-02-09 17:40:01 -05:00
<version > 1.21.0-SNAPSHOT</version>
2016-10-27 12:21:20 -04:00
</dependency>
2023-03-01 09:03:53 -05:00
<dependency >
<groupId > org.apache.nifi</groupId>
<artifactId > nifi-toolkit-kafka-migrator</artifactId>
<version > 1.21.0-SNAPSHOT</version>
</dependency>
2018-01-22 10:31:15 -05:00
<dependency >
<groupId > org.apache.nifi</groupId>
<artifactId > nifi-toolkit-cli</artifactId>
2023-02-09 17:40:01 -05:00
<version > 1.21.0-SNAPSHOT</version>
2018-01-22 10:31:15 -05:00
</dependency>
2016-07-06 16:56:08 -04:00
<dependency >
<groupId > org.slf4j</groupId>
<artifactId > slf4j-api</artifactId>
<scope > compile</scope>
</dependency>
<dependency >
<groupId > org.eclipse.jetty</groupId>
<artifactId > jetty-server</artifactId>
<scope > compile</scope>
</dependency>
<dependency >
<groupId > javax.servlet</groupId>
<artifactId > javax.servlet-api</artifactId>
<scope > compile</scope>
</dependency>
2019-11-26 11:50:55 -05:00
<!-- dependencies for jaxb/activation/annotation for running NiFi on Java 11 -->
<!-- TODO: remove these once minimum Java version is 11 -->
<dependency >
2021-08-19 16:42:13 -04:00
<groupId > jakarta.xml.bind</groupId>
<artifactId > jakarta.xml.bind-api</artifactId>
<version > ${jakarta.xml.bind-api.version}</version>
2019-11-26 11:50:55 -05:00
</dependency>
<dependency >
2021-08-19 16:42:13 -04:00
<groupId > org.glassfish.jaxb</groupId>
<artifactId > jaxb-runtime</artifactId>
<version > ${jaxb.runtime.version}</version>
2019-11-26 11:50:55 -05:00
</dependency>
<dependency >
<groupId > javax.annotation</groupId>
<artifactId > javax.annotation-api</artifactId>
<version > 1.3.2</version>
</dependency>
2016-07-06 16:56:08 -04:00
</dependencies>
2017-09-15 14:53:01 -04:00
<profiles >
<profile >
<id > docker</id>
<build >
<plugins >
<plugin >
<artifactId > maven-resources-plugin</artifactId>
<executions >
<execution >
<id > copy-resources</id>
<phase > validate</phase>
<goals >
<goal > copy-resources</goal>
</goals>
<configuration >
<outputDirectory > ${project.basedir}/target/docker-build</outputDirectory>
<resources >
<resource >
<directory > docker</directory>
<filtering > true</filtering>
<includes >
<include > Dockerfile</include>
<include > **/sh/*.sh</include>
</includes>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
<!-- Copy generated artifact to nifi - docker -->
<plugin >
<artifactId > maven-antrun-plugin</artifactId>
<executions >
<execution >
<id > copy-for-docker</id>
<phase > package</phase>
<configuration >
<target name= "copy assembly to docker for image build" >
2018-01-09 01:39:32 -05:00
<copy todir= "${project.basedir}/target/docker-build" overwrite= "true" flatten= "true" >
2022-11-16 23:03:15 -05:00
<fileset dir= "${project.basedir}/target" includes= "*.zip" >
<include name= "*.zip" />
2017-09-15 14:53:01 -04:00
</fileset>
</copy>
</target>
</configuration>
<goals >
<goal > run</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin >
2023-03-28 12:47:59 -04:00
<groupId > io.fabric8</groupId>
<artifactId > docker-maven-plugin</artifactId>
2017-09-15 14:53:01 -04:00
<executions >
<execution >
2023-03-28 12:47:59 -04:00
<id > build-docker-image</id>
<phase > package</phase>
<goals >
<goal > build</goal>
</goals>
2017-09-15 14:53:01 -04:00
<configuration >
2023-03-28 12:47:59 -04:00
<images >
<image >
<name > apache/nifi-toolkit</name>
<build >
<tags >
<tag > ${project.version}-maven</tag>
</tags>
<dockerFile > Dockerfile</dockerFile>
<contextDir > ${project.basedir}/target/docker-build</contextDir>
<args >
<UID > 1000</UID>
<GID > 1000</GID>
<NIFI_TOOLKIT_VERSION > ${project.version}</NIFI_TOOLKIT_VERSION>
</args>
</build>
</image>
</images>
2017-09-15 14:53:01 -04:00
</configuration>
</execution>
</executions>
</plugin>
2018-05-24 10:15:55 -04:00
<plugin >
<artifactId > exec-maven-plugin</artifactId>
<groupId > org.codehaus.mojo</groupId>
<executions >
<execution >
<id > Docker integration tests - exit codes</id>
<phase > integration-test</phase>
<goals >
<goal > exec</goal>
</goals>
<configuration >
<arguments >
2023-03-28 12:47:59 -04:00
<argument > ${project.version}-maven</argument>
2018-05-24 10:15:55 -04:00
</arguments>
<executable > ${project.basedir}/docker/tests/exit-codes.sh</executable>
</configuration>
</execution>
<execution >
<id > Docker integration tests - tls-toolkit</id>
<phase > integration-test</phase>
<goals >
<goal > exec</goal>
</goals>
<configuration >
<arguments >
2023-03-28 12:47:59 -04:00
<argument > ${project.version}-maven</argument>
2018-05-24 10:15:55 -04:00
</arguments>
<executable > ${project.basedir}/docker/tests/tls-toolkit.sh</executable>
</configuration>
</execution>
</executions>
</plugin>
2017-09-15 14:53:01 -04:00
</plugins>
</build>
</profile>
2020-02-24 13:51:17 -05:00
<profile >
<id > docker-skip-tests</id>
<activation >
<property >
<name > skipTests</name>
</property>
</activation>
<build >
<plugins >
<plugin >
<artifactId > exec-maven-plugin</artifactId>
<groupId > org.codehaus.mojo</groupId>
<executions >
<execution >
<id > Docker integration tests - exit codes</id>
<phase > none</phase>
</execution>
<execution >
<id > Docker integration tests - tls-toolkit</id>
<phase > none</phase>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile >
<id > docker-test-skip-test</id>
<activation >
<property >
<name > maven.test.skip</name>
<value > true</value>
</property>
</activation>
<build >
<plugins >
<plugin >
<artifactId > exec-maven-plugin</artifactId>
<groupId > org.codehaus.mojo</groupId>
<executions >
<execution >
<id > Docker integration tests - exit codes</id>
<phase > none</phase>
</execution>
<execution >
<id > Docker integration tests - tls-toolkit</id>
<phase > none</phase>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
2021-03-29 00:45:26 -04:00
<profile >
<id > rpm</id>
<activation >
<activeByDefault > false</activeByDefault>
</activation>
<build >
<plugins >
<plugin >
<groupId > org.codehaus.mojo</groupId>
<artifactId > rpm-maven-plugin</artifactId>
<configuration >
<name > nifi-toolkit</name>
<summary > Apache NiFi Toolkit</summary>
<description > The NiFi Toolkit contains several command line utilities to setup and support NiFi in standalone and clustered environments.</description>
<license > Apache License, Version 2.0 and others (see included LICENSE file)</license>
<url > https://nifi.apache.org/docs/nifi-docs/html/toolkit-guide.html</url>
<group > Utilities</group>
<prefix > /opt/nifi</prefix>
<defineStatements >
<defineStatement > _use_internal_dependency_generator 0</defineStatement>
</defineStatements>
<defaultDirmode > 750</defaultDirmode>
<defaultFilemode > 640</defaultFilemode>
<defaultUsername > nifi</defaultUsername>
<defaultGroupname > nifi</defaultGroupname>
</configuration>
<executions >
<execution >
<id > build-bin-rpm</id>
<goals >
<goal > attached-rpm</goal>
</goals>
<configuration >
<classifier > bin</classifier>
<provides >
<provide > nifi</provide>
</provides>
<mappings >
<mapping >
<directory > /opt/nifi</directory>
</mapping>
<mapping >
<directory > /opt/nifi/nifi-toolkit-${project.version}</directory>
</mapping>
<mapping >
<directory > /opt/nifi/nifi-toolkit-${project.version}</directory>
<sources >
<source >
<location > ${project.build.directory}/nifi-toolkit-${project.version}-bin/nifi-toolkit-${project.version}/LICENSE</location>
</source>
<source >
<location > ${project.build.directory}/nifi-toolkit-${project.version}-bin/nifi-toolkit-${project.version}/NOTICE</location>
</source>
</sources>
</mapping>
<mapping >
<directory > /opt/nifi/nifi-toolkit-${project.version}/bin</directory>
<filemode > 750</filemode>
<sources >
<source >
<location > ${project.build.directory}/nifi-toolkit-${project.version}-bin/nifi-toolkit-${project.version}/bin</location>
</source>
</sources>
</mapping>
<mapping >
<directory > /opt/nifi/nifi-toolkit-${project.version}/classpath</directory>
<sources >
<source >
<location > ${project.build.directory}/nifi-toolkit-${project.version}-bin/nifi-toolkit-${project.version}/classpath</location>
</source>
</sources>
</mapping>
<mapping >
<directory > /opt/nifi/nifi-toolkit-${project.version}/conf</directory>
<configuration > true</configuration>
<sources >
<source >
<location > ${project.build.directory}/nifi-toolkit-${project.version}-bin/nifi-toolkit-${project.version}/conf</location>
<filter > true</filter>
</source>
</sources>
</mapping>
<mapping >
<directory > /opt/nifi/nifi-toolkit-${project.version}/lib</directory>
<sources >
<source >
<location > ${project.build.directory}/nifi-toolkit-${project.version}-bin/nifi-toolkit-${project.version}/lib</location>
</source>
</sources>
</mapping>
</mappings>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
2022-01-20 17:32:16 -05:00
<profile >
<id > targz</id>
<activation >
<activeByDefault > false</activeByDefault>
</activation>
<build >
<plugins >
<plugin >
<artifactId > maven-assembly-plugin</artifactId>
<configuration >
<finalName > nifi-toolkit-${project.version}</finalName>
</configuration>
<executions >
<execution >
<id > make shared resource</id>
<goals >
<goal > single</goal>
</goals>
<phase > package</phase>
<configuration >
<archiverConfig >
<defaultDirectoryMode > 0755</defaultDirectoryMode>
<directoryMode > 0755</directoryMode>
<fileMode > 0644</fileMode>
</archiverConfig>
<descriptors >
<descriptor > src/main/assembly/dependencies.xml</descriptor>
</descriptors>
<tarLongFileMode > posix</tarLongFileMode>
<formats > tar.gz</formats>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile >
<id > dir-only</id>
<activation >
<activeByDefault > false</activeByDefault>
</activation>
<build >
<plugins >
<plugin >
<artifactId > maven-assembly-plugin</artifactId>
<configuration >
<finalName > nifi-toolkit-${project.version}</finalName>
</configuration>
<executions >
<execution >
<id > make shared resource</id>
<goals >
<goal > single</goal>
</goals>
<phase > package</phase>
<configuration >
<archiverConfig >
<defaultDirectoryMode > 0755</defaultDirectoryMode>
<directoryMode > 0755</directoryMode>
<fileMode > 0644</fileMode>
</archiverConfig>
<descriptors >
<descriptor > src/main/assembly/dependencies.xml</descriptor>
</descriptors>
<formats > dir</formats>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
2017-09-15 14:53:01 -04:00
</profiles>
2016-07-06 16:56:08 -04:00
</project>