Merge "Add client-frankfurt skeleton project"
[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.0-SNAPSHOT</version>
27         <relativePath>..</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
49         <dependency>
50             <groupId>org.onap.ccsdk.cds.controllerblueprints</groupId>
51             <artifactId>blueprint-core</artifactId>
52             <exclusions>
53                 <exclusion>
54                     <groupId>org.springframework.boot</groupId>
55                     <artifactId>spring-boot-starter-logging</artifactId>
56                 </exclusion>
57             </exclusions>
58         </dependency>
59         <dependency>
60             <groupId>org.springframework.boot</groupId>
61             <artifactId>spring-boot-starter-security</artifactId>
62             <exclusions>
63                 <exclusion>
64                     <groupId>org.springframework.boot</groupId>
65                     <artifactId>spring-boot-starter-logging</artifactId>
66                 </exclusion>
67             </exclusions>
68         </dependency>
69
70         <!-- North Bound -->
71         <dependency>
72             <groupId>org.onap.ccsdk.cds.blueprintsprocessor</groupId>
73             <artifactId>designer-api</artifactId>
74         </dependency>
75         <dependency>
76             <groupId>org.onap.ccsdk.cds.blueprintsprocessor</groupId>
77             <artifactId>resource-api</artifactId>
78         </dependency>
79         <dependency>
80             <groupId>org.onap.ccsdk.cds.blueprintsprocessor</groupId>
81             <artifactId>selfservice-api</artifactId>
82         </dependency>
83         <dependency>
84             <groupId>org.onap.ccsdk.cds.blueprintsprocessor</groupId>
85             <artifactId>configs-api</artifactId>
86         </dependency>
87       <dependency>
88             <groupId>org.onap.ccsdk.cds.blueprintsprocessor</groupId>
89             <artifactId>health-api</artifactId>
90             <version>0.7.0-SNAPSHOT</version>
91         </dependency>
92         <dependency>
93             <groupId>org.onap.ccsdk.cds.blueprintsprocessor</groupId>
94             <artifactId>health-api-common</artifactId>
95             <version>0.7.0-SNAPSHOT</version>
96         </dependency>
97
98         <!-- Functions -->
99         <dependency>
100             <groupId>org.onap.ccsdk.cds.blueprintsprocessor.functions</groupId>
101             <artifactId>python-executor</artifactId>
102         </dependency>
103         <dependency>
104             <groupId>org.onap.ccsdk.cds.blueprintsprocessor.functions</groupId>
105             <artifactId>ansible-awx-executor</artifactId>
106         </dependency>
107         <dependency>
108             <groupId>org.onap.ccsdk.cds.blueprintsprocessor.functions</groupId>
109             <artifactId>netconf-executor</artifactId>
110         </dependency>
111         <dependency>
112             <groupId>org.onap.ccsdk.cds.blueprintsprocessor.functions</groupId>
113             <artifactId>restconf-executor</artifactId>
114         </dependency>
115         <dependency>
116             <groupId>org.onap.ccsdk.cds.blueprintsprocessor.functions</groupId>
117             <artifactId>cli-executor</artifactId>
118         </dependency>
119         <dependency>
120             <groupId>org.onap.ccsdk.cds.blueprintsprocessor.functions</groupId>
121             <artifactId>config-snapshots</artifactId>
122         </dependency>
123         <dependency>
124             <groupId>com.h2database</groupId>
125             <artifactId>h2</artifactId>
126         </dependency>
127         <dependency>
128             <groupId>org.powermock</groupId>
129             <artifactId>powermock-api-mockito2</artifactId>
130             <scope>test</scope>
131         </dependency>
132         <dependency>
133             <groupId>org.springframework.boot</groupId>
134             <artifactId>spring-boot-starter-test</artifactId>
135             <scope>test</scope>
136         </dependency>
137         <dependency>
138             <groupId>org.jetbrains.kotlin</groupId>
139             <artifactId>kotlin-test-junit</artifactId>
140             <scope>test</scope>
141         </dependency>
142         <dependency>
143             <groupId>io.projectreactor</groupId>
144             <artifactId>reactor-test</artifactId>
145             <scope>test</scope>
146         </dependency>
147         <!-- BEGIN UAT -->
148         <dependency>
149             <groupId>org.skyscreamer</groupId>
150             <artifactId>jsonassert</artifactId>
151         </dependency>
152         <dependency>
153             <groupId>org.yaml</groupId>
154             <artifactId>snakeyaml</artifactId>
155         </dependency>
156         <dependency>
157             <groupId>com.nhaarman.mockitokotlin2</groupId>
158             <artifactId>mockito-kotlin</artifactId>
159             <version>2.2.0</version>
160         </dependency>
161         <dependency>
162             <groupId>com.schibsted.spt.data</groupId>
163             <artifactId>jslt</artifactId>
164             <version>0.1.8</version>
165         </dependency>
166         <dependency>
167             <groupId>org.apache.httpcomponents</groupId>
168             <artifactId>httpclient</artifactId>
169             <version>${apache.httpcomponents.client.version}</version>
170         </dependency>
171         <dependency>
172             <groupId>org.apache.httpcomponents</groupId>
173             <artifactId>httpmime</artifactId>
174             <version>${apache.httpcomponents.client.version}</version>
175         </dependency>
176         <dependency>
177             <groupId>com.github.tomakehurst</groupId>
178             <artifactId>wiremock-jre8</artifactId>
179             <version>2.25.0</version>
180             <scope>test</scope>
181         </dependency>
182         <!-- END UAT -->
183         <dependency>
184             <groupId>ch.qos.logback</groupId>
185             <artifactId>logback-classic</artifactId>
186         </dependency>
187
188     </dependencies>
189
190     <build>
191         <resources>
192             <resource>
193                 <!--config and resource files -->
194                 <directory>${basedir}/etc</directory>
195                 <targetPath>${basedir}/target/etc</targetPath>
196                 <filtering>true</filtering>
197                 <includes>
198                     <include>**/*</include>
199                 </includes>
200             </resource>
201             <resource>
202                 <!--config and resource files -->
203                 <directory>${basedir}/src/main/resources</directory>
204                 <targetPath>${basedir}/target/src/main/resources</targetPath>
205                 <filtering>true</filtering>
206                 <includes>
207                     <include>**/*</include>
208                 </includes>
209             </resource>
210             <resource>
211                 <directory>src/main/resources</directory>
212                 <includes>
213                     <include>**/*</include>
214                 </includes>
215                 <filtering>true</filtering>
216             </resource>
217         </resources>
218         <plugins>
219             <plugin>
220                 <artifactId>maven-resources-plugin</artifactId>
221                 <version>2.6</version>
222                 <executions>
223                     <execution>
224                         <id>copy-dockerfile</id>
225                         <goals>
226                             <goal>copy-resources</goal>
227                         </goals><!-- here the phase you need -->
228                         <phase>validate</phase>
229                         <configuration>
230                             <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
231                             <resources>
232                                 <resource>
233                                     <directory>src/main/docker</directory>
234                                     <includes>
235                                         <include>*</include>
236                                     </includes>
237                                     <filtering>true</filtering>
238                                 </resource>
239                             </resources>
240                         </configuration>
241                     </execution>
242                 </executions>
243             </plugin>
244             <plugin>
245                 <groupId>org.apache.maven.plugins</groupId>
246                 <artifactId>maven-antrun-plugin</artifactId>
247                 <executions>
248                     <execution>
249                         <id>ant-test</id>
250                         <phase>package</phase>
251                         <configuration>
252                             <tasks>
253                                 <fixcrlf srcdir="${basedir}" eol="unix" includes="**/*.sh, **/*.source"/>
254                             </tasks>
255                         </configuration>
256                         <goals>
257                             <goal>run</goal>
258                         </goals>
259                     </execution>
260                 </executions>
261             </plugin>
262             <plugin><!--build the final artifact for docker deployment -->
263                 <artifactId>maven-assembly-plugin</artifactId>
264                 <version>3.1.0</version>
265                 <configuration>
266                     <!-- <skipAssembly>${skip.assembly}</skipAssembly> -->
267                     <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
268                     <descriptors>
269                         <descriptor>src/main/docker/distribution.xml</descriptor>
270                     </descriptors>
271                     <tarLongFileMode>posix</tarLongFileMode>
272                 </configuration>
273                 <executions>
274                     <execution>
275                         <id>${assembly.id}</id>
276                         <phase>package</phase>
277                         <goals>
278                             <goal>single</goal>
279                         </goals>
280                     </execution>
281                 </executions>
282             </plugin>
283             <plugin>
284                 <groupId>org.codehaus.groovy.maven</groupId>
285                 <artifactId>gmaven-plugin</artifactId>
286                 <version>1.0</version>
287                 <executions>
288                     <execution>
289                         <phase>validate</phase>
290                         <goals>
291                             <goal>execute</goal>
292                         </goals>
293                         <configuration>
294                             <source>${basedir}/../../../TagVersion.groovy</source>
295                         </configuration>
296                     </execution>
297                 </executions>
298             </plugin>
299             <plugin>
300                 <artifactId>maven-compiler-plugin</artifactId>
301                 <version>3.1</version>
302                 <configuration>
303                     <source>1.8</source>
304                     <target>1.8</target>
305                 </configuration>
306             </plugin>
307         </plugins>
308     </build>
309
310     <profiles>
311         <profile>
312             <id>docker</id>
313             <build>
314                 <plugins>
315                     <plugin>
316                         <groupId>io.fabric8</groupId>
317                         <artifactId>docker-maven-plugin</artifactId>
318                         <version>0.26.1</version>
319                         <inherited>false</inherited>
320                         <configuration>
321                             <images>
322                                 <image>
323                                     <name>${image.name}</name>
324                                     <build>
325                                         <cleanup>try</cleanup>
326                                         <dockerFileDir>${basedir}/target/docker-stage</dockerFileDir>
327                                         <tags>
328                                             <tag>${project.docker.latestminortag.version}</tag>
329                                             <tag>${project.docker.latestfulltag.version}</tag>
330                                             <tag>${project.docker.latesttagtimestamp.version}</tag>
331                                         </tags>
332                                     </build>
333                                 </image>
334                             </images>
335                             <verbose>true</verbose>
336                         </configuration>
337                         <executions>
338                             <execution>
339                                 <id>generate-images</id>
340                                 <phase>package</phase>
341                                 <goals>
342                                     <goal>build</goal>
343                                 </goals>
344                             </execution>
345                             <execution>
346                                 <id>push-images</id>
347                                 <phase>${docker.push.phase}</phase>
348                                 <goals>
349                                     <goal>build</goal>
350                                     <goal>push</goal>
351                                 </goals>
352                             </execution>
353                         </executions>
354                     </plugin>
355                 </plugins>
356             </build>
357         </profile>
358     </profiles>
359 </project>