blob: 254cc8e0be84a24ffe0305a30047c366f6041cf8 [file] [log] [blame]
Pawel Kadlubanski8d0066e2018-05-11 14:35:43 +02001<?xml version="1.0" encoding="UTF-8"?>
2
Marcin Migdalffd52662018-08-02 13:40:25 +02003<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0"
4 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
5 <modelVersion>4.0.0</modelVersion>
Pawel Kadlubanski8d0066e2018-05-11 14:35:43 +02006
Marcin Migdal3b2d33d2018-08-20 12:03:10 +02007 <parent>
8 <groupId>org.onap.oparent</groupId>
9 <artifactId>oparent</artifactId>
Gary Wu284b23a2018-09-18 10:21:49 -070010 <version>1.2.1</version>
Marcin Migdal3b2d33d2018-08-20 12:03:10 +020011 </parent>
12
Marcin Migdalffd52662018-08-02 13:40:25 +020013 <groupId>org.onap.pnfsimulator</groupId>
14 <artifactId>pnf-simulator</artifactId>
Marcin Migdal62f74182019-01-18 12:32:36 +010015 <version>4.0.0-SNAPSHOT</version>
Pawel Kadlubanski8d0066e2018-05-11 14:35:43 +020016
Marcin Migdalffd52662018-08-02 13:40:25 +020017 <name>pnf-simulator</name>
Pawel Kadlubanski8d0066e2018-05-11 14:35:43 +020018
Marcin Migdalffd52662018-08-02 13:40:25 +020019 <properties>
20 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
21 <maven.compiler.source>1.8</maven.compiler.source>
22 <maven.compiler.target>1.8</maven.compiler.target>
23 <maven.build.timestamp.format>yyyyMMdd'T'HHmmss</maven.build.timestamp.format>
Pawel Kadlubanski8d0066e2018-05-11 14:35:43 +020024
Marcin Migdalffd52662018-08-02 13:40:25 +020025 <simulator.main.class>org.onap.pnfsimulator.Main</simulator.main.class>
26 <docker.image.tag>latest</docker.image.tag>
27 <junit.jupiter.version>5.1.0</junit.jupiter.version>
28 <junit.vintage.version>5.1.0</junit.vintage.version>
29 <docker.image.name>onap/${project.artifactId}</docker.image.name>
30
31 <dependency.directory.name>libs</dependency.directory.name>
32 <dependency.directory.location>${project.build.directory}/${dependency.directory.name}
33 </dependency.directory.location>
34
35 <onap.nexus.dockerregistry.daily>nexus3.onap.org:10003</onap.nexus.dockerregistry.daily>
36 </properties>
37
38 <dependencies>
39 <dependency>
40 <groupId>org.springframework.boot</groupId>
41 <artifactId>spring-boot-starter</artifactId>
42 <version>2.0.2.RELEASE</version>
43 <exclusions>
44 <exclusion>
45 <groupId>org.springframework.boot</groupId>
46 <artifactId>spring-boot-starter-logging</artifactId>
47 </exclusion>
48 </exclusions>
49 </dependency>
50 <dependency>
51 <groupId>org.springframework.boot</groupId>
52 <artifactId>spring-boot-starter-web</artifactId>
53 <version>2.0.2.RELEASE</version>
54 </dependency>
55 <dependency>
56 <groupId>ch.qos.logback</groupId>
57 <artifactId>logback-classic</artifactId>
58 <version>1.2.3</version>
59 </dependency>
60 <dependency>
61 <groupId>ch.qos.logback</groupId>
62 <artifactId>logback-core</artifactId>
63 <version>1.2.3</version>
64 </dependency>
65 <dependency>
66 <groupId>org.slf4j</groupId>
67 <artifactId>slf4j-api</artifactId>
68 <version>1.7.25</version>
69 </dependency>
70 <dependency>
71 <groupId>commons-io</groupId>
72 <artifactId>commons-io</artifactId>
73 <version>2.6</version>
74 </dependency>
75 <dependency>
76 <groupId>org.json</groupId>
77 <artifactId>json</artifactId>
78 <version>20180130</version>
79 </dependency>
80 <dependency>
81 <groupId>org.everit.json</groupId>
82 <artifactId>org.everit.json.schema</artifactId>
83 <version>1.3.0</version>
84 </dependency>
85 <dependency>
86 <groupId>com.github.fge</groupId>
87 <artifactId>json-schema-validator</artifactId>
88 <version>2.2.6</version>
89 </dependency>
90 <dependency>
91 <groupId>com.google.code.gson</groupId>
92 <artifactId>gson</artifactId>
93 <version>2.8.2</version>
94 </dependency>
95 <dependency>
96 <groupId>org.apache.httpcomponents</groupId>
97 <artifactId>httpclient</artifactId>
98 <version>4.5.5</version>
99 </dependency>
100 <dependency>
101 <groupId>com.google.guava</groupId>
102 <artifactId>guava</artifactId>
103 <version>21.0</version>
104 </dependency>
105 <dependency>
106 <groupId>commons-cli</groupId>
107 <artifactId>commons-cli</artifactId>
108 <version>1.4</version>
109 </dependency>
110 <dependency>
111 <groupId>org.apache.commons</groupId>
112 <artifactId>commons-lang3</artifactId>
113 <version>3.7</version>
114 </dependency>
115 <dependency>
116 <groupId>org.onosproject</groupId>
117 <artifactId>jnc</artifactId>
118 <version>1.0</version>
119 </dependency>
Marcin Migdalffd52662018-08-02 13:40:25 +0200120
121 <dependency>
122 <groupId>org.junit.jupiter</groupId>
Marcin Migdalffd52662018-08-02 13:40:25 +0200123 <artifactId>junit-jupiter-engine</artifactId>
124 <version>5.1.1</version>
125 <scope>test</scope>
126 </dependency>
127 <dependency>
128 <groupId>org.junit.jupiter</groupId>
129 <artifactId>junit-jupiter-migrationsupport</artifactId>
130 <version>${junit.jupiter.version}</version>
131 <scope>test</scope>
132 </dependency>
133 <dependency>
Marcin Migdalffd52662018-08-02 13:40:25 +0200134 <groupId>org.assertj</groupId>
135 <artifactId>assertj-core</artifactId>
136 <version>3.9.1</version>
137 <scope>test</scope>
138 </dependency>
Marcin Migdalffd52662018-08-02 13:40:25 +0200139 <dependency>
140 <groupId>org.apache.sshd</groupId>
141 <artifactId>sshd-core</artifactId>
142 <version>0.9.0</version>
143 <scope>test</scope>
144 </dependency>
Marcin Migdalffd52662018-08-02 13:40:25 +0200145 <dependency>
146 <groupId>org.mockito</groupId>
147 <artifactId>mockito-core</artifactId>
148 <version>2.18.3</version>
149 <scope>test</scope>
150 </dependency>
151
152 <dependency>
153 <groupId>org.springframework</groupId>
154 <artifactId>spring-test</artifactId>
155 <version>5.0.4.RELEASE</version>
156 <scope>test</scope>
157 </dependency>
Marcin Migdal7c822a02018-11-19 11:43:55 +0100158
Marcin Migdalffd52662018-08-02 13:40:25 +0200159 <dependency>
160 <groupId>org.springframework.boot</groupId>
161 <artifactId>spring-boot-starter-test</artifactId>
162 <version>2.0.1.RELEASE</version>
163 <scope>test</scope>
164 </dependency>
165 </dependencies>
166
167 <build>
168 <plugins>
169 <plugin>
170 <groupId>org.apache.maven.plugins</groupId>
bogumil_zebek711de8d2018-10-04 09:21:42 +0200171 <artifactId>maven-assembly-plugin</artifactId>
172 <configuration>
173 <descriptor>src/assembly/resources.xml</descriptor>
Marcin Migdal7c822a02018-11-19 11:43:55 +0100174 <finalName>${project.artifactId}-${project.version}</finalName>
bogumil_zebek711de8d2018-10-04 09:21:42 +0200175 </configuration>
176 <executions>
177 <execution>
178 <phase>package</phase>
179 <goals>
180 <goal>single</goal>
181 </goals>
182 </execution>
183 </executions>
184 </plugin>
185 <plugin>
186 <groupId>org.apache.maven.plugins</groupId>
Marcin Migdalffd52662018-08-02 13:40:25 +0200187 <artifactId>maven-compiler-plugin</artifactId>
Marcin Migdal38b0c5e2018-08-03 14:32:02 +0200188 <version>3.7.0</version>
Marcin Migdalffd52662018-08-02 13:40:25 +0200189 <configuration>
190 <source>${maven.compiler.source}</source>
191 <target>${maven.compiler.target}</target>
192 <showWarnings>true</showWarnings>
193 <showDeprecation>true</showDeprecation>
194 </configuration>
195 </plugin>
196 <plugin>
197 <groupId>org.apache.maven.plugins</groupId>
198 <artifactId>maven-jar-plugin</artifactId>
Marcin Migdal38b0c5e2018-08-03 14:32:02 +0200199 <version>3.0.2</version>
Marcin Migdalffd52662018-08-02 13:40:25 +0200200 <configuration>
201 <archive>
202 <manifestEntries>
203 <Main-Class>${simulator.main.class}</Main-Class>
204 <Build-Time>${maven.build.timestamp}</Build-Time>
205 </manifestEntries>
206 </archive>
207 </configuration>
208 </plugin>
209 <plugin>
210 <groupId>pl.project13.maven</groupId>
211 <artifactId>git-commit-id-plugin</artifactId>
212 <version>2.2.4</version>
213 <executions>
214 <execution>
215 <id>get-commit-info</id>
216 <goals>
217 <goal>revision</goal>
218 </goals>
219 </execution>
220 </executions>
221 <configuration>
222 <dotGitDirectory>${project.basedir}/.git</dotGitDirectory>
223 <generateGitPropertiesFile>true</generateGitPropertiesFile>
224 <includeOnlyProperties>git.commit.id.abbrev</includeOnlyProperties>
225 </configuration>
226 </plugin>
227 <plugin>
228 <artifactId>maven-surefire-plugin</artifactId>
229 <version>2.19</version>
230 <dependencies>
231 <dependency>
232 <groupId>org.junit.platform</groupId>
233 <artifactId>junit-platform-surefire-provider</artifactId>
234 <version>1.1.1</version>
235 </dependency>
236 </dependencies>
237 <configuration>
238 <detail>true</detail>
239 <printSummary>true</printSummary>
240 </configuration>
241 </plugin>
242 <plugin>
243 <groupId>org.apache.maven.plugins</groupId>
244 <artifactId>maven-dependency-plugin</artifactId>
245 <configuration>
246 <outputDirectory>${dependency.directory.location}</outputDirectory>
247 <includeScope>runtime</includeScope>
248 <silent>true</silent>
249 </configuration>
250 <executions>
251 <execution>
252 <id>copy-external-dependencies</id>
253 <phase>package</phase>
254 <goals>
255 <goal>copy-dependencies</goal>
256 </goals>
257 </execution>
258 </executions>
259 </plugin>
260 <plugin>
261 <groupId>com.spotify</groupId>
262 <artifactId>docker-maven-plugin</artifactId>
263 <version>1.0.0</version>
264 <configuration>
Marcin Migdald852d2a2018-08-09 10:46:19 +0200265 <registryUrl>${onap.nexus.dockerregistry.daily}</registryUrl>
Marcin Migdal86fc2ff2018-08-10 15:09:31 +0200266 <imageName>${onap.nexus.dockerregistry.daily}/${docker.image.name}</imageName>
Marcin Migdal9c6d8f32018-08-13 11:27:19 +0200267 <forceTags>true</forceTags>
Marcin Migdalffd52662018-08-02 13:40:25 +0200268 <imageTags>
Marcin Migdal86fc2ff2018-08-10 15:09:31 +0200269 <tag>${project.version}</tag>
270 <tag>${project.version}-${maven.build.timestamp}</tag>
Marcin Migdalffd52662018-08-02 13:40:25 +0200271 </imageTags>
272 <baseImage>openjdk:8-jre-alpine</baseImage>
273 <cmd>java -cp ${dependency.directory.name}/*:${project.build.finalName}.jar ${simulator.main.class}</cmd>
274 <resources>
275 <resource>
276 <targetPath>${dependency.directory.name}</targetPath>
277 <directory>${dependency.directory.location}</directory>
278 </resource>
279 <resource>
280 <targetPath>/</targetPath>
281 <directory>${project.build.directory}</directory>
282 <include>${project.build.finalName}.jar</include>
283 </resource>
284 </resources>
Marcin Migdal86fc2ff2018-08-10 15:09:31 +0200285 <forceTags>true</forceTags>
Marcin Migdalffd52662018-08-02 13:40:25 +0200286 </configuration>
Marcin Migdalffd52662018-08-02 13:40:25 +0200287 </plugin>
288 <plugin>
289 <groupId>org.jacoco</groupId>
290 <artifactId>jacoco-maven-plugin</artifactId>
Marcin Migdal4e276342018-08-07 10:29:08 +0200291 <version>0.8.1</version>
Marcin Migdalffd52662018-08-02 13:40:25 +0200292 <configuration>
293 <excludes>
294 <exclude>org/onap/pnfsimulator/Main.class</exclude>
295 </excludes>
296 </configuration>
297 <executions>
298 <execution>
299 <id>default-prepare-agent</id>
300 <goals>
301 <goal>prepare-agent</goal>
302 </goals>
303 </execution>
304 <execution>
305 <id>report</id>
306 <phase>prepare-package</phase>
307 <goals>
308 <goal>report</goal>
309 </goals>
310 </execution>
311 <execution>
312 <id>check</id>
313 <goals>
314 <goal>check</goal>
315 </goals>
316 <configuration>
317 <rules>
318 <rule>
319 <element>CLASS</element>
320 <limits>
321 <limit>
322 <value>COVEREDRATIO</value>
323 <minimum>0.70</minimum>
324 </limit>
325 <limit>
326 <counter>BRANCH</counter>
327 <value>COVEREDRATIO</value>
328 <minimum>0.75</minimum>
329 </limit>
330 </limits>
331 </rule>
332 </rules>
333 </configuration>
334 </execution>
335 </executions>
336 </plugin>
337 </plugins>
338 </build>
Gary Wu284b23a2018-09-18 10:21:49 -0700339</project>