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