blob: 64cc5b026c6b8e8d55121384533ecad2030a6422 [file] [log] [blame]
sg481nbd890c52017-08-28 12:11:35 -04001<?xml version="1.0" encoding="UTF-8"?>
2<!--
3 ============LICENSE_START====================================================
4 * org.onap.aaf
5 * ===========================================================================
6 * Copyright © 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 * ECOMP is a trademark and service mark of AT&T Intellectual Property.
22 *
23-->
24<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
25 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
26 <modelVersion>4.0.0</modelVersion>
27 <parent>
28 <groupId>org.onap.aaf.authz</groupId>
29 <artifactId>parent</artifactId>
sg481na2ac6782017-09-18 16:35:50 -040030 <version>1.0.1-SNAPSHOT</version>
sg481nbd890c52017-08-28 12:11:35 -040031 <relativePath>../pom.xml</relativePath>
32 </parent>
33
34 <artifactId>authz-service</artifactId>
35 <name>Authz Service</name>
36 <description>API for Authorization and Authentication</description>
37 <url>https://github.com/att/AAF</url>
38 <licenses>
39 <license>
40 <name>BSD License</name>
41 <url> </url>
42 </license>
43 </licenses>
44 <developers>
45 <developer>
46 <name>Jonathan Gathman</name>
47 <email></email>
48 <organization>ATT</organization>
49 <organizationUrl></organizationUrl>
50 </developer>
51 </developers>
52
53 <properties>
sg481nc7499ee2017-09-24 04:05:00 +000054 <maven.build.timestamp.format>yyyy.MM.dd'T'hh.mm.ss'Z'</maven.build.timestamp.format>
sg481nbd890c52017-08-28 12:11:35 -040055 <maven.test.failure.ignore>true</maven.test.failure.ignore>
56 <project.swmVersion>1</project.swmVersion>
sg481na2ac6782017-09-18 16:35:50 -040057 <project.innoVersion>1.0.0-SNAPSHOT</project.innoVersion>
58 <project.cadiVersion>1.0.0-SNAPSHOT</project.cadiVersion>
sg481ndc5fcf12017-09-15 13:06:30 -040059 <dockerLocation>${basedir}/target/</dockerLocation>
sg481ndc5fcf12017-09-15 13:06:30 -040060 <distFilesRootDirPath>opt/app/aaf/${project.artifactId}/${project.version}</distFilesRootDirPath>
sg481n40cd3562017-09-01 13:12:31 -040061 <sonar.language>java</sonar.language>
62 <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
63 <sonar.surefire.reportsPath>${project.build.directory}/surefire-reports</sonar.surefire.reportsPath>
64 <sonar.jacoco.reportPath>${project.build.directory}/coverage-reports/jacoco.exec</sonar.jacoco.reportPath>
65 <sonar.jacoco.itReportPath>${project.build.directory}/coverage-reports/jacoco-it.exec</sonar.jacoco.itReportPath>
66 <sonar.jacoco.reportMissing.force.zero>true</sonar.jacoco.reportMissing.force.zero>
67 <sonar.projectVersion>${project.version}</sonar.projectVersion>
sg481nbd890c52017-08-28 12:11:35 -040068 <nexusproxy>https://nexus.onap.org</nexusproxy>
69 <snapshotNexusPath>/content/repositories/snapshots/</snapshotNexusPath>
70 <releaseNexusPath>/content/repositories/releases/</releaseNexusPath>
71 <stagingNexusPath>/content/repositories/staging/</stagingNexusPath>
sg481na9d21082017-09-23 14:26:06 +000072 <sitePath>/content/sites/site/org/onap/aaf/authz/${project.artifactId}/${project.version}</sitePath>
sg481nc7499ee2017-09-24 04:05:00 +000073
74 <docker.push.registry>localhost:5000</docker.push.registry>
75 <skip.docker.build>true</skip.docker.build>
76 <skip.docker.push>true</skip.docker.push>
77 <skip.staging.artifacts>false</skip.staging.artifacts>
sg481nbd890c52017-08-28 12:11:35 -040078 </properties>
79
80
81 <dependencies>
82 <dependency>
83 <groupId>org.onap.aaf.authz</groupId>
84 <artifactId>authz-client</artifactId>
sg481n5c30b7f2017-09-17 11:37:00 -040085 <version>${project.version}</version>
sg481nbd890c52017-08-28 12:11:35 -040086 </dependency>
sg481ndc5fcf12017-09-15 13:06:30 -040087
88 <dependency>
89 <groupId>org.onap.aaf.authz</groupId>
90 <artifactId>authz-cmd</artifactId>
sg481n5c30b7f2017-09-17 11:37:00 -040091 <version>${project.version}</version>
sg481ndc5fcf12017-09-15 13:06:30 -040092 </dependency>
sg481nbd890c52017-08-28 12:11:35 -040093 <dependency>
94 <groupId>org.onap.aaf.authz</groupId>
95 <artifactId>authz-core</artifactId>
sg481n5c30b7f2017-09-17 11:37:00 -040096 <version>${project.version}</version>
sg481nbd890c52017-08-28 12:11:35 -040097 <exclusions>
98 <exclusion>
99 <groupId>javax.servlet</groupId>
100 <artifactId>servlet-api</artifactId>
101 </exclusion>
102 </exclusions>
103 </dependency>
104
105 <dependency>
106 <groupId>org.onap.aaf.authz</groupId>
107 <artifactId>authz-cass</artifactId>
sg481n5c30b7f2017-09-17 11:37:00 -0400108 <version>${project.version}</version>
sg481nbd890c52017-08-28 12:11:35 -0400109 </dependency>
110
111 <dependency>
112 <groupId>org.onap.aaf.authz</groupId>
113 <artifactId>authz-defOrg</artifactId>
114 <version>${project.version}</version>
115 </dependency>
116
117
118
119 <dependency >
120 <groupId>org.onap.aaf.inno</groupId>
121 <artifactId>env</artifactId>
sg481na2ac6782017-09-18 16:35:50 -0400122 <version>${project.innoVersion}</version>
sg481nbd890c52017-08-28 12:11:35 -0400123 </dependency>
124
125
126 <dependency>
127 <groupId>org.onap.aaf.cadi</groupId>
128 <artifactId>cadi-core</artifactId>
sg481na2ac6782017-09-18 16:35:50 -0400129 <version>${project.cadiVersion}</version>
sg481nbd890c52017-08-28 12:11:35 -0400130 </dependency>
131
132 <dependency>
133 <groupId>com.att.aft</groupId>
134 <artifactId>dme2</artifactId>
135 </dependency>
136
137 <dependency>
138 <groupId>org.onap.aaf.inno</groupId>
139 <artifactId>rosetta</artifactId>
sg481na2ac6782017-09-18 16:35:50 -0400140 <version>${project.innoVersion}</version>
sg481nbd890c52017-08-28 12:11:35 -0400141 </dependency>
142 <dependency>
143 <groupId>org.onap.aaf.cadi</groupId>
144 <artifactId>cadi-aaf</artifactId>
sg481na2ac6782017-09-18 16:35:50 -0400145 <version>${project.cadiVersion}</version>
sg481ndc5fcf12017-09-15 13:06:30 -0400146 </dependency>
sg481nbd890c52017-08-28 12:11:35 -0400147 </dependencies>
sg481n2bc35382017-09-23 15:50:15 +0000148
sg481nc7499ee2017-09-24 04:05:00 +0000149
sg481nbd890c52017-08-28 12:11:35 -0400150 <build>
151 <plugins>
sg481nc7499ee2017-09-24 04:05:00 +0000152
sg481na9d21082017-09-23 14:26:06 +0000153
sg481nc7499ee2017-09-24 04:05:00 +0000154<plugin>
155 <groupId>com.spotify</groupId>
156 <artifactId>docker-maven-plugin</artifactId>
157 <version>1.0.0</version>
158 <configuration>
159 <imageName>onap/aaf/authz-service</imageName>
160 <dockerDirectory>${dockerLocation}</dockerDirectory>
161 <serverId>docker-hub</serverId>
162 <imageTags>
163 <imageTag>latest</imageTag>
164 <imageTag>${project.docker.latesttagtimestamp.version}</imageTag>
165 <imageTag>${project.docker.latesttag.version}</imageTag>
166 </imageTags>
167 <forceTags>true</forceTags>
168 <resources>
169 <resource>
170 <targetPath>/</targetPath>
171 <directory>/${basedir}/target/opt</directory>
172 <filtering>true</filtering>
173 <includes>
174 <include>**/*</include>
175 </includes>
176 </resource>
177 </resources>
178 </configuration>
179 <executions>
sg481n1e538f72017-09-24 02:12:15 +0000180 <execution>
181 <id>build-image</id>
182 <phase>package</phase>
183 <goals>
184 <goal>build</goal>
185 </goals>
186 <configuration>
187 <skipDockerBuild>${skip.docker.build}</skipDockerBuild>
188 <buildArgs>
189 <http_proxy>${env.HTTP_PROXY}</http_proxy>
190 <https_proxy>${env.HTTPS_PROXY}</https_proxy>
191 </buildArgs>
192 </configuration>
193 </execution>
sg481nc7499ee2017-09-24 04:05:00 +0000194
195 <execution>
196 <id>tag-image-latest-timestamp</id>
197 <phase>package</phase>
198 <goals>
199 <goal>tag</goal>
200 </goals>
201 <configuration>
202 <image>onap/aaf/authz-service</image>
203 <newName>${docker.push.registry}/onap/aaf/authz-service:${project.docker.latesttagtimestamp.version}</newName>
204 <skipDockerTag>${skip.docker.push}</skipDockerTag>
205 </configuration>
206 </execution>
207 <execution>
208 <id>push-image-latest-timestamp</id>
sg481n1e538f72017-09-24 02:12:15 +0000209 <phase>deploy</phase>
210 <goals>
211 <goal>push</goal>
212 </goals>
213 <configuration>
sg481nc7499ee2017-09-24 04:05:00 +0000214 <imageName>${docker.push.registry}/onap/aaf/authz-service:${project.docker.latesttagtimestamp.version}</imageName>
sg481n1e538f72017-09-24 02:12:15 +0000215 <skipDockerPush>${skip.docker.push}</skipDockerPush>
216 </configuration>
217 </execution>
sg481nc7499ee2017-09-24 04:05:00 +0000218 <execution>
219 <id>tag-image-latest</id>
220 <phase>package</phase>
221 <goals>
222 <goal>tag</goal>
223 </goals>
224 <configuration>
225 <image>onap/aaf/authz-service</image>
226 <newName>${docker.push.registry}/onap/aaf/authz-service:${project.docker.latesttag.version}</newName>
227 <skipDockerTag>${skip.docker.push}</skipDockerTag>
228 </configuration>
229 </execution>
230 <execution>
231 <id>push-image-latest</id>
232 <phase>deploy</phase>
233 <goals>
234 <goal>push</goal>
235 </goals>
236 <configuration>
237 <imageName>${docker.push.registry}/onap/aaf/authz-service:${project.docker.latesttag.version}</imageName>
238 <skipDockerPush>${skip.docker.push}</skipDockerPush>
239 </configuration>
240 </execution>
241 <execution>
242 <id>tag-image</id>
243 <phase>package</phase>
244 <goals>
245 <goal>tag</goal>
246 </goals>
247 <configuration>
248 <image>onap/aaf/authz-service</image>
249 <newName>${docker.push.registry}/onap/aaf/authz-service:latest</newName>
250 <skipDockerTag>${skip.docker.push}</skipDockerTag>
251 </configuration>
252 </execution>
253 <execution>
254 <id>push-image</id>
255 <phase>deploy</phase>
256 <goals>
257 <goal>push</goal>
258 </goals>
259 <configuration>
260 <imageName>${docker.push.registry}/onap/aaf/authz-service:latest</imageName>
261 <skipDockerPush>${skip.docker.push}</skipDockerPush>
262 </configuration>
263 </execution>
264 </executions>
265 </plugin>
266
267
268
269
270
sg481n1e538f72017-09-24 02:12:15 +0000271
sg481ndc5fcf12017-09-15 13:06:30 -0400272 <plugin>
sg481n1e538f72017-09-24 02:12:15 +0000273 <artifactId>maven-resources-plugin</artifactId>
274 <version>2.7</version>
275 <executions>
276 <execution>
sg481na9d21082017-09-23 14:26:06 +0000277 <id>copy-docker-file</id>
278 <phase>package</phase>
279 <goals>
280 <goal>copy-resources</goal>
281 </goals>
282 <configuration>
283 <outputDirectory>${dockerLocation}</outputDirectory>
284 <overwrite>true</overwrite>
285 <resources>
286 <resource>
287 <directory>${basedir}/src/main/resources/docker</directory>
288 <filtering>true</filtering>
289 <includes>
290 <include>**/*</include>
291 </includes>
292 </resource>
293 </resources>
294 </configuration>
295 </execution>
sg481ndc5fcf12017-09-15 13:06:30 -0400296 <execution>
297 <id>copy-resources-1</id>
298 <phase>validate</phase>
299 <goals>
300 <goal>copy-resources</goal>
301 </goals>
302 <configuration>
303 <outputDirectory>${project.build.directory}/opt/dme2reg/</outputDirectory>
304 <resources>
305 <resource>
306 <directory>${project.basedir}/src/main/resources/dme2reg/</directory>
307 <includes>
308 <include>**/*.txt</include>
309 </includes>
310 </resource>
311 </resources>
312 </configuration>
313 </execution>
314 <execution>
315 <id>copy-resources-2</id>
316 <phase>validate</phase>
317 <goals>
318 <goal>copy-resources</goal>
319 </goals>
320 <configuration>
sg481na2ac6782017-09-18 16:35:50 -0400321 <outputDirectory>${project.build.directory}/opt/app/aaf/authz-service/etc</outputDirectory>
sg481ndc5fcf12017-09-15 13:06:30 -0400322 <resources>
323 <resource>
324 <directory>${project.basedir}/src/main/resources/etc</directory>
325 <includes>
326 <include>**/**</include>
327 </includes>
328 </resource>
329 </resources>
330 </configuration>
331 </execution>
332
333 <execution>
334 <id>copy-resources-3</id>
335 <phase>validate</phase>
336 <goals>
337 <goal>copy-resources</goal>
338 </goals>
339 <configuration>
sg481na2ac6782017-09-18 16:35:50 -0400340 <outputDirectory>${project.build.directory}/opt/app/aaf/authz-service/lib</outputDirectory>
sg481ndc5fcf12017-09-15 13:06:30 -0400341 <resources>
342 <resource>
343 <directory>${project.basedir}/../authz-cmd/target</directory>
344 <includes>
sg481na2ac6782017-09-18 16:35:50 -0400345 <include>**/*.jar</include>
sg481ndc5fcf12017-09-15 13:06:30 -0400346 </includes>
347 </resource>
348 </resources>
349 </configuration>
350 </execution>
351 <execution>
352 <id>copy-resources-4</id>
353 <phase>validate</phase>
354 <goals>
355 <goal>copy-resources</goal>
356 </goals>
357 <configuration>
sg481na2ac6782017-09-18 16:35:50 -0400358 <outputDirectory>${project.build.directory}/opt/app/aaf/authz-service/</outputDirectory>
sg481ndc5fcf12017-09-15 13:06:30 -0400359 <resources>
360 <resource>
361 <directory>${project.basedir}/../authz-cmd</directory>
362 <includes>
363 <include>**/aafcli.sh</include>
364 </includes>
365 </resource>
366 </resources>
367 </configuration>
368 </execution>
sg481na2ac6782017-09-18 16:35:50 -0400369 <execution>
sg481ndc5fcf12017-09-15 13:06:30 -0400370 <id>copy-resources-5</id>
371 <phase>validate</phase>
372 <goals>
373 <goal>copy-resources</goal>
374 </goals>
375 <configuration>
sg481na2ac6782017-09-18 16:35:50 -0400376 <outputDirectory>${project.build.directory}/opt/app/aaf/authz-service/etc/</outputDirectory>
sg481ndc5fcf12017-09-15 13:06:30 -0400377 <resources>
378 <resource>
sg481na2ac6782017-09-18 16:35:50 -0400379 <directory>${project.basedir}/src/main/config</directory>
sg481ndc5fcf12017-09-15 13:06:30 -0400380 <includes>
381 <include>**/**</include>
382 </includes>
383 </resource>
384 </resources>
385 </configuration>
386 </execution>
sg481na2ac6782017-09-18 16:35:50 -0400387 <execution>
388 <id>copy-resources-6</id>
389 <phase>validate</phase>
390 <goals>
391 <goal>copy-resources</goal>
392 </goals>
393 <configuration>
394 <outputDirectory>${project.build.directory}/opt/app/aaf/authz-service/etc/data</outputDirectory>
395 <resources>
396 <resource>
397 <directory>${project.basedir}/../opt/app/aaf/data</directory>
398 <includes>
399 <include>**/**</include>
400 </includes>
401 </resource>
402 </resources>
403 </configuration>
404 </execution>
sg481ndc5fcf12017-09-15 13:06:30 -0400405 </executions>
406 </plugin>
407 <plugin>
408 <groupId>org.apache.maven.plugins</groupId>
409 <artifactId>maven-dependency-plugin</artifactId>
410 <version>2.10</version>
411 <executions>
412 <execution>
413 <id>copy-dependencies</id>
414 <phase>package</phase>
415 <goals>
416 <goal>copy-dependencies</goal>
417 </goals>
418 <configuration>
sg481na2ac6782017-09-18 16:35:50 -0400419 <outputDirectory>${project.build.directory}/opt/app/aaf/authz-service/lib</outputDirectory>
sg481ndc5fcf12017-09-15 13:06:30 -0400420 <overWriteReleases>false</overWriteReleases>
421 <overWriteSnapshots>false</overWriteSnapshots>
422 <overWriteIfNewer>true</overWriteIfNewer>
423 </configuration>
424 </execution>
425 </executions>
426 </plugin>
427
sg481nbd890c52017-08-28 12:11:35 -0400428 <plugin>
429 <groupId>org.codehaus.mojo</groupId>
430 <artifactId>exec-maven-plugin</artifactId>
431 <version>1.5.0</version>
432 <configuration>
433 <executable>java</executable>
434 <arguments>
435 <argument>-DAFT_LATITUDE=33</argument>
436 <argument>-DAFT_LONGITUDE=-84</argument>
437 <argument>-DAFT_ENVIRONMENT=AFTUAT</argument>
438
439 <argument>-XX:NewRatio=3</argument>
440 <argument>-XX:+PrintGCTimeStamps</argument>
441 <argument>-XX:+PrintGCDetails</argument>
442 <argument>-Xloggc:gc.log</argument>
443 <argument>-classpath</argument>
444
445 <classpath>
446
447 </classpath>
448 <argument>org.onap.aaf.authz.service.AuthAPI</argument>
449
450 <argument>service=org.onap.aaf.authz.AuthorizationService/version=2.0/envContext=DEV/routeOffer=Dev</argument>
451 </arguments>
452 </configuration>
453 </plugin>
454
455 <plugin>
456 <groupId>org.apache.maven.plugins</groupId>
457 <artifactId>maven-jar-plugin</artifactId>
458 <configuration>
459 <excludes>
460 <exclude>*.properties</exclude>
461 </excludes>
462 </configuration>
463 <version>2.3.1</version>
464 </plugin>
sg481na2ac6782017-09-18 16:35:50 -0400465
sg481nbd890c52017-08-28 12:11:35 -0400466
467 <plugin>
468 <groupId>org.apache.maven.plugins</groupId>
469 <artifactId>maven-javadoc-plugin</artifactId>
sg481na9d21082017-09-23 14:26:06 +0000470 <version>2.10.4</version>
sg481nbd890c52017-08-28 12:11:35 -0400471 <configuration>
472 <failOnError>false</failOnError>
473 </configuration>
474 <executions>
475 <execution>
476 <id>attach-javadocs</id>
477 <goals>
478 <goal>jar</goal>
479 </goals>
480 </execution>
481 </executions>
482 </plugin>
483
484
485 <plugin>
486 <groupId>org.apache.maven.plugins</groupId>
487 <artifactId>maven-source-plugin</artifactId>
488 <version>2.2.1</version>
489 <executions>
490 <execution>
491 <id>attach-sources</id>
492 <goals>
493 <goal>jar-no-fork</goal>
494 </goals>
495 </execution>
496 </executions>
497 </plugin>
498
499<plugin>
500 <groupId>org.sonatype.plugins</groupId>
501 <artifactId>nexus-staging-maven-plugin</artifactId>
502 <version>1.6.7</version>
503 <extensions>true</extensions>
504 <configuration>
505 <nexusUrl>${nexusproxy}</nexusUrl>
506 <stagingProfileId>176c31dfe190a</stagingProfileId>
507 <serverId>ecomp-staging</serverId>
508 </configuration>
sg481n40cd3562017-09-01 13:12:31 -0400509 </plugin>
510 <plugin>
511 <groupId>org.jacoco</groupId>
512 <artifactId>jacoco-maven-plugin</artifactId>
513 <version>0.7.7.201606060606</version>
514 <configuration>
515 <dumpOnExit>true</dumpOnExit>
516 <includes>
517 <include>org.onap.aaf.*</include>
518 </includes>
519 </configuration>
520 <executions>
521 <execution>
522 <id>pre-unit-test</id>
523 <goals>
524 <goal>prepare-agent</goal>
525 </goals>
526 <configuration>
527 <destFile>${project.build.directory}/coverage-reports/jacoco.exec</destFile>
528 <!-- <append>true</append> -->
529 </configuration>
530 </execution>
531 <execution>
532 <id>pre-integration-test</id>
533 <phase>pre-integration-test</phase>
534 <goals>
535 <goal>prepare-agent</goal>
536 </goals>
537 <configuration>
538 <destFile>${project.build.directory}/coverage-reports/jacoco-it.exec</destFile>
539 <!-- <append>true</append> -->
540 </configuration>
541 </execution>
542 <execution>
543 <goals>
544 <goal>merge</goal>
545 </goals>
546 <phase>post-integration-test</phase>
547 <configuration>
548 <fileSets>
549 <fileSet implementation="org.apache.maven.shared.model.fileset.FileSet">
550 <directory>${project.build.directory}/coverage-reports</directory>
551 <includes>
552 <include>*.exec</include>
553 </includes>
554 </fileSet>
555 </fileSets>
556 <destFile>${project.build.directory}/jacoco-dev.exec</destFile>
557 </configuration>
558 </execution>
559 </executions>
560 </plugin>
sg481nbd890c52017-08-28 12:11:35 -0400561
562 </plugins>
563
564 </build>
sg481nc7499ee2017-09-24 04:05:00 +0000565
sg481n2bc35382017-09-23 15:50:15 +0000566
sg481nbd890c52017-08-28 12:11:35 -0400567 <distributionManagement>
568 <repository>
569 <id>ecomp-releases</id>
570 <name>AAF Release Repository</name>
571 <url>${nexusproxy}${releaseNexusPath}</url>
572 </repository>
573 <snapshotRepository>
574 <id>ecomp-snapshots</id>
575 <name>AAF Snapshot Repository</name>
576 <url>${nexusproxy}${snapshotNexusPath}</url>
577 </snapshotRepository>
578 <site>
579 <id>ecomp-site</id>
580 <url>dav:${nexusproxy}${sitePath}</url>
581 </site>
582 </distributionManagement>
sg481nc7499ee2017-09-24 04:05:00 +0000583 <profiles>
584 <profile>
585 <id>docker</id>
586 <properties>
587 <skip.staging.artifacts>true</skip.staging.artifacts>
588 <skip.docker.build>false</skip.docker.build>
589 <skip.docker.tag>false</skip.docker.tag>
590 <skip.docker.push>false</skip.docker.push>
591 </properties>
592 </profile>
593 </profiles>
sg481nbd890c52017-08-28 12:11:35 -0400594</project>