Add Certs, Docker Build
[aaf/authz.git] / auth / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3  * ============LICENSE_START====================================================
4  * org.onap.aaf
5  * ===========================================================================
6  * Copyright (c) 2017 AT&T Intellectual Property. All rights reserved.
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  * ============LICENSE_END====================================================
20  *
21 -->
22 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
23         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
24
25         <modelVersion>4.0.0</modelVersion>
26         <groupId>org.onap.aaf.authz.auth</groupId>
27         <artifactId>parent</artifactId>
28         <version>2.1.0-SNAPSHOT</version>
29         <name>AAF Auth Parent</name>
30         <packaging>pom</packaging>
31         
32         <parent>             
33         <groupId>org.onap.oparent</groupId>
34         <artifactId>oparent</artifactId>
35         <version>1.1.0</version>
36     </parent>
37         <properties>
38                 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
39                 <project.interfaceVersion>2.10-SNAPSHOT</project.interfaceVersion>
40                 <project.miscVersion>2.1.0-SNAPSHOT</project.miscVersion>
41                 <project.cadiVersion>2.1.0-SNAPSHOT</project.cadiVersion>
42                 <!-- >project.jettyVersion>9.3.22.v20171030</project.jettyVersion -->
43                 <project.jettyVersion>9.4.8.v20171121</project.jettyVersion>
44                 <powermock.version>1.5.1</powermock.version>
45                 <project.ext_root_dir>/opt/app/osaaf</project.ext_root_dir>
46                 <!--  SONAR  -->
47                  <jacoco.version>0.7.7.201606060606</jacoco.version>
48             <sonar-jacoco-listeners.version>3.2</sonar-jacoco-listeners.version>
49             <sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
50             <!-- Default Sonar configuration -->
51             <sonar.jacoco.reportPaths>target/code-coverage/jacoco-ut.exec</sonar.jacoco.reportPaths>
52             <sonar.jacoco.itReportPaths>target/code-coverage/jacoco-it.exec</sonar.jacoco.itReportPaths>
53             <!-- Note: This list should match jacoco-maven-plugin's exclusion list below -->
54             <sonar.exclusions>**/gen/**,**/generated-sources/**,**/yang-gen**,**/pax/**</sonar.exclusions>
55                 <nexusproxy>https://nexus.onap.org</nexusproxy>
56                 <snapshotNexusPath>/content/repositories/snapshots/</snapshotNexusPath>
57                 <releaseNexusPath>/content/repositories/releases/</releaseNexusPath>
58                 <stagingNexusPath>/content/repositories/staging/</stagingNexusPath>
59                 <sitePath>/content/sites/site/org/onap/aaf/authz/${project.artifactId}/${project.version}</sitePath>
60         </properties>
61
62         <developers>
63                 <developer>
64                         <name>Jonathan Gathman</name>
65                         <email>jonathan.gathman@att.com</email>
66                         <organization>ATT</organization>
67                         <roles>
68                                 <role>Architect</role>
69                                 <role>Lead Developer</role>
70                         </roles>
71                 </developer>
72                 <developer>
73                         <name>Gabe Maurer</name>
74                         <email>gabe.maurer@att.com</email>
75                         <organization>ATT</organization>
76                         <roles>
77                                 <role>Developer</role>
78                         </roles>
79                 </developer>
80                 <developer>
81                         <name>Ian Howell</name>
82                         <email>ian.howell@att.com</email>
83                         <organization>ATT</organization>
84                         <roles>
85                                 <role>Developer</role>
86                         </roles>
87                 </developer>
88                 <developer>
89                         <name>Sai Gandham</name>
90                         <email>sai.gandham@att.com</email>
91                         <organization>ATT</organization>
92                         <roles>
93                                 <role>Developer</role>
94                         </roles>
95                 </developer>
96         </developers>
97
98         <build>
99                 <pluginManagement>
100                         <plugins>
101                                 <plugin>
102                                         <groupId>org.apache.maven.plugins</groupId>
103                                         <artifactId>maven-compiler-plugin</artifactId>
104                                         <version>2.3.2</version>
105                                         <configuration>
106                                                 <source>1.8</source>
107                                                 <target>1.8</target>
108                                         </configuration>
109                                 </plugin>
110                                 <plugin>
111                                         <groupId>org.apache.maven.plugins</groupId>
112                                         <artifactId>maven-deploy-plugin</artifactId>
113                                         <version>2.6</version>
114                                         <configuration>
115                                                 <skip>false</skip>
116                                         </configuration>
117                                 </plugin>
118
119                                 <plugin>
120                                         <groupId>org.apache.maven.plugins</groupId>
121                                         <artifactId>maven-surefire-plugin</artifactId>
122                                         <version>2.17</version>
123                                         <configuration>
124                                                 <skipTests>false</skipTests>
125
126                                                 <includes>
127                                                         <include>**/JU*.java</include>
128                                                 </includes>
129                                                 <excludes>
130                                                 </excludes>
131
132                                         </configuration>
133                                 </plugin>
134
135                                 <plugin>
136                                         <groupId>org.apache.maven.plugins</groupId>
137                                         <artifactId>maven-failsafe-plugin</artifactId>
138                                         <version>2.17</version>
139                                         <configuration>
140                                                 <skipTests>false</skipTests>
141                                         </configuration>
142                                         <executions>
143                                                 <execution>
144                                                         <id>integration-test</id>
145                                                         <goals>
146                                                                 <goal>integration-test</goal>
147                                                                 <goal>verify</goal>
148                                                         </goals>
149                                                 </execution>
150                                         </executions>
151                                 </plugin>
152                                 
153                                 <!--  Builds O/S Command line ready jars and scripts, ready to run/zip -->
154                                 <plugin>
155                                         <groupId>org.codehaus.mojo</groupId>
156                                         <artifactId>appassembler-maven-plugin</artifactId>
157                                         <version>1.10</version>
158                                         <executions>
159                                                 <execution>
160                                                         <goals>
161                                                                 <goal>assemble</goal>
162                                                         </goals>
163                                                         <phase>install</phase>
164                                                 </execution>
165                                         </executions>
166                                         <configuration>
167                                                 <programs/> <!-- this set in projects that have programs -->
168                                                 <assembleDirectory>../aaf_${project.version}</assembleDirectory>
169                                                 <copyConfigurationDirectory>true</copyConfigurationDirectory>
170                                                 <configurationDirectory>etc</configurationDirectory>
171                                                 <repositoryName>lib</repositoryName>
172                                                 <includeConfigurationDirectoryInClasspath>false</includeConfigurationDirectoryInClasspath>
173                                                 <repositoryLayout>flat</repositoryLayout>
174                                         </configuration>
175                                 </plugin>
176                                 
177                                 <!-- Build Docker Image -->
178                                 <plugin>
179                                         <groupId>com.spotify</groupId>
180                                         <artifactId>docker-maven-plugin</artifactId>
181                                         <version>1.0.0</version>
182                                         <configuration>
183                                                 <imageName>onap/osaaf/${project.artifactId}</imageName>
184                                                 <!-- <dockerDirectory>${dockerLocation}</dockerDirectory> -->
185                                                 <dockerDirectory>${basedir}/src/main/resources/docker</dockerDirectory>
186                                                 <imageTags>
187                                                         <imageTag>latest</imageTag>
188                                                         <imageTag>${project.docker.latesttagtimestamp.version}</imageTag>
189                                                         <imageTag>${project.docker.latesttag.version}</imageTag>
190                                                 </imageTags>
191                                                 <forceTags>true</forceTags>
192                                                 <!-- <resources> <resource> <targetPath>/</targetPath> <directory>${project.build.directory}/opt</directory> 
193                                                         <filtering>true</filtering> <includes> <include>**/**</include> </includes> 
194                                                         </resource> </resources> -->
195                                                 <resources>
196                                                         <resource>
197                                                                 <targetPath>/</targetPath>
198                                                                 <directory>${project.build.directory}/opt</directory>
199                                                                 <include>${project.build.finalName}.jar</include>
200                                                         </resource>
201                                                         <resource>
202                                                                 <targetPath>/</targetPath>
203                                                                 <directory>${project.build.directory}</directory>
204                                                                 <include>**/**</include>
205                                                         </resource>
206                                                 </resources>
207                                         </configuration>
208                                         <executions>
209                                                 <execution>
210                                                         <id>build-image</id>
211                                                         <phase>package</phase>
212                                                         <goals>
213                                                                 <goal>build</goal>
214                                                         </goals>
215                                                         <configuration>
216                                                                 <skipDockerBuild>${skip.docker.build}</skipDockerBuild>
217                                                         </configuration>
218                                                 </execution>
219                                 
220                                                 <execution>
221                                                         <id>tag-image-project-version</id>
222                                                         <phase>package</phase>
223                                                         <goals>
224                                                                 <goal>tag</goal>
225                                                         </goals>
226                                                         <configuration>
227                                                                 <image>onap/osaaf/${project.artifactId}</image>
228                                                                 <newName>${docker.push.registry}/onap/osaaf/${project.artifactId}:${project.version}</newName>
229                                                                 <skipDockerTag>${skip.docker.push}</skipDockerTag>
230                                                         </configuration>
231                                                 </execution>
232                                 
233                                                 <execution>
234                                                         <id>tag-image-latest</id>
235                                                         <phase>package</phase>
236                                                         <goals>
237                                                                 <goal>tag</goal>
238                                                         </goals>
239                                                         <configuration>
240                                                                 <image>onap/aaf/authz-service</image>
241                                                                 <newName>${docker.push.registry}/onap/osaaf/${project.artifactId}:latest</newName>
242                                                                 <skipDockerTag>${skip.docker.push}</skipDockerTag>
243                                                         </configuration>
244                                                 </execution>
245                                 
246                                                 <execution>
247                                                         <id>push-image-latest</id>
248                                                         <phase>deploy</phase>
249                                                         <goals>
250                                                                 <goal>push</goal>
251                                                         </goals>
252                                                         <configuration>
253                                                                 <imageName>${docker.push.registry}/onap/osaaf/${project.artifactId}:${project.version}</imageName>
254                                                                 <skipDockerPush>${skip.docker.push}</skipDockerPush>
255                                                         </configuration>
256                                                 </execution>
257                                 
258                                                 <execution>
259                                                         <id>push-image</id>
260                                                         <phase>deploy</phase>
261                                                         <goals>
262                                                                 <goal>push</goal>
263                                                         </goals>
264                                                         <configuration>
265                                                                 <imageName>${docker.push.registry}/onap/osaaf/${project.artifactId}:latest</imageName>
266                                                                 <skipDockerPush>${skip.docker.push}</skipDockerPush>
267                                                         </configuration>
268                                                 </execution>
269                                         </executions>
270                                 </plugin>
271                                 <plugin>
272                                 <groupId>org.sonatype.plugins</groupId>
273                                 <artifactId>nexus-staging-maven-plugin</artifactId>
274                                 <version>1.6.7</version>
275                                 <extensions>true</extensions>
276                                 <configuration>
277                                         <nexusUrl>${nexusproxy}</nexusUrl>
278                                         <stagingProfileId>176c31dfe190a</stagingProfileId>
279                                         <serverId>ecomp-staging</serverId>
280                                 </configuration>
281                         </plugin>               
282                         <plugin>
283                                 <groupId>org.jacoco</groupId>
284                                 <artifactId>jacoco-maven-plugin</artifactId>
285                                 <version>0.7.7.201606060606</version>
286                                 <configuration>
287                                         <dumpOnExit>true</dumpOnExit>
288                                         <includes>
289                                                 <include>org.onap.aaf.*</include>
290                                         </includes>
291                                 </configuration>
292                                 <executions>
293                                         <execution>
294                                                 <id>pre-unit-test</id>
295                                                 <goals>
296                                                         <goal>prepare-agent</goal>
297                                                 </goals>
298                                                 <configuration>
299                                                         <destFile>${project.build.directory}/coverage-reports/jacoco.exec</destFile>
300                                                         <!-- <append>true</append> -->
301                                                 </configuration>
302                                         </execution>
303                                         <execution>
304                                                 <id>pre-integration-test</id>
305                                                 <phase>pre-integration-test</phase>
306                                                 <goals>
307                                                         <goal>prepare-agent</goal>
308                                                 </goals>
309                                                 <configuration>
310                                                         <destFile>${project.build.directory}/coverage-reports/jacoco-it.exec</destFile>
311                                                         <!-- <append>true</append> -->
312                                                 </configuration>
313                                         </execution>
314                                         <execution>
315                         <goals>
316                             <goal>merge</goal>
317                         </goals>
318                         <phase>post-integration-test</phase>
319                         <configuration>
320                             <fileSets>
321                                 <fileSet implementation="org.apache.maven.shared.model.fileset.FileSet">
322                                     <directory>${project.build.directory}/coverage-reports</directory>
323                                     <includes>
324                                         <include>*.exec</include>
325                                     </includes>
326                                 </fileSet>
327                             </fileSets>
328                             <destFile>${project.build.directory}/jacoco-dev.exec</destFile>
329                         </configuration>
330                     </execution>
331                                 </executions>
332                         </plugin>
333                         </plugins>
334                 </pluginManagement>
335         </build>
336
337         <dependencies>
338                 <dependency>
339                         <groupId>org.mockito</groupId>
340                         <artifactId>mockito-all</artifactId>
341                         <version>1.9.5</version>
342                         <scope>test</scope>
343                 </dependency>
344                 <dependency>
345                         <groupId>org.powermock</groupId>
346                         <artifactId>powermock-module-junit4</artifactId>
347                         <version>${powermock.version}</version>
348                         <scope>test</scope>
349                 </dependency>
350                 <dependency>
351                         <groupId>org.powermock</groupId>
352                         <artifactId>powermock-api-mockito</artifactId>
353                         <version>${powermock.version}</version>
354                         <scope>test</scope>
355                 </dependency>
356                 <dependency>
357                         <groupId>junit</groupId>
358                         <artifactId>junit</artifactId>
359                         <version>4.10</version>
360                         <scope>test</scope>
361                 </dependency>
362
363         </dependencies>
364
365         <modules>
366                 <!-- <module>auth-client</module> complile manually with mvn -N independently -->
367                 <module>auth-core</module>
368                 <module>auth-cass</module>
369                 <module>auth-deforg</module>
370
371                 <module>auth-service</module>
372                 <module>auth-cmd</module>
373                 <module>auth-batch</module>
374
375                 <module>auth-gui</module>
376                 <module>auth-locate</module>
377                 <module>auth-oauth</module>
378                 <module>auth-certman</module>
379                 <module>auth-fs</module>
380                 <module>auth-hello</module>
381         </modules>
382
383         <dependencyManagement>
384                 <dependencies>
385                         <dependency>
386                                 <groupId>org.onap.aaf.authz.misc</groupId>
387                                 <artifactId>aaf-misc-env</artifactId>
388                                 <version>${project.miscVersion}</version>
389                         </dependency>
390
391                         <dependency>
392                                 <groupId>org.onap.aaf.authz.misc</groupId>
393                                 <artifactId>aaf-misc-log4j</artifactId>
394                                 <version>${project.miscVersion}</version>
395                         </dependency>
396
397                         <dependency>
398                                 <groupId>org.onap.aaf.authz.misc</groupId>
399                                 <artifactId>aaf-misc-rosetta</artifactId>
400                                 <version>${project.miscVersion}</version>
401                         </dependency>
402
403                         <dependency>
404                                 <groupId>org.onap.aaf.authz.misc</groupId>
405                                 <artifactId>aaf-misc-xgen</artifactId>
406                                 <version>${project.miscVersion}</version>
407                         </dependency>
408
409                         <dependency>
410                                 <groupId>org.onap.aaf.authz.cadi</groupId>
411                                 <artifactId>aaf-cadi-core</artifactId>
412                                 <version>${project.cadiVersion}</version>
413                         </dependency>
414
415                         <dependency>
416                                 <groupId>org.onap.aaf.authz.cadi</groupId>
417                                 <artifactId>aaf-cadi-client</artifactId>
418                                 <version>${project.cadiVersion}</version>
419                         </dependency>
420
421                         <dependency>
422                                 <groupId>org.onap.aaf.authz.cadi</groupId>
423                                 <artifactId>aaf-cadi-aaf</artifactId>
424                                 <version>${project.cadiVersion}</version>
425                                 <exclusions>
426                                         <exclusion>
427                                                 <groupId>org.apache.cassandra</groupId>
428                                                 <artifactId>cassandra-all</artifactId>
429                                         </exclusion>
430                                 </exclusions>
431                         </dependency>
432
433                         <dependency>
434                                 <groupId>org.onap.aaf.authz.auth</groupId>
435                                 <artifactId>aaf-auth-client</artifactId>
436                                 <version>${project.interfaceVersion}</version>
437                         </dependency>
438
439                         <dependency>
440                                 <groupId>org.onap.aaf.authz.auth</groupId>
441                                 <artifactId>aaf-auth-core</artifactId>
442                                 <version>${project.version}</version>
443                         </dependency>
444
445                         <dependency>
446                                 <groupId>org.onap.aaf.authz.auth</groupId>
447                                 <artifactId>aaf-auth-cass</artifactId>
448                                 <version>${project.version}</version>
449                         </dependency>
450
451                         <dependency>
452                                 <groupId>org.onap.aaf.authz.auth</groupId>
453                                 <artifactId>aaf-auth-cmd</artifactId>
454                                 <version>${project.version}</version>
455                         </dependency>
456
457                         <dependency>
458                                 <groupId>org.onap.aaf.authz.auth</groupId>
459                                 <artifactId>aaf-auth-oauth</artifactId>
460                                 <version>${project.version}</version>
461                         </dependency>
462
463                         <dependency>
464                                 <groupId>org.onap.aaf.authz.auth</groupId>
465                                 <artifactId>aaf-auth-deforg</artifactId>
466                                 <version>${project.version}</version>
467                         </dependency>
468
469                         <dependency>
470                                 <groupId>javax.servlet</groupId>
471                                 <artifactId>javax.servlet-api</artifactId>
472                                 <version>3.0.1</version>
473                         </dependency>
474
475                         <dependency>
476                                 <groupId>org.eclipse.jetty</groupId>
477                                 <artifactId>jetty-servlet</artifactId>
478                                 <version>${project.jettyVersion}</version>
479                         </dependency>
480
481                         <dependency>
482                                 <groupId>org.eclipse.jetty</groupId>
483                                 <artifactId>jetty-server</artifactId>
484                                 <version>${project.jettyVersion}</version>
485                         </dependency>
486
487                         <dependency>
488                                 <groupId>com.datastax.cassandra</groupId>
489                                 <artifactId>cassandra-all</artifactId>
490                                 <version>3.3.0</version>
491                                 <exclusions>
492                                         <exclusion>
493                                                 <groupId>org.slf4j</groupId>
494                                                 <artifactId>slf4j-log4j12</artifactId>
495                                         </exclusion>
496                                         <exclusion>
497                                                 <groupId>log4j</groupId>
498                                                 <artifactId>log4j</artifactId>
499                                         </exclusion>
500                                 </exclusions>
501                         </dependency>
502
503                         <dependency>
504                                 <groupId>com.datastax.cassandra</groupId>
505                                 <artifactId>cassandra-driver-core</artifactId>
506                                 <version>3.3.0</version>
507                                 <exclusions>
508                                         <exclusion>
509                                                 <groupId>org.slf4j</groupId>
510                                                 <artifactId>slf4j-log4j12</artifactId>
511                                         </exclusion>
512                                         <exclusion>
513                                                 <groupId>log4j</groupId>
514                                                 <artifactId>log4j</artifactId>
515                                         </exclusion>
516                                 </exclusions>
517                         </dependency>
518
519                         <dependency>
520                                 <groupId>org.slf4j</groupId>
521                                 <artifactId>slf4j-log4j12</artifactId>
522                                 <version>1.7.5</version>
523                         </dependency>
524
525                         <dependency>
526                                 <groupId>javax.mail</groupId>
527                                 <artifactId>mail</artifactId>
528                                 <version>1.4.5</version>
529                         </dependency>
530                 </dependencies>
531         </dependencyManagement>
532
533
534         
535
536 </project>