Merge "Updated the Version of Stating Dockers"
[integration.git] / test / mocks / pnfsimulator / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2
3 <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>
6
7   <parent>
8     <groupId>org.onap.oparent</groupId>
9     <artifactId>oparent</artifactId>
10     <version>1.2.1</version>
11   </parent>
12
13   <groupId>org.onap.pnfsimulator</groupId>
14   <artifactId>pnf-simulator</artifactId>
15   <version>2.0.0-SNAPSHOT</version>
16
17   <name>pnf-simulator</name>
18
19   <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>
24
25     <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>
120
121     <dependency>
122       <groupId>org.junit.jupiter</groupId>
123       <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>
134       <groupId>org.assertj</groupId>
135       <artifactId>assertj-core</artifactId>
136       <version>3.9.1</version>
137       <scope>test</scope>
138     </dependency>
139     <dependency>
140       <groupId>org.apache.sshd</groupId>
141       <artifactId>sshd-core</artifactId>
142       <version>0.9.0</version>
143       <scope>test</scope>
144     </dependency>
145     <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-assembly-plugin</artifactId>
171         <configuration>
172           <descriptor>src/assembly/resources.xml</descriptor>
173           <finalName>${project.artifactId}-${pom.version}</finalName>
174         </configuration>
175         <executions>
176           <execution>
177             <phase>package</phase>
178             <goals>
179               <goal>single</goal>
180             </goals>
181           </execution>
182         </executions>
183       </plugin>
184       <plugin>
185         <groupId>org.apache.maven.plugins</groupId>
186         <artifactId>maven-compiler-plugin</artifactId>
187         <version>3.7.0</version>
188         <configuration>
189           <source>${maven.compiler.source}</source>
190           <target>${maven.compiler.target}</target>
191           <showWarnings>true</showWarnings>
192           <showDeprecation>true</showDeprecation>
193         </configuration>
194       </plugin>
195       <plugin>
196         <groupId>org.apache.maven.plugins</groupId>
197         <artifactId>maven-jar-plugin</artifactId>
198         <version>3.0.2</version>
199         <configuration>
200           <archive>
201             <manifestEntries>
202               <Main-Class>${simulator.main.class}</Main-Class>
203               <Build-Time>${maven.build.timestamp}</Build-Time>
204             </manifestEntries>
205           </archive>
206         </configuration>
207       </plugin>
208       <plugin>
209         <groupId>pl.project13.maven</groupId>
210         <artifactId>git-commit-id-plugin</artifactId>
211         <version>2.2.4</version>
212         <executions>
213           <execution>
214             <id>get-commit-info</id>
215             <goals>
216               <goal>revision</goal>
217             </goals>
218           </execution>
219         </executions>
220         <configuration>
221           <dotGitDirectory>${project.basedir}/.git</dotGitDirectory>
222           <generateGitPropertiesFile>true</generateGitPropertiesFile>
223           <includeOnlyProperties>git.commit.id.abbrev</includeOnlyProperties>
224         </configuration>
225       </plugin>
226       <plugin>
227         <artifactId>maven-surefire-plugin</artifactId>
228         <version>2.19</version>
229         <dependencies>
230           <dependency>
231             <groupId>org.junit.platform</groupId>
232             <artifactId>junit-platform-surefire-provider</artifactId>
233             <version>1.1.1</version>
234           </dependency>
235         </dependencies>
236         <configuration>
237           <detail>true</detail>
238           <printSummary>true</printSummary>
239         </configuration>
240       </plugin>
241       <plugin>
242         <groupId>org.apache.maven.plugins</groupId>
243         <artifactId>maven-dependency-plugin</artifactId>
244         <configuration>
245           <outputDirectory>${dependency.directory.location}</outputDirectory>
246           <includeScope>runtime</includeScope>
247           <silent>true</silent>
248         </configuration>
249         <executions>
250           <execution>
251             <id>copy-external-dependencies</id>
252             <phase>package</phase>
253             <goals>
254               <goal>copy-dependencies</goal>
255             </goals>
256           </execution>
257         </executions>
258       </plugin>
259       <plugin>
260         <groupId>com.spotify</groupId>
261         <artifactId>docker-maven-plugin</artifactId>
262         <version>1.0.0</version>
263         <configuration>
264           <registryUrl>${onap.nexus.dockerregistry.daily}</registryUrl>
265           <imageName>${onap.nexus.dockerregistry.daily}/${docker.image.name}</imageName>
266           <forceTags>true</forceTags>
267           <imageTags>
268             <tag>latest</tag>
269             <tag>${project.version}</tag>
270             <tag>${project.version}-${maven.build.timestamp}</tag>
271           </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>
285           <forceTags>true</forceTags>
286         </configuration>
287       </plugin>
288       <plugin>
289         <groupId>org.jacoco</groupId>
290         <artifactId>jacoco-maven-plugin</artifactId>
291         <version>0.8.1</version>
292         <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>
339 </project>