Add RFC 8040 compliant error handler
[ccsdk/apps.git] / ms / sliboot / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
4     <modelVersion>4.0.0</modelVersion>
5
6     <parent>
7         <groupId>org.onap.ccsdk.parent</groupId>
8         <artifactId>spring-boot-starter-parent</artifactId>
9         <version>2.0.0-SNAPSHOT</version>
10         <relativePath/>
11     </parent>
12
13     <groupId>org.onap.ccsdk.apps</groupId>
14     <artifactId>sliboot</artifactId>
15     <version>1.0.0-SNAPSHOT</version>
16     <packaging>jar</packaging>
17
18     <name>ccsdk-apps :: sliboot :: ${project.artifactId}</name>
19
20     <properties>
21         <start-class>org.onap.ccsdk.apps.ms.sliboot.App</start-class>
22         <shiro.version>1.5.0</shiro.version>
23         <aaf-shiro-bundle.version>2.1.13</aaf-shiro-bundle.version>
24         <base.image.name>onap/ccsdk-alpine-image</base.image.name>
25         <image.name>onap/ccsdk-sliboot-alpine-image</image.name>
26         <ccsdk.project.version>${project.version}</ccsdk.project.version>
27         <ccsdk.build.timestamp>${maven.build.timestamp}</ccsdk.build.timestamp>
28         <maven.build.timestamp.format>yyyyMMdd'T'HHmmss'Z'</maven.build.timestamp.format>
29         <ccsdk.sliboot.jar>${project.artifactId}-${project.version}.jar</ccsdk.sliboot.jar>
30         <docker.push.phase>deploy</docker.push.phase>
31         <docker.verbose>true</docker.verbose>
32     </properties>
33
34     <dependencies>
35         <dependency>
36             <groupId>io.swagger</groupId>
37             <artifactId>swagger-annotations</artifactId>
38         </dependency>
39         <dependency>
40             <groupId>org.apache.shiro</groupId>
41             <artifactId>shiro-spring-boot-web-starter</artifactId>
42             <version>${shiro.version}</version>
43             <exclusions>
44                 <exclusion>
45                     <groupId>org.springframework.boot</groupId>
46                     <artifactId>spring-boot-starter-logging</artifactId>
47                 </exclusion>
48             </exclusions>
49         </dependency>
50         <dependency>
51             <groupId>org.springframework.boot</groupId>
52             <artifactId>spring-boot-starter-log4j2</artifactId>
53         </dependency>
54         <dependency>
55             <groupId>org.onap.aaf.cadi</groupId>
56             <artifactId>aaf-cadi-shiro</artifactId>
57             <version>${aaf-shiro-bundle.version}</version>
58         </dependency>
59
60         <dependency>
61             <groupId>org.springframework.boot</groupId>
62             <artifactId>spring-boot-starter-test</artifactId>
63             <scope>test</scope>
64         </dependency>
65         <dependency>
66             <groupId>org.springframework.boot</groupId>
67             <artifactId>spring-boot-starter-data-jpa</artifactId>
68         </dependency>
69         <dependency>
70             <groupId>io.springfox</groupId>
71             <artifactId>springfox-swagger2</artifactId>
72             <version>2.9.2</version>
73         </dependency>
74         <dependency>
75             <groupId>io.springfox</groupId>
76             <artifactId>springfox-swagger-ui</artifactId>
77             <version>2.9.2</version>
78         </dependency>
79         <dependency>
80             <groupId>${project.groupId}</groupId>
81             <artifactId>services</artifactId>
82             <version>${project.version}</version>
83         </dependency>
84         <dependency>
85             <groupId>org.onap.ccsdk.sli.core</groupId>
86             <artifactId>dblib-provider</artifactId>
87             <version>${ccsdk.sli.core.version}</version>
88         </dependency>
89         <dependency>
90             <groupId>org.onap.ccsdk.sli.core</groupId>
91             <artifactId>sli-common</artifactId>
92             <version>${ccsdk.sli.core.version}</version>
93         </dependency>
94         <dependency>
95             <groupId>org.onap.ccsdk.sli.core</groupId>
96             <artifactId>sli-provider-base</artifactId>
97             <version>${ccsdk.sli.core.version}</version>
98         </dependency>
99         <dependency>
100             <groupId>com.google.code.gson</groupId>
101             <artifactId>gson</artifactId>
102         </dependency>
103         <dependency>
104             <groupId>org.apache.derby</groupId>
105             <artifactId>derby</artifactId>
106             <scope>test</scope>
107         </dependency>
108         <dependency>
109             <groupId>org.mariadb.jdbc</groupId>
110             <artifactId>mariadb-java-client</artifactId>
111         </dependency>
112         <dependency>
113             <groupId>junit</groupId>
114             <artifactId>junit</artifactId>
115             <scope>test</scope>
116         </dependency>
117         <dependency>
118             <groupId>org.onap.logging-analytics</groupId>
119             <artifactId>logging-filter-spring</artifactId>
120             <version>1.6.6</version>
121         </dependency>
122         <dependency>
123             <groupId>javax.ws.rs</groupId>
124             <artifactId>javax.ws.rs-api</artifactId>
125         </dependency>
126         <dependency>
127             <groupId>org.onap.ccsdk.sli.core</groupId>
128             <artifactId>sliPluginUtils-provider</artifactId>
129             <version>${ccsdk.sli.core.version}</version>
130         </dependency>
131         <dependency>
132             <groupId>org.onap.ccsdk.sli.plugins</groupId>
133             <artifactId>restapi-call-node-provider</artifactId>
134             <version>${ccsdk.sli.plugins.version}</version>
135         </dependency>
136         <dependency>
137             <groupId>org.onap.ccsdk.sli.plugins</groupId>
138             <artifactId>properties-node-provider</artifactId>
139             <version>${ccsdk.sli.plugins.version}</version>
140         </dependency>
141         <!-- this jersey jar is needed for rest api call node to function properly -->
142         <dependency>
143             <groupId>org.glassfish.jersey.inject</groupId>
144             <artifactId>jersey-hk2</artifactId>
145         </dependency>
146     </dependencies>
147
148     <build>
149         <plugins>
150             <plugin>
151                 <groupId>org.codehaus.groovy.maven</groupId>
152                 <artifactId>gmaven-plugin</artifactId>
153                 <executions>
154                     <execution>
155                         <phase>validate</phase>
156                         <goals>
157                             <goal>execute</goal>
158                         </goals>
159                         <configuration>
160                             <source>${basedir}/TagVersion.groovy</source>
161                         </configuration>
162                     </execution>
163                 </executions>
164             </plugin>
165
166             <plugin>
167                 <groupId>org.apache.maven.plugins</groupId>
168                 <artifactId>maven-dependency-plugin</artifactId>
169                 <version>2.10</version>
170
171                 <executions>
172                     <execution>
173                         <id>get-sliapi-yaml</id>
174                         <phase>initialize</phase>
175                         <goals>
176                             <goal>copy</goal>
177                         </goals>
178                         <configuration>
179                             <artifactItems>
180                                 <artifactItem>
181                                     <groupId>org.onap.ccsdk.sli.core</groupId>
182                                     <artifactId>sliapi-model-swagger</artifactId>
183                                     <version>${ccsdk.sli.core.version}</version>
184                                     <type>yaml</type>
185                                     <outputDirectory>${project.build.directory}/yaml</outputDirectory>
186                                     <destFileName>sliapi.yaml</destFileName>
187                                 </artifactItem>
188                             </artifactItems>
189                         </configuration>
190                     </execution>
191                 </executions>
192             </plugin>
193             <plugin>
194                 <groupId>io.swagger</groupId>
195                 <artifactId>swagger-codegen-maven-plugin</artifactId>
196                 <version>2.3.1</version>
197                 <executions>
198                     <execution>
199                         <goals>
200                             <goal>generate</goal>
201                         </goals>
202                         <configuration>
203                             <output>target/generated-sources</output>
204                             <inputSpec>${project.build.directory}/yaml/sliapi.yaml</inputSpec>
205                             <language>spring</language>
206                             <apiPackage>org.onap.ccsdk.apps.ms.sliboot.swagger</apiPackage>
207                             <modelPackage>org.onap.ccsdk.apps.ms.sliboot.swagger.model</modelPackage>
208                             <invokerPackage>org.onap.ccsdk.apps.ms.sliboot.swagger</invokerPackage>
209                             <generateApis>true</generateApis>
210                             <generateApiTests>true</generateApiTests>
211                             <ignoreFileOverride>${project.basedir}/.swagger-codegen-ignore</ignoreFileOverride>
212                             <withXml>true</withXml>
213                             <templateDirectory>${project.basedir}/src/main/templates</templateDirectory>
214                             <configOptions>
215                                 <java8>true</java8>
216                                 <springBootVersion>2.2.4-RELEASE</springBootVersion>
217                             </configOptions>
218                         </configuration>
219                     </execution>
220                 </executions>
221             </plugin>
222             <plugin>
223                 <groupId>org.springframework.boot</groupId>
224                 <artifactId>spring-boot-maven-plugin</artifactId>
225                 <executions>
226                     <execution>
227                         <goals>
228                             <goal>repackage</goal>
229                         </goals>
230                     </execution>
231                 </executions>
232             </plugin>
233
234         </plugins>
235     </build>
236
237     <profiles>
238         <profile>
239             <id>docker</id>
240             <build>
241                 <plugins>
242                     <plugin>
243                         <groupId>org.apache.maven.plugins</groupId>
244                         <artifactId>maven-dependency-plugin</artifactId>
245                         <version>2.10</version>
246
247                         <executions>
248                             <execution>
249                                 <id>copy-dependencies</id>
250                                 <goals>
251                                     <goal>copy-dependencies</goal>
252                                 </goals>
253                                 <phase>prepare-package</phase>
254                                 <configuration>
255                                     <excludeTransitive>true</excludeTransitive>
256                                     <outputDirectory>${project.build.directory}/docker-stage/opt/onap/ccsdk/lib</outputDirectory>
257                                     <overWriteReleases>false</overWriteReleases>
258                                     <overWriteSnapshots>true</overWriteSnapshots>
259                                     <overWriteIfNewer>true</overWriteIfNewer>
260                                     <useRepositoryLayout>false</useRepositoryLayout>
261                                     <addParentPoms>false</addParentPoms>
262                                     <copyPom>false</copyPom>
263                                 </configuration>
264                             </execution>
265                             <execution>
266                                 <id>unpack dgs</id>
267                                 <phase>generate-sources</phase>
268                                 <goals>
269                                     <goal>unpack</goal>
270                                 </goals>
271                                 <configuration>
272                                     <outputDirectory>${basedir}/target/docker-stage/opt/onap/ccsdk</outputDirectory>
273                                     <artifactItems>
274                                         <artifactItem>
275                                             <groupId>org.onap.ccsdk.distribution</groupId>
276                                             <artifactId>platform-logic-installer</artifactId>
277                                             <version>${project.version}</version>
278                                             <type>zip</type>
279                                         </artifactItem>
280                                     </artifactItems>
281                                 </configuration>
282                             </execution>
283                         </executions>
284                     </plugin>
285                     <plugin>
286                         <artifactId>maven-resources-plugin</artifactId>
287                         <version>2.6</version>
288                         <executions>
289                             <execution>
290                                 <id>copy-dockerfile</id>
291                                 <goals>
292                                     <goal>copy-resources</goal>
293                                 </goals><!-- here the phase you need -->
294                                 <phase>initialize</phase>
295                                 <configuration>
296                                     <outputDirectory>${basedir}/target/docker-stage</outputDirectory>
297                                     <resources>
298                                         <resource>
299                                             <directory>src/main/docker</directory>
300                                             <includes>
301                                                 <include>Dockerfile</include>
302                                             </includes>
303                                             <filtering>true</filtering>
304                                         </resource>
305                                     </resources>
306                                 </configuration>
307                             </execution>
308                             <execution>
309                                 <id>copy-config</id>
310                                 <goals>
311                                     <goal>copy-resources</goal>
312                                 </goals><!-- here the phase you need -->
313                                 <phase>generate-resources</phase>
314                                 <configuration>
315                                     <outputDirectory>${basedir}/target/docker-stage/opt/onap/ccsdk/config</outputDirectory>
316                                     <resources>
317                                         <resource>
318                                             <directory>src/main/resources</directory>
319                                             <includes>
320                                                 <include>*.properties</include>
321                                                 <include>*.props</include>
322                                                 <include>*.sql</include>
323                                             </includes>
324                                             <filtering>true</filtering>
325                                         </resource>
326                                         <resource>
327                                             <directory>src/main/resources</directory>
328                                             <includes>
329                                                 <include>*.keyfile</include>
330                                                 <include>*.jks</include>
331                                                 <include>*.p12</include>
332                                             </includes>
333                                             <filtering>false</filtering>
334                                         </resource>
335                                     </resources>
336                                 </configuration>
337                             </execution>
338                             <execution>
339                                 <id>copy-script</id>
340                                 <goals>
341                                     <goal>copy-resources</goal>
342                                 </goals><!-- here the phase you need -->
343                                 <phase>generate-resources</phase>
344                                 <configuration>
345                                     <outputDirectory>${basedir}/target/docker-stage/opt/onap/ccsdk/bin</outputDirectory>
346                                     <resources>
347                                         <resource>
348                                             <directory>src/main/resources</directory>
349                                             <includes>
350                                                 <include>*.sh</include>
351                                             </includes>
352                                             <filtering>true</filtering>
353                                         </resource>
354                                     </resources>
355                                 </configuration>
356                             </execution>
357                             <execution>
358                                 <id>copy-jar</id>
359                                 <goals>
360                                     <goal>copy-resources</goal>
361                                 </goals><!-- here the phase you need -->
362                                 <phase>package</phase>
363                                 <configuration>
364                                     <outputDirectory>${basedir}/target/docker-stage/opt/onap/ccsdk/lib</outputDirectory>
365                                     <resources>
366                                         <resource>
367                                             <directory>${basedir}/target</directory>
368                                             <includes>
369                                                 <include>${ccsdk.sliboot.jar}</include>
370                                             </includes>
371                                             <filtering>false</filtering>
372                                         </resource>
373                                     </resources>
374                                 </configuration>
375                             </execution>
376                         </executions>
377                     </plugin>
378                     <plugin>
379                         <groupId>io.fabric8</groupId>
380                         <artifactId>docker-maven-plugin</artifactId>
381                         <version>0.28.0</version>
382                         <inherited>false</inherited>
383                         <configuration>
384                             <images>
385                                 <image>
386                                     <name>${image.name}</name>
387                                     <build>
388                                         <cleanup>try</cleanup>
389                                         <dockerFileDir>${basedir}/target/docker-stage</dockerFileDir>
390                                         <dockerFile>Dockerfile</dockerFile>
391                                         <tags>
392                                             <tag>${project.docker.latestminortag.version}</tag>
393                                             <tag>${project.docker.latestfulltag.version}</tag>
394                                             <tag>${project.docker.latesttagtimestamp.version}</tag>
395                                         </tags>
396                                     </build>
397                                 </image>
398                             </images>
399                         </configuration>
400                         <executions>
401                             <execution>
402                                 <id>generate-images</id>
403                                 <phase>package</phase>
404                                 <goals>
405                                     <goal>build</goal>
406                                 </goals>
407                             </execution>
408
409                             <execution>
410                                 <id>push-images</id>
411                                 <phase>${docker.push.phase}</phase>
412                                 <goals>
413                                     <goal>build</goal>
414                                     <goal>push</goal>
415                                 </goals>
416                             </execution>
417                         </executions>
418                     </plugin>
419                 </plugins>
420             </build>
421         </profile>
422     </profiles>
423 </project>