blob: fab37c4f884542d403ba517a40acd0a5e9cb47c8 [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>
sg481n1e538f72017-09-24 02:12:15 +0000188 </configuration>
189 </execution>
sg481nc7499ee2017-09-24 04:05:00 +0000190
191 <execution>
192 <id>tag-image-latest-timestamp</id>
193 <phase>package</phase>
194 <goals>
195 <goal>tag</goal>
196 </goals>
197 <configuration>
198 <image>onap/aaf/authz-service</image>
199 <newName>${docker.push.registry}/onap/aaf/authz-service:${project.docker.latesttagtimestamp.version}</newName>
200 <skipDockerTag>${skip.docker.push}</skipDockerTag>
201 </configuration>
202 </execution>
203 <execution>
204 <id>push-image-latest-timestamp</id>
sg481n1e538f72017-09-24 02:12:15 +0000205 <phase>deploy</phase>
206 <goals>
207 <goal>push</goal>
208 </goals>
209 <configuration>
sg481nc7499ee2017-09-24 04:05:00 +0000210 <imageName>${docker.push.registry}/onap/aaf/authz-service:${project.docker.latesttagtimestamp.version}</imageName>
sg481n1e538f72017-09-24 02:12:15 +0000211 <skipDockerPush>${skip.docker.push}</skipDockerPush>
212 </configuration>
213 </execution>
sg481nc7499ee2017-09-24 04:05:00 +0000214 <execution>
215 <id>tag-image-latest</id>
216 <phase>package</phase>
217 <goals>
218 <goal>tag</goal>
219 </goals>
220 <configuration>
221 <image>onap/aaf/authz-service</image>
222 <newName>${docker.push.registry}/onap/aaf/authz-service:${project.docker.latesttag.version}</newName>
223 <skipDockerTag>${skip.docker.push}</skipDockerTag>
224 </configuration>
225 </execution>
226 <execution>
227 <id>push-image-latest</id>
228 <phase>deploy</phase>
229 <goals>
230 <goal>push</goal>
231 </goals>
232 <configuration>
233 <imageName>${docker.push.registry}/onap/aaf/authz-service:${project.docker.latesttag.version}</imageName>
234 <skipDockerPush>${skip.docker.push}</skipDockerPush>
235 </configuration>
236 </execution>
237 <execution>
238 <id>tag-image</id>
239 <phase>package</phase>
240 <goals>
241 <goal>tag</goal>
242 </goals>
243 <configuration>
244 <image>onap/aaf/authz-service</image>
245 <newName>${docker.push.registry}/onap/aaf/authz-service:latest</newName>
246 <skipDockerTag>${skip.docker.push}</skipDockerTag>
247 </configuration>
248 </execution>
249 <execution>
250 <id>push-image</id>
251 <phase>deploy</phase>
252 <goals>
253 <goal>push</goal>
254 </goals>
255 <configuration>
256 <imageName>${docker.push.registry}/onap/aaf/authz-service:latest</imageName>
257 <skipDockerPush>${skip.docker.push}</skipDockerPush>
258 </configuration>
259 </execution>
260 </executions>
261 </plugin>
262
sg481ndc5fcf12017-09-15 13:06:30 -0400263 <plugin>
sg481n1e538f72017-09-24 02:12:15 +0000264 <artifactId>maven-resources-plugin</artifactId>
265 <version>2.7</version>
266 <executions>
267 <execution>
sg481na9d21082017-09-23 14:26:06 +0000268 <id>copy-docker-file</id>
269 <phase>package</phase>
270 <goals>
271 <goal>copy-resources</goal>
272 </goals>
273 <configuration>
274 <outputDirectory>${dockerLocation}</outputDirectory>
275 <overwrite>true</overwrite>
276 <resources>
277 <resource>
278 <directory>${basedir}/src/main/resources/docker</directory>
279 <filtering>true</filtering>
280 <includes>
281 <include>**/*</include>
282 </includes>
283 </resource>
284 </resources>
285 </configuration>
286 </execution>
sg481ndc5fcf12017-09-15 13:06:30 -0400287 <execution>
288 <id>copy-resources-1</id>
289 <phase>validate</phase>
290 <goals>
291 <goal>copy-resources</goal>
292 </goals>
293 <configuration>
294 <outputDirectory>${project.build.directory}/opt/dme2reg/</outputDirectory>
295 <resources>
296 <resource>
297 <directory>${project.basedir}/src/main/resources/dme2reg/</directory>
298 <includes>
299 <include>**/*.txt</include>
300 </includes>
301 </resource>
302 </resources>
303 </configuration>
304 </execution>
305 <execution>
306 <id>copy-resources-2</id>
307 <phase>validate</phase>
308 <goals>
309 <goal>copy-resources</goal>
310 </goals>
311 <configuration>
sg481na2ac6782017-09-18 16:35:50 -0400312 <outputDirectory>${project.build.directory}/opt/app/aaf/authz-service/etc</outputDirectory>
sg481ndc5fcf12017-09-15 13:06:30 -0400313 <resources>
314 <resource>
315 <directory>${project.basedir}/src/main/resources/etc</directory>
316 <includes>
317 <include>**/**</include>
318 </includes>
319 </resource>
320 </resources>
321 </configuration>
322 </execution>
323
324 <execution>
325 <id>copy-resources-3</id>
326 <phase>validate</phase>
327 <goals>
328 <goal>copy-resources</goal>
329 </goals>
330 <configuration>
sg481na2ac6782017-09-18 16:35:50 -0400331 <outputDirectory>${project.build.directory}/opt/app/aaf/authz-service/lib</outputDirectory>
sg481ndc5fcf12017-09-15 13:06:30 -0400332 <resources>
333 <resource>
334 <directory>${project.basedir}/../authz-cmd/target</directory>
335 <includes>
sg481na2ac6782017-09-18 16:35:50 -0400336 <include>**/*.jar</include>
sg481ndc5fcf12017-09-15 13:06:30 -0400337 </includes>
338 </resource>
339 </resources>
340 </configuration>
341 </execution>
342 <execution>
343 <id>copy-resources-4</id>
344 <phase>validate</phase>
345 <goals>
346 <goal>copy-resources</goal>
347 </goals>
348 <configuration>
sg481na2ac6782017-09-18 16:35:50 -0400349 <outputDirectory>${project.build.directory}/opt/app/aaf/authz-service/</outputDirectory>
sg481ndc5fcf12017-09-15 13:06:30 -0400350 <resources>
351 <resource>
352 <directory>${project.basedir}/../authz-cmd</directory>
353 <includes>
354 <include>**/aafcli.sh</include>
355 </includes>
356 </resource>
357 </resources>
358 </configuration>
359 </execution>
sg481na2ac6782017-09-18 16:35:50 -0400360 <execution>
sg481ndc5fcf12017-09-15 13:06:30 -0400361 <id>copy-resources-5</id>
362 <phase>validate</phase>
363 <goals>
364 <goal>copy-resources</goal>
365 </goals>
366 <configuration>
sg481na2ac6782017-09-18 16:35:50 -0400367 <outputDirectory>${project.build.directory}/opt/app/aaf/authz-service/etc/</outputDirectory>
sg481ndc5fcf12017-09-15 13:06:30 -0400368 <resources>
369 <resource>
sg481na2ac6782017-09-18 16:35:50 -0400370 <directory>${project.basedir}/src/main/config</directory>
sg481ndc5fcf12017-09-15 13:06:30 -0400371 <includes>
372 <include>**/**</include>
373 </includes>
374 </resource>
375 </resources>
376 </configuration>
377 </execution>
sg481na2ac6782017-09-18 16:35:50 -0400378 <execution>
379 <id>copy-resources-6</id>
380 <phase>validate</phase>
381 <goals>
382 <goal>copy-resources</goal>
383 </goals>
384 <configuration>
385 <outputDirectory>${project.build.directory}/opt/app/aaf/authz-service/etc/data</outputDirectory>
386 <resources>
387 <resource>
388 <directory>${project.basedir}/../opt/app/aaf/data</directory>
389 <includes>
390 <include>**/**</include>
391 </includes>
392 </resource>
393 </resources>
394 </configuration>
395 </execution>
sg481ndc5fcf12017-09-15 13:06:30 -0400396 </executions>
397 </plugin>
398 <plugin>
399 <groupId>org.apache.maven.plugins</groupId>
400 <artifactId>maven-dependency-plugin</artifactId>
401 <version>2.10</version>
402 <executions>
403 <execution>
404 <id>copy-dependencies</id>
405 <phase>package</phase>
406 <goals>
407 <goal>copy-dependencies</goal>
408 </goals>
409 <configuration>
sg481na2ac6782017-09-18 16:35:50 -0400410 <outputDirectory>${project.build.directory}/opt/app/aaf/authz-service/lib</outputDirectory>
sg481ndc5fcf12017-09-15 13:06:30 -0400411 <overWriteReleases>false</overWriteReleases>
412 <overWriteSnapshots>false</overWriteSnapshots>
413 <overWriteIfNewer>true</overWriteIfNewer>
414 </configuration>
415 </execution>
416 </executions>
417 </plugin>
418
sg481nbd890c52017-08-28 12:11:35 -0400419 <plugin>
420 <groupId>org.codehaus.mojo</groupId>
421 <artifactId>exec-maven-plugin</artifactId>
422 <version>1.5.0</version>
423 <configuration>
424 <executable>java</executable>
425 <arguments>
426 <argument>-DAFT_LATITUDE=33</argument>
427 <argument>-DAFT_LONGITUDE=-84</argument>
428 <argument>-DAFT_ENVIRONMENT=AFTUAT</argument>
429
430 <argument>-XX:NewRatio=3</argument>
431 <argument>-XX:+PrintGCTimeStamps</argument>
432 <argument>-XX:+PrintGCDetails</argument>
433 <argument>-Xloggc:gc.log</argument>
434 <argument>-classpath</argument>
435
436 <classpath>
437
438 </classpath>
439 <argument>org.onap.aaf.authz.service.AuthAPI</argument>
440
441 <argument>service=org.onap.aaf.authz.AuthorizationService/version=2.0/envContext=DEV/routeOffer=Dev</argument>
442 </arguments>
443 </configuration>
444 </plugin>
445
446 <plugin>
447 <groupId>org.apache.maven.plugins</groupId>
448 <artifactId>maven-jar-plugin</artifactId>
449 <configuration>
450 <excludes>
451 <exclude>*.properties</exclude>
452 </excludes>
453 </configuration>
454 <version>2.3.1</version>
455 </plugin>
sg481na2ac6782017-09-18 16:35:50 -0400456
sg481nbd890c52017-08-28 12:11:35 -0400457
458 <plugin>
459 <groupId>org.apache.maven.plugins</groupId>
460 <artifactId>maven-javadoc-plugin</artifactId>
sg481na9d21082017-09-23 14:26:06 +0000461 <version>2.10.4</version>
sg481nbd890c52017-08-28 12:11:35 -0400462 <configuration>
463 <failOnError>false</failOnError>
464 </configuration>
465 <executions>
466 <execution>
467 <id>attach-javadocs</id>
468 <goals>
469 <goal>jar</goal>
470 </goals>
471 </execution>
472 </executions>
473 </plugin>
474
475
476 <plugin>
477 <groupId>org.apache.maven.plugins</groupId>
478 <artifactId>maven-source-plugin</artifactId>
479 <version>2.2.1</version>
480 <executions>
481 <execution>
482 <id>attach-sources</id>
483 <goals>
484 <goal>jar-no-fork</goal>
485 </goals>
486 </execution>
487 </executions>
488 </plugin>
489
490<plugin>
491 <groupId>org.sonatype.plugins</groupId>
492 <artifactId>nexus-staging-maven-plugin</artifactId>
493 <version>1.6.7</version>
494 <extensions>true</extensions>
495 <configuration>
496 <nexusUrl>${nexusproxy}</nexusUrl>
497 <stagingProfileId>176c31dfe190a</stagingProfileId>
498 <serverId>ecomp-staging</serverId>
499 </configuration>
sg481n40cd3562017-09-01 13:12:31 -0400500 </plugin>
501 <plugin>
502 <groupId>org.jacoco</groupId>
503 <artifactId>jacoco-maven-plugin</artifactId>
504 <version>0.7.7.201606060606</version>
505 <configuration>
506 <dumpOnExit>true</dumpOnExit>
507 <includes>
508 <include>org.onap.aaf.*</include>
509 </includes>
510 </configuration>
511 <executions>
512 <execution>
513 <id>pre-unit-test</id>
514 <goals>
515 <goal>prepare-agent</goal>
516 </goals>
517 <configuration>
518 <destFile>${project.build.directory}/coverage-reports/jacoco.exec</destFile>
519 <!-- <append>true</append> -->
520 </configuration>
521 </execution>
522 <execution>
523 <id>pre-integration-test</id>
524 <phase>pre-integration-test</phase>
525 <goals>
526 <goal>prepare-agent</goal>
527 </goals>
528 <configuration>
529 <destFile>${project.build.directory}/coverage-reports/jacoco-it.exec</destFile>
530 <!-- <append>true</append> -->
531 </configuration>
532 </execution>
533 <execution>
534 <goals>
535 <goal>merge</goal>
536 </goals>
537 <phase>post-integration-test</phase>
538 <configuration>
539 <fileSets>
540 <fileSet implementation="org.apache.maven.shared.model.fileset.FileSet">
541 <directory>${project.build.directory}/coverage-reports</directory>
542 <includes>
543 <include>*.exec</include>
544 </includes>
545 </fileSet>
546 </fileSets>
547 <destFile>${project.build.directory}/jacoco-dev.exec</destFile>
548 </configuration>
549 </execution>
550 </executions>
551 </plugin>
sg481nbd890c52017-08-28 12:11:35 -0400552
553 </plugins>
554
555 </build>
sg481nc7499ee2017-09-24 04:05:00 +0000556
sg481n2bc35382017-09-23 15:50:15 +0000557
sg481nbd890c52017-08-28 12:11:35 -0400558 <distributionManagement>
559 <repository>
560 <id>ecomp-releases</id>
561 <name>AAF Release Repository</name>
562 <url>${nexusproxy}${releaseNexusPath}</url>
563 </repository>
564 <snapshotRepository>
565 <id>ecomp-snapshots</id>
566 <name>AAF Snapshot Repository</name>
567 <url>${nexusproxy}${snapshotNexusPath}</url>
568 </snapshotRepository>
569 <site>
570 <id>ecomp-site</id>
571 <url>dav:${nexusproxy}${sitePath}</url>
572 </site>
573 </distributionManagement>
sg481nc7499ee2017-09-24 04:05:00 +0000574 <profiles>
575 <profile>
576 <id>docker</id>
577 <properties>
578 <skip.staging.artifacts>true</skip.staging.artifacts>
579 <skip.docker.build>false</skip.docker.build>
580 <skip.docker.tag>false</skip.docker.tag>
581 <skip.docker.push>false</skip.docker.push>
582 </properties>
583 </profile>
584 </profiles>
sg481nbd890c52017-08-28 12:11:35 -0400585</project>