Update versions for London
[ccsdk/cds.git] / ms / blueprintsprocessor / application / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3   ~  Copyright © 2017-2018 AT&T Intellectual Property.
4   ~
5   ~  Modifications Copyright © 2018 IBM.
6   ~  Modifications Copyright © 2019 Bell Canada.
7   ~
8   ~  Licensed under the Apache License, Version 2.0 (the "License");
9   ~  you may not use this file except in compliance with the License.
10   ~  You may obtain a copy of the License at
11   ~
12   ~      http://www.apache.org/licenses/LICENSE-2.0
13   ~
14   ~  Unless required by applicable law or agreed to in writing, software
15   ~  distributed under the License is distributed on an "AS IS" BASIS,
16   ~  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17   ~  See the License for the specific language governing permissions and
18   ~  limitations under the License.
19   -->
20
21 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
22     <modelVersion>4.0.0</modelVersion>
23
24     <parent>
25         <groupId>org.onap.ccsdk.cds.blueprintsprocessor</groupId>
26         <artifactId>blueprintsprocessor-parent</artifactId>
27         <version>1.5.0-SNAPSHOT</version>
28         <relativePath>../parent</relativePath>
29     </parent>
30
31     <artifactId>blueprintsprocessor-application</artifactId>
32     <packaging>jar</packaging>
33
34     <name>MS Blueprints Processor Application</name>
35
36     <properties>
37         <serviceArtifactName>blueprintsprocessor</serviceArtifactName>
38         <image.name>onap/ccsdk-blueprintsprocessor</image.name>
39     </properties>
40
41     <dependencies>
42         <dependency>
43             <groupId>org.onap.ccsdk.cds.blueprintsprocessor.modules</groupId>
44             <artifactId>blueprint-core</artifactId>
45             <exclusions>
46                 <exclusion>
47                     <groupId>org.springframework.boot</groupId>
48                     <artifactId>spring-boot-starter-logging</artifactId>
49                 </exclusion>
50             </exclusions>
51         </dependency>
52         <dependency>
53             <groupId>org.springframework.boot</groupId>
54             <artifactId>spring-boot-starter-security</artifactId>
55             <exclusions>
56                 <exclusion>
57                     <groupId>org.springframework.boot</groupId>
58                     <artifactId>spring-boot-starter-logging</artifactId>
59                 </exclusion>
60             </exclusions>
61         </dependency>
62
63         <!-- Error Catalog Services -->
64         <dependency>
65             <groupId>org.onap.ccsdk.cds.error.catalog</groupId>
66             <artifactId>error-catalog-services</artifactId>
67         </dependency>
68
69         <!-- North Bound - Modules -->
70         <dependency>
71             <groupId>org.onap.ccsdk.cds.blueprintsprocessor.modules</groupId>
72             <artifactId>designer-api</artifactId>
73         </dependency>
74         <dependency>
75             <groupId>org.onap.ccsdk.cds.blueprintsprocessor.modules</groupId>
76             <artifactId>resource-api</artifactId>
77         </dependency>
78         <dependency>
79             <groupId>org.onap.ccsdk.cds.blueprintsprocessor.modules</groupId>
80             <artifactId>selfservice-api</artifactId>
81         </dependency>
82         <dependency>
83             <groupId>org.onap.ccsdk.cds.blueprintsprocessor.modules</groupId>
84             <artifactId>configs-api</artifactId>
85         </dependency>
86         <dependency>
87             <groupId>org.onap.ccsdk.cds.blueprintsprocessor.modules</groupId>
88             <artifactId>health-api</artifactId>
89         </dependency>
90         <dependency>
91             <groupId>org.onap.ccsdk.cds.blueprintsprocessor.modules</groupId>
92             <artifactId>health-api-common</artifactId>
93         </dependency>
94
95         <!-- Functions -->
96         <dependency>
97             <groupId>org.onap.ccsdk.cds.blueprintsprocessor.functions</groupId>
98             <artifactId>python-executor</artifactId>
99         </dependency>
100         <dependency>
101             <groupId>org.onap.ccsdk.cds.blueprintsprocessor.functions</groupId>
102             <artifactId>restful-executor</artifactId>
103         </dependency>
104         <dependency>
105             <groupId>org.onap.ccsdk.cds.blueprintsprocessor.functions</groupId>
106             <artifactId>ansible-awx-executor</artifactId>
107         </dependency>
108         <dependency>
109             <groupId>org.onap.ccsdk.cds.blueprintsprocessor.functions</groupId>
110             <artifactId>netconf-executor</artifactId>
111         </dependency>
112         <dependency>
113             <groupId>org.onap.ccsdk.cds.blueprintsprocessor.functions</groupId>
114             <artifactId>restconf-executor</artifactId>
115         </dependency>
116         <dependency>
117             <groupId>org.onap.ccsdk.cds.blueprintsprocessor.functions</groupId>
118             <artifactId>cli-executor</artifactId>
119         </dependency>
120         <dependency>
121             <groupId>org.onap.ccsdk.cds.blueprintsprocessor.functions</groupId>
122             <artifactId>config-snapshots</artifactId>
123         </dependency>
124         <dependency>
125             <groupId>org.onap.ccsdk.cds.blueprintsprocessor.functions</groupId>
126             <artifactId>k8s-connection-plugin</artifactId>
127         </dependency>
128
129         <!-- Test Dependencies -->
130         <dependency>
131             <groupId>com.h2database</groupId>
132             <artifactId>h2</artifactId>
133         </dependency>
134         <dependency>
135             <groupId>org.powermock</groupId>
136             <artifactId>powermock-api-mockito2</artifactId>
137             <scope>test</scope>
138         </dependency>
139         <dependency>
140             <groupId>org.springframework.boot</groupId>
141             <artifactId>spring-boot-starter-test</artifactId>
142             <scope>test</scope>
143         </dependency>
144         <dependency>
145             <groupId>org.jetbrains.kotlin</groupId>
146             <artifactId>kotlin-test-junit</artifactId>
147             <scope>test</scope>
148         </dependency>
149         <dependency>
150             <groupId>io.projectreactor</groupId>
151             <artifactId>reactor-test</artifactId>
152             <scope>test</scope>
153         </dependency>
154
155         <!-- BEGIN UAT -->
156         <dependency>
157             <groupId>org.skyscreamer</groupId>
158             <artifactId>jsonassert</artifactId>
159         </dependency>
160         <dependency>
161             <groupId>org.yaml</groupId>
162             <artifactId>snakeyaml</artifactId>
163         </dependency>
164         <dependency>
165             <groupId>com.nhaarman.mockitokotlin2</groupId>
166             <artifactId>mockito-kotlin</artifactId>
167             <!-- It's unusual but 'compile' here is the right scope since mockito is being used at runtime by
168                  the UatServices (/api/v1/uat/spy and /api/v1/uat/verify endpoints) -->
169             <scope>compile</scope>
170         </dependency>
171         <dependency>
172             <groupId>com.schibsted.spt.data</groupId>
173             <artifactId>jslt</artifactId>
174         </dependency>
175         <dependency>
176             <groupId>org.apache.httpcomponents</groupId>
177             <artifactId>httpclient</artifactId>
178             <version>${apache.httpcomponents.client.version}</version>
179         </dependency>
180         <dependency>
181             <groupId>org.apache.httpcomponents</groupId>
182             <artifactId>httpmime</artifactId>
183             <version>${apache.httpcomponents.client.version}</version>
184         </dependency>
185         <dependency>
186             <groupId>com.github.tomakehurst</groupId>
187             <artifactId>wiremock-jre8</artifactId>
188             <version>2.25.0</version>
189             <scope>test</scope>
190         </dependency>
191         <!-- END UAT -->
192         <dependency>
193             <groupId>ch.qos.logback</groupId>
194             <artifactId>logback-classic</artifactId>
195         </dependency>
196     </dependencies>
197
198     <build>
199         <resources>
200             <resource>
201                 <!--config and resource files -->
202                 <directory>${basedir}/etc</directory>
203                 <targetPath>${basedir}/target/etc</targetPath>
204                 <filtering>true</filtering>
205                 <includes>
206                     <include>**/*</include>
207                 </includes>
208             </resource>
209             <resource>
210                 <!--config and resource files -->
211                 <directory>${basedir}/src/main/resources</directory>
212                 <targetPath>${basedir}/target/src/main/resources</targetPath>
213                 <filtering>true</filtering>
214                 <includes>
215                     <include>**/*</include>
216                 </includes>
217             </resource>
218             <resource>
219                 <directory>src/main/resources</directory>
220                 <includes>
221                     <include>**/*</include>
222                 </includes>
223                 <filtering>true</filtering>
224             </resource>
225         </resources>
226         <plugins>
227             <plugin>
228                 <groupId>org.apache.maven.plugins</groupId>
229                 <artifactId>maven-surefire-plugin</artifactId>
230                 <version>${maven-surefire-plugin.version}</version>
231                 <configuration>
232                     <!-- Sets the VM argument line used when unit tests are run. -->
233                     <argLine>-Xmx1024m -XX:MaxPermSize=256m ${surefireArgLine}</argLine>
234                     <!-- Excludes integration tests when unit tests are run. -->
235                     <excludes>
236                         <exclude>**/IT*.java</exclude>
237                     </excludes>
238                     <reuseForks>false</reuseForks>
239                     <forkCount>1</forkCount>
240                 </configuration>
241             </plugin>
242             <plugin>
243                 <artifactId>maven-resources-plugin</artifactId>
244                 <version>2.6</version>
245                 <executions>
246                     <execution>
247                         <id>copy-dockerfile</id>
248                         <goals>
249                             <goal>copy-resources</goal>
250                         </goals><!-- here the phase you need -->
251                         <phase>validate</phase>
252                         <configuration>
253                             <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
254                             <resources>
255                                 <resource>
256                                     <directory>src/main/docker</directory>
257                                     <includes>
258                                         <include>*</include>
259                                     </includes>
260                                     <filtering>true</filtering>
261                                 </resource>
262                             </resources>
263                         </configuration>
264                     </execution>
265                 </executions>
266             </plugin>
267             <plugin>
268                 <groupId>org.apache.maven.plugins</groupId>
269                 <artifactId>maven-antrun-plugin</artifactId>
270                 <executions>
271                     <execution>
272                         <id>ant-test</id>
273                         <phase>package</phase>
274                         <configuration>
275                             <tasks>
276                                 <fixcrlf srcdir="${basedir}" eol="unix" includes="**/*.sh, **/*.source"/>
277                             </tasks>
278                         </configuration>
279                         <goals>
280                             <goal>run</goal>
281                         </goals>
282                     </execution>
283                 </executions>
284             </plugin>
285             <plugin><!--build the final artifact for docker deployment -->
286                 <artifactId>maven-assembly-plugin</artifactId>
287                 <version>3.1.0</version>
288                 <configuration>
289                     <!-- <skipAssembly>${skip.assembly}</skipAssembly> -->
290                     <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
291                     <descriptors>
292                         <descriptor>src/main/docker/distribution.xml</descriptor>
293                     </descriptors>
294                     <tarLongFileMode>posix</tarLongFileMode>
295                 </configuration>
296                 <executions>
297                     <execution>
298                         <id>${assembly.id}</id>
299                         <phase>package</phase>
300                         <goals>
301                             <goal>single</goal>
302                         </goals>
303                     </execution>
304                 </executions>
305             </plugin>
306             <plugin>
307                 <groupId>org.codehaus.groovy.maven</groupId>
308                 <artifactId>gmaven-plugin</artifactId>
309                 <version>1.0</version>
310                 <executions>
311                     <execution>
312                         <phase>validate</phase>
313                         <goals>
314                             <goal>execute</goal>
315                         </goals>
316                         <configuration>
317                             <source>${basedir}/../../../TagVersion.groovy</source>
318                         </configuration>
319                     </execution>
320                 </executions>
321             </plugin>
322             <plugin>
323                 <groupId>pl.project13.maven</groupId>
324                 <artifactId>git-commit-id-plugin</artifactId>
325             </plugin>
326             <plugin>
327                 <groupId>com.github.kongchen</groupId>
328                 <artifactId>swagger-maven-plugin</artifactId>
329                 <version>3.1.8</version>
330                 <configuration>
331                     <apiSources>
332                         <apiSource>
333                             <springmvc>true</springmvc>
334                             <locations>
335                                 <location>org.onap.ccsdk.cds.blueprintsprocessor.designer.api.BlueprintModelController</location>
336                                 <location>org.onap.ccsdk.cds.blueprintsprocessor.designer.api.ResourceDictionaryController</location>
337                                 <location>org.onap.ccsdk.cds.blueprintsprocessor.designer.api.ModelTypeController</location>
338                                 <location>org.onap.ccsdk.cds.blueprintsprocessor.resource.api</location>
339                                 <location>org.onap.ccsdk.cds.blueprintsprocessor.configs.api</location>
340                                 <!-- This location is not implemented yet
341                                 <location>org.onap.ccsdk.cds.blueprintsprocessor.healthapi</location>
342                                 -->
343                             </locations>
344                             <schemes>
345                                 <scheme>http</scheme>
346                             </schemes>
347                             <host>localhost:8080</host>
348                             <info>
349                                 <title>CDS Blueprint Processor API Reference</title>
350                                 <version>v1</version>
351                                 <description>
352                                     Shows all resources and endpoints which CDS BP processor currently provides with sample requests/responses, parameter description and other information.
353                                 </description>
354                                 <termsOfService>
355                                     https://www.onap.org/
356                                 </termsOfService>
357                                 <contact>
358                                     <email>onap-discuss@lists.onap.org</email>
359                                     <name>ONAP Community</name>
360                                     <url>https://www.onap.org/</url>
361                                 </contact>
362                                 <license>
363                                     <url>http://www.apache.org/licenses/LICENSE-2.0.html</url>
364                                     <name>Apache 2.0</name>
365                                 </license>
366                             </info>
367                             <securityDefinitions>
368                                 <securityDefinition>
369                                     <name>Basic Auth</name>
370                                     <type>basic</type>
371                                 </securityDefinition>
372                             </securityDefinitions>
373                             <outputFormats>json</outputFormats>
374                             <swaggerDirectory>${basedir}/../../../docs/api-reference/media</swaggerDirectory>
375                             <swaggerFileName>cds-bp-processor-api-swagger</swaggerFileName>
376                             <jsonExampleValues>true</jsonExampleValues>
377                             <operationIdFormat>{{className}}_{{methodName}}_{{httpMethod}}.{{packageName}}</operationIdFormat>
378                         </apiSource>
379                     </apiSources>
380                 </configuration>
381                 <executions>
382                     <execution>
383                         <phase>compile</phase>
384                         <goals>
385                             <goal>generate</goal>
386                         </goals>
387                     </execution>
388                 </executions>
389             </plugin>
390         </plugins>
391     </build>
392
393     <profiles>
394         <profile>
395             <id>docker</id>
396             <build>
397                 <plugins>
398                     <plugin>
399                         <groupId>io.fabric8</groupId>
400                         <artifactId>docker-maven-plugin</artifactId>
401                         <version>0.34.0</version>
402                         <inherited>false</inherited>
403                         <configuration>
404                             <images>
405                                 <image>
406                                     <name>${image.name}</name>
407                                     <build>
408                                         <cleanup>try</cleanup>
409                                         <noCache>true</noCache>
410                                         <dockerFileDir>${basedir}/target/docker-stage</dockerFileDir>
411                                         <tags>
412                                             <tag>${project.docker.latestminortag.version}</tag>
413                                             <tag>${project.docker.latestfulltag.version}</tag>
414                                             <tag>${project.docker.latesttagtimestamp.version}</tag>
415                                         </tags>
416                                     </build>
417                                 </image>
418                             </images>
419                             <verbose>${docker.verbose}</verbose>
420                             <skipPush>${docker.skip.push}</skipPush>
421                         </configuration>
422                         <executions>
423                             <execution>
424                                 <id>build-push-images</id>
425                                 <goals>
426                                     <goal>build</goal>
427                                     <goal>push</goal>
428                                 </goals>
429                             </execution>
430                         </executions>
431                     </plugin>
432                 </plugins>
433             </build>
434         </profile>
435     </profiles>
436 </project>