22e85f58b301e91cc17f8755b9796739c0029f0f
[dcaegen2/platform.git] / mod / genprocessor / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3 ============LICENSE_START=======================================================
4 Copyright (c) 2020 AT&T Intellectual Property. All rights reserved.
5 ================================================================================
6 Licensed under the Apache License, Version 2.0 (the "License");
7 you may not use this file except in compliance with the License.
8 You may obtain a copy of the License at
9
10      http://www.apache.org/licenses/LICENSE-2.0
11
12 Unless required by applicable law or agreed to in writing, software
13 distributed under the License is distributed on an "AS IS" BASIS,
14 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 See the License for the specific language governing permissions and
16 limitations under the License.
17 ============LICENSE_END=========================================================
18 -->
19 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
20   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
21   <modelVersion>4.0.0</modelVersion>
22   <parent>
23     <groupId>org.onap.oparent</groupId>
24     <artifactId>oparent</artifactId>
25     <version>2.0.0</version>
26   </parent>
27   <groupId>org.onap.dcaegen2.platform.mod</groupId>
28   <artifactId>genprocessor</artifactId>
29   <version>1.0.2-SNAPSHOT</version>
30   <name>dcaegen2-platform-mod-genprocessor</name>
31   <properties>
32     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
33     <maven.deploy.skip>true</maven.deploy.skip>
34     <java.version>1.8</java.version>
35     <maven.build.timestamp.format>yyyyMMdd'T'HHmmss</maven.build.timestamp.format>
36     <docker.pull.registry>nexus3.onap.org:10001</docker.pull.registry>
37     <docker.push.registry>${env.NEXUS3_PUSH_REGISTRY}</docker.push.registry>
38     <start-class>org.onap.dcae.genprocessor.App</start-class>
39     <!--NOTE: Nifi jars used here are version 1.9.2 but dcae mod is on 1.9.3 because 1.9.3 is not in Maven Central -->
40     <nifi.version>1.9.2</nifi.version>
41     <docker.fabric.version>0.32.0</docker.fabric.version>
42     <sonar.coverage.jacoco.xmlReportPaths>${project.reporting.outputDirectory}/jacoco-ut/jacoco.xml
43     </sonar.coverage.jacoco.xmlReportPaths>
44   </properties>
45   <dependencies>
46     <dependency>
47       <groupId>org.apache.nifi</groupId>
48       <artifactId>nifi-api</artifactId>
49       <version>${nifi.version}</version>
50     </dependency>
51     <dependency>
52       <groupId>org.apache.nifi</groupId>
53       <artifactId>nifi-record-serialization-service-api</artifactId>
54       <version>${nifi.version}</version>
55     </dependency>
56     <dependency>
57       <groupId>org.apache.nifi</groupId>
58       <artifactId>nifi-record</artifactId>
59       <version>${nifi.version}</version>
60     </dependency>
61     <dependency>
62       <groupId>org.apache.nifi</groupId>
63       <artifactId>nifi-processor-utils</artifactId>
64       <version>${nifi.version}</version>
65     </dependency>
66     <dependency>
67       <groupId>org.apache.nifi</groupId>
68       <artifactId>nifi-utils</artifactId>
69       <version>${nifi.version}</version>
70     </dependency>
71     <dependency>
72       <groupId>org.javassist</groupId>
73       <artifactId>javassist</artifactId>
74       <version>3.25.0-GA</version>
75     </dependency>
76     <dependency>
77       <groupId>ch.qos.logback</groupId>
78       <artifactId>logback-classic</artifactId>
79       <version>1.2.3</version>
80     </dependency>
81     <dependency>
82       <groupId>com.fasterxml.jackson.core</groupId>
83       <artifactId>jackson-core</artifactId>
84       <version>2.11.0</version>
85     </dependency>
86     <dependency>
87       <groupId>com.fasterxml.jackson.core</groupId>
88       <artifactId>jackson-databind</artifactId>
89       <version>2.11.0</version>
90     </dependency>
91     <dependency>
92       <groupId>org.apache.commons</groupId>
93       <artifactId>commons-text</artifactId>
94       <version>1.7</version>
95     </dependency>
96     <dependency>
97       <groupId>junit</groupId>
98       <artifactId>junit</artifactId>
99       <version>4.11</version>
100       <scope>test</scope>
101     </dependency>
102     <dependency>
103       <groupId>com.github.stefanbirkner</groupId>
104       <artifactId>system-rules</artifactId>
105       <version>1.19.0</version>
106       <scope>test</scope>
107     </dependency>
108   </dependencies>
109   <build>
110     <plugins>
111       <plugin>
112         <groupId>io.fabric8</groupId>
113         <artifactId>docker-maven-plugin</artifactId>
114         <version>${docker.fabric.version}</version>
115         <configuration>
116           <verbose>true</verbose>
117           <pullRegistry>${docker.pull.registry}</pullRegistry>
118           <pushRegistry>${docker.push.registry}</pushRegistry>
119           <images>
120             <image>
121               <name>onap/${project.groupId}.${project.artifactId}-http</name>
122               <registry>${onap.nexus.dockerregistry.daily}</registry>
123               <build>
124                 <from>nginx:latest</from>
125                 <tags>
126                   <tag>latest</tag>
127                   <tag>${project.version}</tag>
128                   <tag>${project.version}-${maven.build.timestamp}Z</tag>
129                 </tags>
130                 <assembly>
131                   <targetDir>/</targetDir>
132                   <inline>
133                     <files>
134                       <file>
135                         <source>./nginx.conf</source>
136                         <outputDirectory>/etc/nginx/conf.d</outputDirectory>
137                         <destName>default.conf</destName>
138                       </file>
139                     </files>
140                   </inline>
141                 </assembly>
142                 <runCmds>
143                   <runCmd>sed -i /etc/nginx/nginx.conf -e '/^user /d' &amp;&amp; touch /var/run/nginx.pid &amp;&amp; mkdir -p /www/data &amp;&amp; chown -R nginx:nginx /www /etc/nginx /var/cache/nginx /var/log/nginx /var/run/nginx.pid</runCmd>
144                 </runCmds>
145                 <user>nginx</user>
146                 <entryPoint>
147                   <exec>
148                     <arg>nginx</arg>
149                     <arg>-g</arg>
150                     <arg>daemon off;</arg>
151                   </exec>
152                 </entryPoint>
153               </build>
154             </image>
155             <image>
156               <name>onap/${project.groupId}.${project.artifactId}-job</name>
157               <registry>${onap.nexus.dockerregistry.daily}</registry>
158               <build>
159                 <from>openjdk:8</from>
160                 <tags>
161                   <tag>latest</tag>
162                   <tag>${project.version}</tag>
163                   <tag>${project.version}-${maven.build.timestamp}Z</tag>
164                 </tags>
165                 <assembly>
166                   <descriptorRef>artifact-with-dependencies</descriptorRef>
167                 </assembly>
168                 <runCmds>
169                   <runCmd>groupadd -g 1000 dcaemod &amp;&amp; useradd --shell /bin/bash -u 1000 -g 1000 -m dcaemod</runCmd>
170                 </runCmds>
171                 <workdir>/maven</workdir>
172                 <env>
173                   <GENPROC_WORKING_DIR>/work</GENPROC_WORKING_DIR>
174                   <GENPROC_ONBOARDING_API_HOST>http://onboarding-api:8080/onboarding</GENPROC_ONBOARDING_API_HOST>
175                   <GENPROC_SLEEP_SEC>10</GENPROC_SLEEP_SEC>
176                 </env>
177                 <user>dcaemod</user>
178                 <entryPoint>
179                   <exec>
180                     <arg>java</arg>
181                     <arg>-cp</arg>
182                     <arg>/maven/*</arg>
183                     <arg>${start-class}</arg>
184                   </exec>
185                 </entryPoint>
186               </build>
187             </image>
188           </images>
189         </configuration>
190         <executions>
191           <execution>
192             <goals>
193               <goal>build</goal>
194               <goal>push</goal>
195             </goals>
196           </execution>
197         </executions>
198       </plugin>
199     </plugins>
200   </build>
201 </project>