Roll to next Frankfurt snapshot and fix sonar build
[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 <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">
21     <modelVersion>4.0.0</modelVersion>
22
23     <parent>
24         <groupId>org.onap.ccsdk.cds.blueprintsprocessor</groupId>
25         <artifactId>parent</artifactId>
26         <version>0.7.1-SNAPSHOT</version>
27         <relativePath>../parent</relativePath>
28     </parent>
29
30     <artifactId>application</artifactId>
31     <packaging>jar</packaging>
32
33     <name>Blueprints Processor Application</name>
34     <description>Blueprints Processor Application</description>
35
36     <properties>
37         <assembly.id>maven</assembly.id>
38         <name.space>org.onap.ccsdk.cds</name.space>
39         <serviceArtifactName>blueprintsprocessor</serviceArtifactName>
40         <image.name>onap/ccsdk-blueprintsprocessor</image.name>
41         <docker.push.phase>deploy</docker.push.phase>
42         <docker.verbose>true</docker.verbose>
43         <ccsdk.project.version>${project.version}</ccsdk.project.version>
44         <ccsdk.build.timestamp>${maven.build.timestamp}</ccsdk.build.timestamp>
45     </properties>
46
47     <dependencies>
48         <dependency>
49             <groupId>org.onap.ccsdk.cds.blueprintsprocessor</groupId>
50             <artifactId>blueprint-core</artifactId>
51             <exclusions>
52                 <exclusion>
53                     <groupId>org.springframework.boot</groupId>
54                     <artifactId>spring-boot-starter-logging</artifactId>
55                 </exclusion>
56             </exclusions>
57         </dependency>
58         <dependency>
59             <groupId>org.springframework.boot</groupId>
60             <artifactId>spring-boot-starter-security</artifactId>
61             <exclusions>
62                 <exclusion>
63                     <groupId>org.springframework.boot</groupId>
64                     <artifactId>spring-boot-starter-logging</artifactId>
65                 </exclusion>
66             </exclusions>
67         </dependency>
68
69         <!-- Error Catalog Services -->
70         <dependency>
71             <groupId>org.onap.ccsdk.cds.error.catalog</groupId>
72             <artifactId>error-catalog-services</artifactId>
73         </dependency>
74
75         <!-- North Bound -->
76         <dependency>
77             <groupId>org.onap.ccsdk.cds.blueprintsprocessor</groupId>
78             <artifactId>designer-api</artifactId>
79         </dependency>
80         <dependency>
81             <groupId>org.onap.ccsdk.cds.blueprintsprocessor</groupId>
82             <artifactId>resource-api</artifactId>
83         </dependency>
84         <dependency>
85             <groupId>org.onap.ccsdk.cds.blueprintsprocessor</groupId>
86             <artifactId>selfservice-api</artifactId>
87         </dependency>
88         <dependency>
89             <groupId>org.onap.ccsdk.cds.blueprintsprocessor</groupId>
90             <artifactId>configs-api</artifactId>
91         </dependency>
92         <dependency>
93             <groupId>org.onap.ccsdk.cds.blueprintsprocessor</groupId>
94             <artifactId>health-api</artifactId>
95         </dependency>
96         <dependency>
97             <groupId>org.onap.ccsdk.cds.blueprintsprocessor</groupId>
98             <artifactId>health-api-common</artifactId>
99         </dependency>
100
101         <!-- Functions -->
102         <dependency>
103             <groupId>org.onap.ccsdk.cds.blueprintsprocessor.functions</groupId>
104             <artifactId>python-executor</artifactId>
105         </dependency>
106         <dependency>
107             <groupId>org.onap.ccsdk.cds.blueprintsprocessor.functions</groupId>
108             <artifactId>restful-executor</artifactId>
109         </dependency>
110         <dependency>
111             <groupId>org.onap.ccsdk.cds.blueprintsprocessor.functions</groupId>
112             <artifactId>ansible-awx-executor</artifactId>
113         </dependency>
114         <dependency>
115             <groupId>org.onap.ccsdk.cds.blueprintsprocessor.functions</groupId>
116             <artifactId>netconf-executor</artifactId>
117         </dependency>
118         <dependency>
119             <groupId>org.onap.ccsdk.cds.blueprintsprocessor.functions</groupId>
120             <artifactId>restconf-executor</artifactId>
121         </dependency>
122         <dependency>
123             <groupId>org.onap.ccsdk.cds.blueprintsprocessor.functions</groupId>
124             <artifactId>cli-executor</artifactId>
125         </dependency>
126         <dependency>
127             <groupId>org.onap.ccsdk.cds.blueprintsprocessor.functions</groupId>
128             <artifactId>config-snapshots</artifactId>
129         </dependency>
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         <!-- BEGIN UAT -->
155         <dependency>
156             <groupId>org.skyscreamer</groupId>
157             <artifactId>jsonassert</artifactId>
158         </dependency>
159         <dependency>
160             <groupId>org.yaml</groupId>
161             <artifactId>snakeyaml</artifactId>
162         </dependency>
163         <dependency>
164             <groupId>com.nhaarman.mockitokotlin2</groupId>
165             <artifactId>mockito-kotlin</artifactId>
166             <!-- It's unusual but 'compile' here is the right scope since mockito is being used at runtime by
167                  the UatServices (/api/v1/uat/spy and /api/v1/uat/verify endpoints) -->
168             <scope>compile</scope>
169         </dependency>
170         <dependency>
171             <groupId>com.schibsted.spt.data</groupId>
172             <artifactId>jslt</artifactId>
173         </dependency>
174         <dependency>
175             <groupId>org.apache.httpcomponents</groupId>
176             <artifactId>httpclient</artifactId>
177             <version>${apache.httpcomponents.client.version}</version>
178         </dependency>
179         <dependency>
180             <groupId>org.apache.httpcomponents</groupId>
181             <artifactId>httpmime</artifactId>
182             <version>${apache.httpcomponents.client.version}</version>
183         </dependency>
184         <dependency>
185             <groupId>com.github.tomakehurst</groupId>
186             <artifactId>wiremock-jre8</artifactId>
187             <version>2.25.0</version>
188             <scope>test</scope>
189         </dependency>
190         <!-- END UAT -->
191         <dependency>
192             <groupId>ch.qos.logback</groupId>
193             <artifactId>logback-classic</artifactId>
194         </dependency>
195
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                 <artifactId>maven-resources-plugin</artifactId>
229                 <version>2.6</version>
230                 <executions>
231                     <execution>
232                         <id>copy-dockerfile</id>
233                         <goals>
234                             <goal>copy-resources</goal>
235                         </goals><!-- here the phase you need -->
236                         <phase>validate</phase>
237                         <configuration>
238                             <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
239                             <resources>
240                                 <resource>
241                                     <directory>src/main/docker</directory>
242                                     <includes>
243                                         <include>*</include>
244                                     </includes>
245                                     <filtering>true</filtering>
246                                 </resource>
247                             </resources>
248                         </configuration>
249                     </execution>
250                 </executions>
251             </plugin>
252             <plugin>
253                 <groupId>org.apache.maven.plugins</groupId>
254                 <artifactId>maven-antrun-plugin</artifactId>
255                 <executions>
256                     <execution>
257                         <id>ant-test</id>
258                         <phase>package</phase>
259                         <configuration>
260                             <tasks>
261                                 <fixcrlf srcdir="${basedir}" eol="unix" includes="**/*.sh, **/*.source"/>
262                             </tasks>
263                         </configuration>
264                         <goals>
265                             <goal>run</goal>
266                         </goals>
267                     </execution>
268                 </executions>
269             </plugin>
270             <plugin><!--build the final artifact for docker deployment -->
271                 <artifactId>maven-assembly-plugin</artifactId>
272                 <version>3.1.0</version>
273                 <configuration>
274                     <!-- <skipAssembly>${skip.assembly}</skipAssembly> -->
275                     <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
276                     <descriptors>
277                         <descriptor>src/main/docker/distribution.xml</descriptor>
278                     </descriptors>
279                     <tarLongFileMode>posix</tarLongFileMode>
280                 </configuration>
281                 <executions>
282                     <execution>
283                         <id>${assembly.id}</id>
284                         <phase>package</phase>
285                         <goals>
286                             <goal>single</goal>
287                         </goals>
288                     </execution>
289                 </executions>
290             </plugin>
291             <plugin>
292                 <groupId>org.codehaus.groovy.maven</groupId>
293                 <artifactId>gmaven-plugin</artifactId>
294                 <version>1.0</version>
295                 <executions>
296                     <execution>
297                         <phase>validate</phase>
298                         <goals>
299                             <goal>execute</goal>
300                         </goals>
301                         <configuration>
302                             <source>${basedir}/../../../TagVersion.groovy</source>
303                         </configuration>
304                     </execution>
305                 </executions>
306             </plugin>
307             <plugin>
308                 <artifactId>maven-compiler-plugin</artifactId>
309                 <version>3.1</version>
310                 <configuration>
311                     <source>1.8</source>
312                     <target>1.8</target>
313                 </configuration>
314             </plugin>
315             <plugin>
316                 <groupId>pl.project13.maven</groupId>
317                 <artifactId>git-commit-id-plugin</artifactId>
318             </plugin>
319         </plugins>
320     </build>
321
322     <profiles>
323         <profile>
324             <id>docker</id>
325             <build>
326                 <plugins>
327                     <plugin>
328                         <groupId>io.fabric8</groupId>
329                         <artifactId>docker-maven-plugin</artifactId>
330                         <version>0.26.1</version>
331                         <inherited>false</inherited>
332                         <configuration>
333                             <images>
334                                 <image>
335                                     <name>${image.name}</name>
336                                     <build>
337                                         <cleanup>try</cleanup>
338                                         <dockerFileDir>${basedir}/target/docker-stage</dockerFileDir>
339                                         <tags>
340                                             <tag>${project.docker.latestminortag.version}</tag>
341                                             <tag>${project.docker.latestfulltag.version}</tag>
342                                             <tag>${project.docker.latesttagtimestamp.version}</tag>
343                                         </tags>
344                                     </build>
345                                 </image>
346                             </images>
347                             <verbose>true</verbose>
348                         </configuration>
349                         <executions>
350                             <execution>
351                                 <id>generate-images</id>
352                                 <phase>package</phase>
353                                 <goals>
354                                     <goal>build</goal>
355                                 </goals>
356                             </execution>
357                             <execution>
358                                 <id>push-images</id>
359                                 <phase>${docker.push.phase}</phase>
360                                 <goals>
361                                     <goal>build</goal>
362                                     <goal>push</goal>
363                                 </goals>
364                             </execution>
365                         </executions>
366                     </plugin>
367                 </plugins>
368             </build>
369         </profile>
370     </profiles>
371 </project>