Modify Authz-service pom file to releaser docker
[aaf/authz.git] / authz-service / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>\r
2 <!--\r
3   ============LICENSE_START====================================================\r
4   * org.onap.aaf\r
5   * ===========================================================================\r
6   * Copyright © 2017 AT&T Intellectual Property. All rights reserved.\r
7   * ===========================================================================\r
8   * Licensed under the Apache License, Version 2.0 (the "License");\r
9   * you may not use this file except in compliance with the License.\r
10   * You may obtain a copy of the License at\r
11   * \r
12    *      http://www.apache.org/licenses/LICENSE-2.0\r
13   * \r
14    * Unless required by applicable law or agreed to in writing, software\r
15   * distributed under the License is distributed on an "AS IS" BASIS,\r
16   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
17   * See the License for the specific language governing permissions and\r
18   * limitations under the License.\r
19   * ============LICENSE_END====================================================\r
20   *\r
21   * ECOMP is a trademark and service mark of AT&T Intellectual Property.\r
22   *\r
23 -->\r
24 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\r
25         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">\r
26         <modelVersion>4.0.0</modelVersion>\r
27         <parent>\r
28                 <groupId>org.onap.aaf.authz</groupId>\r
29                 <artifactId>parent</artifactId>\r
30                 <version>1.0.1-SNAPSHOT</version>\r
31                 <relativePath>../pom.xml</relativePath>\r
32         </parent>\r
33                 \r
34         <artifactId>authz-service</artifactId>\r
35         <name>Authz Service</name>\r
36         <description>API for Authorization and Authentication</description>\r
37                 <url>https://github.com/att/AAF</url>\r
38         <licenses>\r
39                 <license>\r
40                 <name>BSD License</name>\r
41                 <url> </url>\r
42                 </license>\r
43         </licenses>\r
44         <developers>\r
45                 <developer>\r
46                 <name>Jonathan Gathman</name>\r
47                 <email></email>\r
48         <organization>ATT</organization>\r
49         <organizationUrl></organizationUrl>\r
50                 </developer>\r
51         </developers>\r
52 \r
53         <properties>\r
54                 <maven.test.failure.ignore>true</maven.test.failure.ignore>\r
55                 <project.swmVersion>1</project.swmVersion>\r
56                         <project.innoVersion>1.0.0-SNAPSHOT</project.innoVersion>\r
57                 <project.cadiVersion>1.0.0-SNAPSHOT</project.cadiVersion>\r
58             <dockerLocation>${basedir}/target/</dockerLocation>\r
59                 <docker.registry>nexus3.onap.org</docker.registry>\r
60                 <distFilesRootDirPath>opt/app/aaf/${project.artifactId}/${project.version}</distFilesRootDirPath>\r
61                         <sonar.language>java</sonar.language>\r
62                 <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>\r
63                 <sonar.surefire.reportsPath>${project.build.directory}/surefire-reports</sonar.surefire.reportsPath>\r
64                 <sonar.jacoco.reportPath>${project.build.directory}/coverage-reports/jacoco.exec</sonar.jacoco.reportPath>\r
65                 <sonar.jacoco.itReportPath>${project.build.directory}/coverage-reports/jacoco-it.exec</sonar.jacoco.itReportPath>\r
66                 <sonar.jacoco.reportMissing.force.zero>true</sonar.jacoco.reportMissing.force.zero>\r
67                 <sonar.projectVersion>${project.version}</sonar.projectVersion>\r
68         <nexusproxy>https://nexus.onap.org</nexusproxy>\r
69                 <snapshotNexusPath>/content/repositories/snapshots/</snapshotNexusPath>\r
70                 <releaseNexusPath>/content/repositories/releases/</releaseNexusPath>\r
71                 <stagingNexusPath>/content/repositories/staging/</stagingNexusPath>\r
72                 <sitePath>/content/sites/site/org/onap/aaf/authz/${project.artifactId}/${project.version}</sitePath>\r
73         <skip.docker.build>false</skip.docker.build>\r
74         <skip.docker.tag>false</skip.docker.tag>\r
75         <skip.docker.push>false</skip.docker.push>\r
76         </properties>\r
77         \r
78                 \r
79         <dependencies>\r
80         <dependency>\r
81             <groupId>org.onap.aaf.authz</groupId>\r
82             <artifactId>authz-client</artifactId>\r
83                         <version>${project.version}</version>\r
84         </dependency>\r
85                 \r
86                 <dependency>\r
87             <groupId>org.onap.aaf.authz</groupId>\r
88             <artifactId>authz-cmd</artifactId>\r
89                         <version>${project.version}</version>\r
90         </dependency>           \r
91         <dependency>\r
92             <groupId>org.onap.aaf.authz</groupId>\r
93             <artifactId>authz-core</artifactId>\r
94                         <version>${project.version}</version>\r
95             <exclusions>\r
96                           <exclusion> \r
97                                         <groupId>javax.servlet</groupId>\r
98                         <artifactId>servlet-api</artifactId>\r
99                    </exclusion>\r
100                     </exclusions> \r
101         </dependency>\r
102         \r
103         <dependency>\r
104             <groupId>org.onap.aaf.authz</groupId>\r
105             <artifactId>authz-cass</artifactId>\r
106                         <version>${project.version}</version>\r
107         </dependency>\r
108 \r
109         <dependency>\r
110             <groupId>org.onap.aaf.authz</groupId>\r
111             <artifactId>authz-defOrg</artifactId>\r
112             <version>${project.version}</version>\r
113         </dependency>\r
114 \r
115 \r
116         \r
117         <dependency > \r
118                         <groupId>org.onap.aaf.inno</groupId>\r
119                         <artifactId>env</artifactId>\r
120                         <version>${project.innoVersion}</version>\r
121                 </dependency>\r
122 \r
123 \r
124                 <dependency>\r
125                         <groupId>org.onap.aaf.cadi</groupId>\r
126                         <artifactId>cadi-core</artifactId>\r
127                         <version>${project.cadiVersion}</version>\r
128                 </dependency>\r
129 \r
130                 <dependency>\r
131                         <groupId>com.att.aft</groupId>\r
132                         <artifactId>dme2</artifactId>\r
133                 </dependency>\r
134 \r
135                 <dependency>\r
136                         <groupId>org.onap.aaf.inno</groupId>\r
137                         <artifactId>rosetta</artifactId>\r
138                         <version>${project.innoVersion}</version>\r
139                 </dependency>\r
140                 <dependency>\r
141                         <groupId>org.onap.aaf.cadi</groupId>\r
142                         <artifactId>cadi-aaf</artifactId>\r
143                         <version>${project.cadiVersion}</version>\r
144                 </dependency>   \r
145         </dependencies>\r
146 \r
147         <profiles>\r
148     <profile>\r
149       \r
150         <build>\r
151             <plugins>\r
152                 \r
153                 <plugin>\r
154                 <groupId>com.spotify</groupId>\r
155                 <artifactId>docker-maven-plugin</artifactId>\r
156                 <version>0.4.11</version>\r
157                 <configuration>\r
158                     <imageName>onap/aaf/authz-service</imageName>\r
159                     <dockerDirectory>${dockerLocation}</dockerDirectory>\r
160                                         <serverId>docker-hub</serverId>\r
161                     <imageTags>\r
162                         <imageTag>${project.version}</imageTag>\r
163                         <imageTag>latest</imageTag>\r
164                     </imageTags>\r
165                                          <forceTags>true</forceTags>\r
166                                              <resources>\r
167                                 <resource>\r
168                                                                 <targetPath>/</targetPath>\r
169                                     <directory>/${basedir}/target/opt</directory>\r
170                                     <filtering>true</filtering>\r
171                                     <includes>\r
172                                         <include>**/*</include>\r
173                                     </includes>\r
174                                 </resource>\r
175                             </resources>                  \r
176                 </configuration>\r
177                                 <executions>\r
178           <execution>\r
179             <id>build-image</id>\r
180             <phase>package</phase>\r
181             <goals>\r
182               <goal>build</goal>\r
183             </goals>\r
184             <configuration>\r
185               <skipDockerBuild>${skip.docker.build}</skipDockerBuild>\r
186               <buildArgs>\r
187                 <http_proxy>${env.HTTP_PROXY}</http_proxy>\r
188                 <https_proxy>${env.HTTPS_PROXY}</https_proxy>\r
189               </buildArgs>\r
190             </configuration>\r
191           </execution>\r
192                   <execution>\r
193             <id>docker</id>\r
194             <phase>deploy</phase>\r
195             <goals>\r
196               <goal>push</goal>\r
197             </goals>\r
198             <configuration>\r
199               <imageName>onap/aaf/authz-service</imageName>\r
200               <skipDockerPush>${skip.docker.push}</skipDockerPush>\r
201             </configuration>\r
202           </execution>\r
203           \r
204                   </executions>\r
205             </plugin>\r
206                         \r
207                         \r
208                         <plugin>\r
209                 <artifactId>maven-resources-plugin</artifactId>\r
210                 <version>2.7</version>\r
211               <executions>\r
212                       <execution>\r
213                         <id>copy-docker-file</id>\r
214                         <phase>package</phase>\r
215                         <goals>\r
216                             <goal>copy-resources</goal>\r
217                         </goals>\r
218                         <configuration>\r
219                             <outputDirectory>${dockerLocation}</outputDirectory>\r
220                             <overwrite>true</overwrite>\r
221                             <resources>\r
222                                 <resource>\r
223                                     <directory>${basedir}/src/main/resources/docker</directory>\r
224                                     <filtering>true</filtering>\r
225                                     <includes>\r
226                                         <include>**/*</include>\r
227                                     </includes>\r
228                                 </resource>\r
229                             </resources>\r
230                         </configuration>\r
231                     </execution>\r
232       <execution>\r
233         <id>copy-resources-1</id>\r
234         <phase>validate</phase>\r
235         <goals>\r
236           <goal>copy-resources</goal>\r
237         </goals>\r
238         <configuration>\r
239          <outputDirectory>${project.build.directory}/opt/dme2reg/</outputDirectory>\r
240           <resources>\r
241             <resource>\r
242                         <directory>${project.basedir}/src/main/resources/dme2reg/</directory> \r
243                                                  <includes>\r
244                                                  <include>**/*.txt</include>\r
245                         </includes>\r
246                     </resource>\r
247           </resources>\r
248         </configuration>\r
249       </execution>\r
250       <execution>\r
251         <id>copy-resources-2</id>\r
252         <phase>validate</phase>\r
253         <goals>\r
254           <goal>copy-resources</goal>\r
255         </goals>\r
256         <configuration>\r
257           <outputDirectory>${project.build.directory}/opt/app/aaf/authz-service/etc</outputDirectory>\r
258           <resources>\r
259             <resource>\r
260                         <directory>${project.basedir}/src/main/resources/etc</directory>\r
261                         <includes>\r
262                             <include>**/**</include>\r
263                         </includes>\r
264                     </resource>\r
265           </resources>\r
266         </configuration>\r
267       </execution>\r
268           \r
269            <execution>\r
270         <id>copy-resources-3</id>\r
271         <phase>validate</phase>\r
272         <goals>\r
273           <goal>copy-resources</goal>\r
274         </goals>\r
275         <configuration>\r
276           <outputDirectory>${project.build.directory}/opt/app/aaf/authz-service/lib</outputDirectory>\r
277           <resources>\r
278             <resource>\r
279                         <directory>${project.basedir}/../authz-cmd/target</directory>\r
280                         <includes>\r
281                             <include>**/*.jar</include>\r
282                         </includes>\r
283                     </resource>\r
284           </resources>\r
285         </configuration>\r
286       </execution>\r
287           <execution>\r
288         <id>copy-resources-4</id>\r
289         <phase>validate</phase>\r
290         <goals>\r
291           <goal>copy-resources</goal>\r
292         </goals>\r
293         <configuration>\r
294           <outputDirectory>${project.build.directory}/opt/app/aaf/authz-service/</outputDirectory>\r
295           <resources>\r
296             <resource>\r
297                         <directory>${project.basedir}/../authz-cmd</directory>\r
298                         <includes>\r
299                             <include>**/aafcli.sh</include>\r
300                         </includes>\r
301                     </resource>\r
302           </resources>\r
303         </configuration>\r
304       </execution>\r
305                 <execution>\r
306         <id>copy-resources-5</id>\r
307         <phase>validate</phase>\r
308         <goals>\r
309           <goal>copy-resources</goal>\r
310         </goals>\r
311         <configuration>\r
312           <outputDirectory>${project.build.directory}/opt/app/aaf/authz-service/etc/</outputDirectory>\r
313           <resources>\r
314             <resource>\r
315                         <directory>${project.basedir}/src/main/config</directory>\r
316                         <includes>\r
317                             <include>**/**</include>\r
318                         </includes>\r
319                     </resource>\r
320           </resources>\r
321         </configuration>\r
322       </execution>\r
323           <execution>\r
324         <id>copy-resources-6</id>\r
325         <phase>validate</phase>\r
326         <goals>\r
327           <goal>copy-resources</goal>\r
328         </goals>\r
329         <configuration>\r
330           <outputDirectory>${project.build.directory}/opt/app/aaf/authz-service/etc/data</outputDirectory>\r
331           <resources>\r
332             <resource>\r
333                         <directory>${project.basedir}/../opt/app/aaf/data</directory>\r
334                         <includes>\r
335                             <include>**/**</include>\r
336                         </includes>\r
337                     </resource>\r
338           </resources>\r
339         </configuration>\r
340                 </execution>\r
341     </executions>\r
342   </plugin>\r
343                         <plugin>\r
344                                 <groupId>org.apache.maven.plugins</groupId>\r
345                                 <artifactId>maven-dependency-plugin</artifactId>\r
346                                 <version>2.10</version>\r
347                                 <executions>\r
348                                         <execution>\r
349                                                 <id>copy-dependencies</id>\r
350                                                 <phase>package</phase>\r
351                                                 <goals>\r
352                                                         <goal>copy-dependencies</goal>\r
353                                                 </goals>\r
354                                                 <configuration>\r
355                                                         <outputDirectory>${project.build.directory}/opt/app/aaf/authz-service/lib</outputDirectory>\r
356                                                         <overWriteReleases>false</overWriteReleases>\r
357                                                         <overWriteSnapshots>false</overWriteSnapshots>\r
358                                                         <overWriteIfNewer>true</overWriteIfNewer>\r
359                                                 </configuration>\r
360                                         </execution>\r
361                                 </executions>\r
362                         </plugin>\r
363                                 \r
364                     <plugin>\r
365                         <groupId>org.codehaus.mojo</groupId>\r
366                         <artifactId>exec-maven-plugin</artifactId>\r
367                         <version>1.5.0</version>\r
368                         <configuration>\r
369                             <executable>java</executable>\r
370                             <arguments>\r
371                                 <argument>-DAFT_LATITUDE=33</argument>\r
372                                 <argument>-DAFT_LONGITUDE=-84</argument>\r
373                                 <argument>-DAFT_ENVIRONMENT=AFTUAT</argument>\r
374         \r
375                                 <argument>-XX:NewRatio=3</argument>\r
376                                 <argument>-XX:+PrintGCTimeStamps</argument>\r
377                                 <argument>-XX:+PrintGCDetails</argument>\r
378                                 <argument>-Xloggc:gc.log</argument>\r
379                                 <argument>-classpath</argument>\r
380         \r
381                                 <classpath>\r
382                                 \r
383                                 </classpath>\r
384                                 <argument>org.onap.aaf.authz.service.AuthAPI</argument>\r
385         \r
386                            <argument>service=org.onap.aaf.authz.AuthorizationService/version=2.0/envContext=DEV/routeOffer=Dev</argument>\r
387                             </arguments>\r
388                         </configuration>\r
389                     </plugin>\r
390         \r
391                     <plugin>\r
392                                 <groupId>org.apache.maven.plugins</groupId>\r
393                                 <artifactId>maven-jar-plugin</artifactId>\r
394                                         <configuration>\r
395                                                 <excludes>\r
396                                 <exclude>*.properties</exclude>\r
397                                 </excludes>\r
398                                         </configuration>\r
399                                         <version>2.3.1</version>\r
400                                 </plugin>\r
401  \r
402 \r
403                 <plugin>\r
404                         <groupId>org.apache.maven.plugins</groupId>\r
405                         <artifactId>maven-javadoc-plugin</artifactId>\r
406                         <version>2.10.4</version>\r
407                         <configuration>\r
408                         <failOnError>false</failOnError>\r
409                         </configuration>\r
410                         <executions>\r
411                                 <execution>\r
412                                         <id>attach-javadocs</id>\r
413                                         <goals>\r
414                                                 <goal>jar</goal>\r
415                                         </goals>\r
416                                 </execution>\r
417                         </executions>\r
418                 </plugin> \r
419            \r
420            \r
421                <plugin>\r
422                       <groupId>org.apache.maven.plugins</groupId>\r
423                       <artifactId>maven-source-plugin</artifactId>\r
424                       <version>2.2.1</version>\r
425                       <executions>\r
426                         <execution>\r
427                           <id>attach-sources</id>\r
428                           <goals>\r
429                             <goal>jar-no-fork</goal>\r
430                           </goals>\r
431                         </execution>\r
432                       </executions>\r
433                     </plugin>\r
434                         \r
435 <plugin>\r
436                                 <groupId>org.sonatype.plugins</groupId>\r
437                                 <artifactId>nexus-staging-maven-plugin</artifactId>\r
438                                 <version>1.6.7</version>\r
439                                 <extensions>true</extensions>\r
440                                 <configuration>\r
441                                         <nexusUrl>${nexusproxy}</nexusUrl>\r
442                                         <stagingProfileId>176c31dfe190a</stagingProfileId>\r
443                                         <serverId>ecomp-staging</serverId>\r
444                                 </configuration>\r
445                         </plugin>               \r
446                         <plugin>\r
447                                 <groupId>org.jacoco</groupId>\r
448                                 <artifactId>jacoco-maven-plugin</artifactId>\r
449                                 <version>0.7.7.201606060606</version>\r
450                                 <configuration>\r
451                                         <dumpOnExit>true</dumpOnExit>\r
452                                         <includes>\r
453                                                 <include>org.onap.aaf.*</include>\r
454                                         </includes>\r
455                                 </configuration>\r
456                                 <executions>\r
457                                         <execution>\r
458                                                 <id>pre-unit-test</id>\r
459                                                 <goals>\r
460                                                         <goal>prepare-agent</goal>\r
461                                                 </goals>\r
462                                                 <configuration>\r
463                                                         <destFile>${project.build.directory}/coverage-reports/jacoco.exec</destFile>\r
464                                                         <!-- <append>true</append> -->\r
465                                                 </configuration>\r
466                                         </execution>\r
467                                         <execution>\r
468                                                 <id>pre-integration-test</id>\r
469                                                 <phase>pre-integration-test</phase>\r
470                                                 <goals>\r
471                                                         <goal>prepare-agent</goal>\r
472                                                 </goals>\r
473                                                 <configuration>\r
474                                                         <destFile>${project.build.directory}/coverage-reports/jacoco-it.exec</destFile>\r
475                                                         <!-- <append>true</append> -->\r
476                                                 </configuration>\r
477                                         </execution>\r
478                                         <execution>\r
479                         <goals>\r
480                             <goal>merge</goal>\r
481                         </goals>\r
482                         <phase>post-integration-test</phase>\r
483                         <configuration>\r
484                             <fileSets>\r
485                                 <fileSet implementation="org.apache.maven.shared.model.fileset.FileSet">\r
486                                     <directory>${project.build.directory}/coverage-reports</directory>\r
487                                     <includes>\r
488                                         <include>*.exec</include>\r
489                                     </includes>\r
490                                 </fileSet>\r
491                             </fileSets>\r
492                             <destFile>${project.build.directory}/jacoco-dev.exec</destFile>\r
493                         </configuration>\r
494                     </execution>\r
495                                 </executions>\r
496                         </plugin>\r
497                 \r
498                         </plugins>\r
499 \r
500         </build>\r
501     </profile>\r
502   </profiles>\r
503 \r
504                 <distributionManagement>\r
505                 <repository>\r
506                         <id>ecomp-releases</id>\r
507                         <name>AAF Release Repository</name>\r
508                         <url>${nexusproxy}${releaseNexusPath}</url>\r
509                 </repository>\r
510                 <snapshotRepository>\r
511                         <id>ecomp-snapshots</id>\r
512                         <name>AAF Snapshot Repository</name>\r
513                         <url>${nexusproxy}${snapshotNexusPath}</url>\r
514                 </snapshotRepository>\r
515                 <site>\r
516                         <id>ecomp-site</id>\r
517                         <url>dav:${nexusproxy}${sitePath}</url>\r
518                 </site>\r
519         </distributionManagement>\r
520 \r
521 </project>\r