blob: 563ee271f194ac40da3cc5026534c8bf2ce60f4b [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>
10 <version>1.1.0</version>
11 </parent>
12
Marcin Migdalffd52662018-08-02 13:40:25 +020013 <groupId>org.onap.pnfsimulator</groupId>
14 <artifactId>pnf-simulator</artifactId>
15 <version>2.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>
158 <dependency>
159 <groupId>org.springframework.boot</groupId>
160 <artifactId>spring-boot-starter-test</artifactId>
161 <version>2.0.1.RELEASE</version>
162 <scope>test</scope>
163 </dependency>
164 </dependencies>
165
166 <build>
167 <plugins>
168 <plugin>
169 <groupId>org.apache.maven.plugins</groupId>
170 <artifactId>maven-compiler-plugin</artifactId>
Marcin Migdal38b0c5e2018-08-03 14:32:02 +0200171 <version>3.7.0</version>
Marcin Migdalffd52662018-08-02 13:40:25 +0200172 <configuration>
173 <source>${maven.compiler.source}</source>
174 <target>${maven.compiler.target}</target>
175 <showWarnings>true</showWarnings>
176 <showDeprecation>true</showDeprecation>
177 </configuration>
178 </plugin>
179 <plugin>
180 <groupId>org.apache.maven.plugins</groupId>
181 <artifactId>maven-jar-plugin</artifactId>
Marcin Migdal38b0c5e2018-08-03 14:32:02 +0200182 <version>3.0.2</version>
Marcin Migdalffd52662018-08-02 13:40:25 +0200183 <configuration>
184 <archive>
185 <manifestEntries>
186 <Main-Class>${simulator.main.class}</Main-Class>
187 <Build-Time>${maven.build.timestamp}</Build-Time>
188 </manifestEntries>
189 </archive>
190 </configuration>
191 </plugin>
192 <plugin>
193 <groupId>pl.project13.maven</groupId>
194 <artifactId>git-commit-id-plugin</artifactId>
195 <version>2.2.4</version>
196 <executions>
197 <execution>
198 <id>get-commit-info</id>
199 <goals>
200 <goal>revision</goal>
201 </goals>
202 </execution>
203 </executions>
204 <configuration>
205 <dotGitDirectory>${project.basedir}/.git</dotGitDirectory>
206 <generateGitPropertiesFile>true</generateGitPropertiesFile>
207 <includeOnlyProperties>git.commit.id.abbrev</includeOnlyProperties>
208 </configuration>
209 </plugin>
210 <plugin>
211 <artifactId>maven-surefire-plugin</artifactId>
212 <version>2.19</version>
213 <dependencies>
214 <dependency>
215 <groupId>org.junit.platform</groupId>
216 <artifactId>junit-platform-surefire-provider</artifactId>
217 <version>1.1.1</version>
218 </dependency>
219 </dependencies>
220 <configuration>
221 <detail>true</detail>
222 <printSummary>true</printSummary>
223 </configuration>
224 </plugin>
225 <plugin>
226 <groupId>org.apache.maven.plugins</groupId>
227 <artifactId>maven-dependency-plugin</artifactId>
228 <configuration>
229 <outputDirectory>${dependency.directory.location}</outputDirectory>
230 <includeScope>runtime</includeScope>
231 <silent>true</silent>
232 </configuration>
233 <executions>
234 <execution>
235 <id>copy-external-dependencies</id>
236 <phase>package</phase>
237 <goals>
238 <goal>copy-dependencies</goal>
239 </goals>
240 </execution>
241 </executions>
242 </plugin>
243 <plugin>
244 <groupId>com.spotify</groupId>
245 <artifactId>docker-maven-plugin</artifactId>
246 <version>1.0.0</version>
247 <configuration>
Marcin Migdald852d2a2018-08-09 10:46:19 +0200248 <registryUrl>${onap.nexus.dockerregistry.daily}</registryUrl>
Marcin Migdal86fc2ff2018-08-10 15:09:31 +0200249 <imageName>${onap.nexus.dockerregistry.daily}/${docker.image.name}</imageName>
Marcin Migdal9c6d8f32018-08-13 11:27:19 +0200250 <forceTags>true</forceTags>
Marcin Migdalffd52662018-08-02 13:40:25 +0200251 <imageTags>
252 <tag>latest</tag>
Marcin Migdal86fc2ff2018-08-10 15:09:31 +0200253 <tag>${project.version}</tag>
254 <tag>${project.version}-${maven.build.timestamp}</tag>
Marcin Migdalffd52662018-08-02 13:40:25 +0200255 </imageTags>
256 <baseImage>openjdk:8-jre-alpine</baseImage>
257 <cmd>java -cp ${dependency.directory.name}/*:${project.build.finalName}.jar ${simulator.main.class}</cmd>
258 <resources>
259 <resource>
260 <targetPath>${dependency.directory.name}</targetPath>
261 <directory>${dependency.directory.location}</directory>
262 </resource>
263 <resource>
264 <targetPath>/</targetPath>
265 <directory>${project.build.directory}</directory>
266 <include>${project.build.finalName}.jar</include>
267 </resource>
268 </resources>
Marcin Migdal86fc2ff2018-08-10 15:09:31 +0200269 <forceTags>true</forceTags>
Marcin Migdalffd52662018-08-02 13:40:25 +0200270 </configuration>
Marcin Migdalffd52662018-08-02 13:40:25 +0200271 </plugin>
272 <plugin>
273 <groupId>org.jacoco</groupId>
274 <artifactId>jacoco-maven-plugin</artifactId>
Marcin Migdal4e276342018-08-07 10:29:08 +0200275 <version>0.8.1</version>
Marcin Migdalffd52662018-08-02 13:40:25 +0200276 <configuration>
277 <excludes>
278 <exclude>org/onap/pnfsimulator/Main.class</exclude>
279 </excludes>
280 </configuration>
281 <executions>
282 <execution>
283 <id>default-prepare-agent</id>
284 <goals>
285 <goal>prepare-agent</goal>
286 </goals>
287 </execution>
288 <execution>
289 <id>report</id>
290 <phase>prepare-package</phase>
291 <goals>
292 <goal>report</goal>
293 </goals>
294 </execution>
295 <execution>
296 <id>check</id>
297 <goals>
298 <goal>check</goal>
299 </goals>
300 <configuration>
301 <rules>
302 <rule>
303 <element>CLASS</element>
304 <limits>
305 <limit>
306 <value>COVEREDRATIO</value>
307 <minimum>0.70</minimum>
308 </limit>
309 <limit>
310 <counter>BRANCH</counter>
311 <value>COVEREDRATIO</value>
312 <minimum>0.75</minimum>
313 </limit>
314 </limits>
315 </rule>
316 </rules>
317 </configuration>
318 </execution>
319 </executions>
320 </plugin>
321 </plugins>
322 </build>
323</project>