blob: cddbbbafa8ee16e6407b4e837cf68c1a817edad1 [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 Migdal00ec84d2018-09-14 14:14:03 +02007
Marcin Migdal3b2d33d2018-08-20 12:03:10 +02008 <parent>
9 <groupId>org.onap.oparent</groupId>
10 <artifactId>oparent</artifactId>
11 <version>1.1.0</version>
12 </parent>
13
Marcin Migdalffd52662018-08-02 13:40:25 +020014 <groupId>org.onap.pnfsimulator</groupId>
15 <artifactId>pnf-simulator</artifactId>
16 <version>2.0.0-SNAPSHOT</version>
Pawel Kadlubanski8d0066e2018-05-11 14:35:43 +020017
Marcin Migdalffd52662018-08-02 13:40:25 +020018 <name>pnf-simulator</name>
Pawel Kadlubanski8d0066e2018-05-11 14:35:43 +020019
Marcin Migdalffd52662018-08-02 13:40:25 +020020 <properties>
21 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
22 <maven.compiler.source>1.8</maven.compiler.source>
23 <maven.compiler.target>1.8</maven.compiler.target>
24 <maven.build.timestamp.format>yyyyMMdd'T'HHmmss</maven.build.timestamp.format>
Pawel Kadlubanski8d0066e2018-05-11 14:35:43 +020025
Marcin Migdalffd52662018-08-02 13:40:25 +020026 <simulator.main.class>org.onap.pnfsimulator.Main</simulator.main.class>
27 <docker.image.tag>latest</docker.image.tag>
28 <junit.jupiter.version>5.1.0</junit.jupiter.version>
29 <junit.vintage.version>5.1.0</junit.vintage.version>
30 <docker.image.name>onap/${project.artifactId}</docker.image.name>
31
32 <dependency.directory.name>libs</dependency.directory.name>
33 <dependency.directory.location>${project.build.directory}/${dependency.directory.name}
34 </dependency.directory.location>
35
36 <onap.nexus.dockerregistry.daily>nexus3.onap.org:10003</onap.nexus.dockerregistry.daily>
37 </properties>
38
39 <dependencies>
40 <dependency>
41 <groupId>org.springframework.boot</groupId>
42 <artifactId>spring-boot-starter</artifactId>
43 <version>2.0.2.RELEASE</version>
44 <exclusions>
45 <exclusion>
46 <groupId>org.springframework.boot</groupId>
47 <artifactId>spring-boot-starter-logging</artifactId>
48 </exclusion>
49 </exclusions>
50 </dependency>
51 <dependency>
52 <groupId>org.springframework.boot</groupId>
53 <artifactId>spring-boot-starter-web</artifactId>
54 <version>2.0.2.RELEASE</version>
55 </dependency>
56 <dependency>
57 <groupId>ch.qos.logback</groupId>
58 <artifactId>logback-classic</artifactId>
59 <version>1.2.3</version>
60 </dependency>
61 <dependency>
62 <groupId>ch.qos.logback</groupId>
63 <artifactId>logback-core</artifactId>
64 <version>1.2.3</version>
65 </dependency>
66 <dependency>
67 <groupId>org.slf4j</groupId>
68 <artifactId>slf4j-api</artifactId>
69 <version>1.7.25</version>
70 </dependency>
71 <dependency>
72 <groupId>commons-io</groupId>
73 <artifactId>commons-io</artifactId>
74 <version>2.6</version>
75 </dependency>
76 <dependency>
77 <groupId>org.json</groupId>
78 <artifactId>json</artifactId>
79 <version>20180130</version>
80 </dependency>
81 <dependency>
82 <groupId>org.everit.json</groupId>
83 <artifactId>org.everit.json.schema</artifactId>
84 <version>1.3.0</version>
85 </dependency>
86 <dependency>
87 <groupId>com.github.fge</groupId>
88 <artifactId>json-schema-validator</artifactId>
89 <version>2.2.6</version>
90 </dependency>
91 <dependency>
92 <groupId>com.google.code.gson</groupId>
93 <artifactId>gson</artifactId>
94 <version>2.8.2</version>
95 </dependency>
96 <dependency>
97 <groupId>org.apache.httpcomponents</groupId>
98 <artifactId>httpclient</artifactId>
99 <version>4.5.5</version>
100 </dependency>
101 <dependency>
102 <groupId>com.google.guava</groupId>
103 <artifactId>guava</artifactId>
104 <version>21.0</version>
105 </dependency>
106 <dependency>
107 <groupId>commons-cli</groupId>
108 <artifactId>commons-cli</artifactId>
109 <version>1.4</version>
110 </dependency>
111 <dependency>
112 <groupId>org.apache.commons</groupId>
113 <artifactId>commons-lang3</artifactId>
114 <version>3.7</version>
115 </dependency>
116 <dependency>
117 <groupId>org.onosproject</groupId>
118 <artifactId>jnc</artifactId>
119 <version>1.0</version>
120 </dependency>
Marcin Migdalffd52662018-08-02 13:40:25 +0200121
122 <dependency>
123 <groupId>org.junit.jupiter</groupId>
Marcin Migdalffd52662018-08-02 13:40:25 +0200124 <artifactId>junit-jupiter-engine</artifactId>
125 <version>5.1.1</version>
126 <scope>test</scope>
127 </dependency>
128 <dependency>
129 <groupId>org.junit.jupiter</groupId>
130 <artifactId>junit-jupiter-migrationsupport</artifactId>
131 <version>${junit.jupiter.version}</version>
132 <scope>test</scope>
133 </dependency>
134 <dependency>
Marcin Migdalffd52662018-08-02 13:40:25 +0200135 <groupId>org.assertj</groupId>
136 <artifactId>assertj-core</artifactId>
137 <version>3.9.1</version>
138 <scope>test</scope>
139 </dependency>
Marcin Migdalffd52662018-08-02 13:40:25 +0200140 <dependency>
141 <groupId>org.apache.sshd</groupId>
142 <artifactId>sshd-core</artifactId>
143 <version>0.9.0</version>
144 <scope>test</scope>
145 </dependency>
Marcin Migdalffd52662018-08-02 13:40:25 +0200146 <dependency>
147 <groupId>org.mockito</groupId>
148 <artifactId>mockito-core</artifactId>
149 <version>2.18.3</version>
150 <scope>test</scope>
151 </dependency>
152
153 <dependency>
154 <groupId>org.springframework</groupId>
155 <artifactId>spring-test</artifactId>
156 <version>5.0.4.RELEASE</version>
157 <scope>test</scope>
158 </dependency>
159 <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>
171 <artifactId>maven-compiler-plugin</artifactId>
Marcin Migdal38b0c5e2018-08-03 14:32:02 +0200172 <version>3.7.0</version>
Marcin Migdalffd52662018-08-02 13:40:25 +0200173 <configuration>
174 <source>${maven.compiler.source}</source>
175 <target>${maven.compiler.target}</target>
176 <showWarnings>true</showWarnings>
177 <showDeprecation>true</showDeprecation>
178 </configuration>
179 </plugin>
180 <plugin>
181 <groupId>org.apache.maven.plugins</groupId>
182 <artifactId>maven-jar-plugin</artifactId>
Marcin Migdal38b0c5e2018-08-03 14:32:02 +0200183 <version>3.0.2</version>
Marcin Migdalffd52662018-08-02 13:40:25 +0200184 <configuration>
185 <archive>
186 <manifestEntries>
187 <Main-Class>${simulator.main.class}</Main-Class>
188 <Build-Time>${maven.build.timestamp}</Build-Time>
189 </manifestEntries>
190 </archive>
191 </configuration>
192 </plugin>
193 <plugin>
194 <groupId>pl.project13.maven</groupId>
195 <artifactId>git-commit-id-plugin</artifactId>
196 <version>2.2.4</version>
197 <executions>
198 <execution>
199 <id>get-commit-info</id>
200 <goals>
201 <goal>revision</goal>
202 </goals>
203 </execution>
204 </executions>
205 <configuration>
206 <dotGitDirectory>${project.basedir}/.git</dotGitDirectory>
207 <generateGitPropertiesFile>true</generateGitPropertiesFile>
208 <includeOnlyProperties>git.commit.id.abbrev</includeOnlyProperties>
209 </configuration>
210 </plugin>
211 <plugin>
212 <artifactId>maven-surefire-plugin</artifactId>
213 <version>2.19</version>
214 <dependencies>
215 <dependency>
216 <groupId>org.junit.platform</groupId>
217 <artifactId>junit-platform-surefire-provider</artifactId>
218 <version>1.1.1</version>
219 </dependency>
220 </dependencies>
221 <configuration>
222 <detail>true</detail>
223 <printSummary>true</printSummary>
224 </configuration>
225 </plugin>
226 <plugin>
227 <groupId>org.apache.maven.plugins</groupId>
228 <artifactId>maven-dependency-plugin</artifactId>
229 <configuration>
230 <outputDirectory>${dependency.directory.location}</outputDirectory>
231 <includeScope>runtime</includeScope>
232 <silent>true</silent>
233 </configuration>
234 <executions>
235 <execution>
236 <id>copy-external-dependencies</id>
237 <phase>package</phase>
238 <goals>
239 <goal>copy-dependencies</goal>
240 </goals>
241 </execution>
242 </executions>
243 </plugin>
244 <plugin>
245 <groupId>com.spotify</groupId>
246 <artifactId>docker-maven-plugin</artifactId>
247 <version>1.0.0</version>
248 <configuration>
Marcin Migdald852d2a2018-08-09 10:46:19 +0200249 <registryUrl>${onap.nexus.dockerregistry.daily}</registryUrl>
Marcin Migdal86fc2ff2018-08-10 15:09:31 +0200250 <imageName>${onap.nexus.dockerregistry.daily}/${docker.image.name}</imageName>
Marcin Migdal9c6d8f32018-08-13 11:27:19 +0200251 <forceTags>true</forceTags>
Marcin Migdalffd52662018-08-02 13:40:25 +0200252 <imageTags>
253 <tag>latest</tag>
Marcin Migdal86fc2ff2018-08-10 15:09:31 +0200254 <tag>${project.version}</tag>
255 <tag>${project.version}-${maven.build.timestamp}</tag>
Marcin Migdalffd52662018-08-02 13:40:25 +0200256 </imageTags>
257 <baseImage>openjdk:8-jre-alpine</baseImage>
258 <cmd>java -cp ${dependency.directory.name}/*:${project.build.finalName}.jar ${simulator.main.class}</cmd>
259 <resources>
260 <resource>
261 <targetPath>${dependency.directory.name}</targetPath>
262 <directory>${dependency.directory.location}</directory>
263 </resource>
264 <resource>
265 <targetPath>/</targetPath>
266 <directory>${project.build.directory}</directory>
267 <include>${project.build.finalName}.jar</include>
268 </resource>
269 </resources>
Marcin Migdal86fc2ff2018-08-10 15:09:31 +0200270 <forceTags>true</forceTags>
Marcin Migdalffd52662018-08-02 13:40:25 +0200271 </configuration>
Marcin Migdalffd52662018-08-02 13:40:25 +0200272 </plugin>
273 <plugin>
274 <groupId>org.jacoco</groupId>
275 <artifactId>jacoco-maven-plugin</artifactId>
Marcin Migdal4e276342018-08-07 10:29:08 +0200276 <version>0.8.1</version>
Marcin Migdalffd52662018-08-02 13:40:25 +0200277 <configuration>
278 <excludes>
279 <exclude>org/onap/pnfsimulator/Main.class</exclude>
280 </excludes>
281 </configuration>
282 <executions>
283 <execution>
284 <id>default-prepare-agent</id>
285 <goals>
286 <goal>prepare-agent</goal>
287 </goals>
288 </execution>
289 <execution>
290 <id>report</id>
291 <phase>prepare-package</phase>
292 <goals>
293 <goal>report</goal>
294 </goals>
295 </execution>
296 <execution>
297 <id>check</id>
298 <goals>
299 <goal>check</goal>
300 </goals>
301 <configuration>
302 <rules>
303 <rule>
304 <element>CLASS</element>
305 <limits>
306 <limit>
307 <value>COVEREDRATIO</value>
308 <minimum>0.70</minimum>
309 </limit>
310 <limit>
311 <counter>BRANCH</counter>
312 <value>COVEREDRATIO</value>
313 <minimum>0.75</minimum>
314 </limit>
315 </limits>
316 </rule>
317 </rules>
318 </configuration>
319 </execution>
320 </executions>
321 </plugin>
322 </plugins>
323 </build>
324</project>