2daa399bb85f2e2a424abd62abd1f53e3d09a3ae
[sdc.git] / utils / webseal-simulator / pom.xml
1 <project xmlns="http://maven.apache.org/POM/4.0.0"
2     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
4
5
6     <modelVersion>4.0.0</modelVersion>
7     <artifactId>webseal-simulator</artifactId>
8     <packaging>war</packaging>
9
10     <parent>
11         <groupId>org.openecomp.sdc</groupId>
12         <artifactId>sdc-main</artifactId>
13         <version>1.13.4-SNAPSHOT</version>
14         <relativePath>../../</relativePath>
15     </parent>
16
17     <properties>
18         <maven.build.timestamp.format>yyyyMMdd'T'HHmmss'Z'</maven.build.timestamp.format>
19         <nexus.proxy>https://nexus.onap.org</nexus.proxy>
20         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
21         <sonar.skip>true</sonar.skip>
22     </properties>
23
24     <dependencies>
25         <dependency>
26             <groupId>org.hibernate.validator</groupId>
27             <artifactId>hibernate-validator</artifactId>
28             <version>${hibernate.validator.version}</version>
29         </dependency>
30         <dependency>
31             <groupId>org.eclipse.jetty</groupId>
32             <artifactId>jetty-server</artifactId>
33             <version>${jetty.version}</version>
34             <scope>compile</scope>
35             <exclusions>
36                 <exclusion>
37                     <groupId>org.eclipse.jetty</groupId>
38                     <artifactId>jetty-http</artifactId>
39                 </exclusion>
40                 <exclusion>
41                     <groupId>javax.servlet</groupId>
42                     <artifactId>javax.servlet-api</artifactId>
43                 </exclusion>
44             </exclusions>
45         </dependency>
46         <dependency>
47             <groupId>org.eclipse.jetty</groupId>
48             <artifactId>jetty-servlet</artifactId>
49             <version>${jetty.version}</version>
50             <scope>compile</scope>
51             <exclusions>
52                 <exclusion>
53                     <groupId>org.eclipse.jetty</groupId>
54                     <artifactId>jetty-security</artifactId>
55                 </exclusion>
56             </exclusions>
57         </dependency>
58         <dependency>
59             <groupId>org.openecomp.sdc</groupId>
60             <artifactId>common-app-api</artifactId>
61             <version>${project.version}</version>
62             <scope>compile</scope>
63             <exclusions>
64                 <exclusion>
65                     <groupId>org.apache.httpcomponents</groupId>
66                     <artifactId>httpcore</artifactId>
67                 </exclusion>
68                 <exclusion>
69                     <groupId>com.fasterxml.jackson.core</groupId>
70                     <artifactId>jackson-core</artifactId>
71                 </exclusion>
72                 <exclusion>
73                     <groupId>com.fasterxml.jackson.core</groupId>
74                     <artifactId>jackson-databind</artifactId>
75                 </exclusion>
76             </exclusions>
77         </dependency>
78
79         <dependency>
80             <groupId>org.apache.httpcomponents.client5</groupId>
81             <artifactId>httpclient5</artifactId>
82             <version>${httpclient.version}</version>
83             <exclusions>
84                 <exclusion>
85                     <groupId>org.apache.httpcomponents</groupId>
86                     <artifactId>httpcore</artifactId>
87                 </exclusion>
88             </exclusions>
89         </dependency>
90         <dependency>
91             <groupId>org.apache.httpcomponents</groupId>
92             <artifactId>httpcore</artifactId>
93             <version>${httpcore.version}</version>
94         </dependency>
95
96         <dependency>
97             <groupId>org.apache.commons</groupId>
98             <artifactId>commons-lang3</artifactId>
99         </dependency>
100
101         <dependency>
102             <groupId>commons-io</groupId>
103             <artifactId>commons-io</artifactId>
104             <version>${commons.io.version}</version>
105         </dependency>
106
107         <dependency>
108             <groupId>commons-codec</groupId>
109             <artifactId>commons-codec</artifactId>
110             <version>${commons-codec}</version>
111             <scope>compile</scope>
112         </dependency>
113
114         <dependency>
115             <groupId>org.eclipse.jetty</groupId>
116             <artifactId>jetty-proxy</artifactId>
117             <version>${jetty.version}</version>
118             <scope>compile</scope>
119             <exclusions>
120                 <exclusion>
121                     <groupId>org.eclipse.jetty</groupId>
122                     <artifactId>jetty-http</artifactId>
123                 </exclusion>
124             </exclusions>
125         </dependency>
126
127         <dependency>
128             <groupId>org.eclipse.jetty</groupId>
129             <artifactId>jetty-servlets</artifactId>
130             <version>${jetty.version}</version>
131             <scope>compile</scope>
132             <exclusions>
133                 <exclusion>
134                     <groupId>org.eclipse.jetty</groupId>
135                     <artifactId>jetty-http</artifactId>
136                 </exclusion>
137             </exclusions>
138         </dependency>
139
140         <!-- Proxy servlet -->
141         <dependency>
142             <groupId>com.typesafe</groupId>
143             <artifactId>config</artifactId>
144             <version>1.0.2</version>
145             <scope>compile</scope>
146         </dependency>
147         <dependency>
148             <groupId>org.openecomp.sdc</groupId>
149             <artifactId>openecomp-sdc-logging-api</artifactId>
150             <version>${project.version}</version>
151             <exclusions>
152                 <exclusion>
153                     <groupId>org.powermock</groupId>
154                     <artifactId>powermock-module-junit4</artifactId>
155                 </exclusion>
156             </exclusions>
157         </dependency>
158     </dependencies>
159
160     <build>
161         <finalName>WSSimulator-${project.version}</finalName>
162         <plugins>
163             <plugin>
164                 <groupId>com.github.sylvainlaurent.maven</groupId>
165                 <artifactId>yaml-json-validator-maven-plugin</artifactId>
166                 <executions>
167                     <execution>
168                         <id>validate</id>
169                         <phase>validate</phase>
170                         <goals>
171                             <goal>validate</goal>
172                         </goals>
173                         <configuration>
174                             <validationSets>
175                                 <validationSet>
176                                     <includes>
177                                         <include>src/main/resources/**/*.y*ml</include>
178                                         <include>src/test/resources/**/*.y*ml</include>
179                                     </includes>
180                                 </validationSet>
181                                 <validationSet>
182                                     <includes>
183                                         <include>src/main/resources/**/*.json</include>
184                                         <include>src/test/resources/**/*.json</include>
185                                     </includes>
186                                 </validationSet>
187                             </validationSets>
188                             <skip>${skipYamlJsonValidator}</skip>
189                         </configuration>
190                     </execution>
191                 </executions>
192             </plugin>
193         </plugins>
194     </build>
195
196     <repositories>
197         <!-- LF repositories -->
198         <repository>
199             <id>ecomp-releases</id>
200             <name>Release Repository</name>
201             <url>${nexus.proxy}/content/repositories/releases/</url>
202         </repository>
203         <repository>
204             <id>ecomp-snapshots</id>
205             <name>Snapshots Repository</name>
206             <url>${nexus.proxy}/content/repositories/snapshots/</url>
207         </repository>
208         <repository>
209             <id>ecomp-public</id>
210             <name>Public Repository</name>
211             <url>${nexus.proxy}/content/repositories/public/</url>
212         </repository>
213         <!-- LF repositories END-->
214     </repositories>
215
216     <profiles>
217         <profile>
218             <id>docker</id>
219             <activation>
220                 <activeByDefault>false</activeByDefault>
221             </activation>
222             <build>
223                 <plugins>
224
225                     <plugin>
226                         <artifactId>maven-clean-plugin</artifactId>
227                         <version>3.0.0</version>
228                         <executions>
229                             <execution>
230                                 <id>clean-static-files</id>
231                                 <phase>clean</phase>
232                                 <goals>
233                                     <goal>clean</goal>
234                                 </goals>
235                                 <configuration>
236                                     <filesets>
237                                         <fileset>
238                                             <directory>${project.basedir}/sdc-simulator</directory>
239                                             <includes>
240                                                 <include>*.war</include>
241                                             </includes>
242                                             <followSymlinks>false</followSymlinks>
243                                         </fileset>
244                                     </filesets>
245                                 </configuration>
246                             </execution>
247                         </executions>
248                     </plugin>
249
250                     <plugin>
251                         <artifactId>maven-resources-plugin</artifactId>
252                         <executions>
253                             <execution>
254                                 <id>copy-resources-simulator</id>
255                                 <phase>verify</phase>
256                                 <goals>
257                                     <goal>copy-resources</goal>
258                                 </goals>
259                                 <configuration>
260                                     <outputDirectory>${project.basedir}/sdc-simulator
261                                     </outputDirectory>
262                                     <resources>
263                                         <resource>
264                                             <directory>${project.basedir}/target</directory>
265                                             <includes>
266                                                 <include>WSSimulator*.war</include>
267                                             </includes>
268                                         </resource>
269                                     </resources>
270                                 </configuration>
271                             </execution>
272                         </executions>
273                     </plugin>
274
275
276                     <plugin>
277                         <groupId>io.fabric8</groupId>
278                         <artifactId>docker-maven-plugin</artifactId>
279                         <configuration>
280                             <verbose>${verbose}</verbose>
281                             <apiVersion>${docker.api.version}</apiVersion>
282                             <registry>${docker.registry}</registry>
283                             <authConfig>
284                                 <pull>
285                                     <username>${docker.username}</username>
286                                     <password>${docker.password}</password>
287                                 </pull>
288                             </authConfig>
289                             <images>
290                                 <!-- Build simulator image -->
291                                 <image>
292                                     <name>${docker.namespace}/sdc-simulator</name>
293                                     <alias>sdc-simulator</alias>
294                                     <build>
295                                         <cleanup>try</cleanup>
296                                         <dockerFileDir>${basedir}${file.separator}sdc-simulator
297                                         </dockerFileDir>
298                                         <tags>
299                                             <tag>latest</tag>
300                                             <tag>
301                                                 ${parsedVersion.majorVersion}.${parsedVersion.minorVersion}-STAGING-latest
302                                             </tag>
303                                             <tag>
304                                                 ${parsedVersion.majorVersion}.${parsedVersion.minorVersion}-${maven.build.timestamp}
305                                             </tag>
306                                         </tags>
307                                     </build>
308                                 </image>
309                             </images>
310                         </configuration>
311                         <executions>
312                             <execution>
313                                 <id>clean-images</id>
314                                 <phase>pre-clean</phase>
315                                 <goals>
316                                     <goal>remove</goal>
317                                 </goals>
318                             </execution>
319                             <execution>
320                                 <id>generate-images</id>
321                                 <phase>install</phase>
322                                 <goals>
323                                     <goal>build</goal>
324                                 </goals>
325                             </execution>
326                             <execution>
327                                 <id>push-images</id>
328                                 <phase>deploy</phase>
329                                 <goals>
330                                     <goal>push</goal>
331                                 </goals>
332                             </execution>
333                         </executions>
334                     </plugin>
335                 </plugins>
336             </build>
337         </profile>
338     </profiles>
339 </project>