blob: a6af750eafc7114c863160bb806720596fa77e7c [file] [log] [blame]
Instrumental71037c32018-03-26 13:51:48 -07001<?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>
Sai Gandham3a70e912018-04-12 22:16:21 +000026 <parent>
Sai Gandham83fc0252018-04-09 16:28:48 +000027 <groupId>org.onap.aaf.authz</groupId>
28 <artifactId>parent</artifactId>
Instrumentalb7440252018-06-14 15:05:33 -050029 <version>2.1.2-SNAPSHOT</version>
Sai Gandham3a70e912018-04-12 22:16:21 +000030 </parent>
Sai Gandham83fc0252018-04-09 16:28:48 +000031 <artifactId>authparent</artifactId>
Instrumental71037c32018-03-26 13:51:48 -070032 <name>AAF Auth Parent</name>
33 <packaging>pom</packaging>
Sai Gandham99f14fb2018-04-08 10:13:10 -050034
Sai Gandhama3ee2292018-04-07 22:38:08 -050035
Instrumental71037c32018-03-26 13:51:48 -070036 <properties>
37 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
Instrumental924b18d2018-04-05 20:17:18 -050038 <project.ext_root_dir>/opt/app/osaaf</project.ext_root_dir>
Sai Gandhamc434f3c2018-03-27 16:29:24 +000039 <!-- SONAR -->
40 <jacoco.version>0.7.7.201606060606</jacoco.version>
41 <sonar-jacoco-listeners.version>3.2</sonar-jacoco-listeners.version>
42 <sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
43 <!-- Default Sonar configuration -->
Sai Gandham61f8fdf2018-04-03 12:07:07 -050044 <sonar.jacoco.reportPaths>target/code-coverage/jacoco-ut.exec</sonar.jacoco.reportPaths>
45 <sonar.jacoco.itReportPaths>target/code-coverage/jacoco-it.exec</sonar.jacoco.itReportPaths>
Sai Gandhamc434f3c2018-03-27 16:29:24 +000046 <!-- Note: This list should match jacoco-maven-plugin's exclusion list below -->
47 <sonar.exclusions>**/gen/**,**/generated-sources/**,**/yang-gen**,**/pax/**</sonar.exclusions>
48 <nexusproxy>https://nexus.onap.org</nexusproxy>
49 <snapshotNexusPath>/content/repositories/snapshots/</snapshotNexusPath>
50 <releaseNexusPath>/content/repositories/releases/</releaseNexusPath>
51 <stagingNexusPath>/content/repositories/staging/</stagingNexusPath>
Sai Gandham30dca6e2018-04-09 21:22:48 +000052 <sitePath>/content/sites/site/org/onap/aaf/authz/${project.artifactId}/${project.version}</sitePath>
IanHowellc1e85932018-05-18 09:29:09 -050053 <!-- We have to up these versions from the original to avoid Security Errors -->
54 <project.cassVersion>3.4.0</project.cassVersion>
55 <project.nettyVersion>4.1.22.Final</project.nettyVersion>
Instrumental4ad47632018-07-13 15:49:26 -050056 <project.project.ext_root_dir>/opt/app/osaaf</project.project.ext_root_dir>
Instrumental71037c32018-03-26 13:51:48 -070057 </properties>
58
59 <developers>
60 <developer>
61 <name>Jonathan Gathman</name>
62 <email>jonathan.gathman@att.com</email>
63 <organization>ATT</organization>
64 <roles>
65 <role>Architect</role>
66 <role>Lead Developer</role>
67 </roles>
68 </developer>
69 <developer>
70 <name>Gabe Maurer</name>
71 <email>gabe.maurer@att.com</email>
72 <organization>ATT</organization>
73 <roles>
74 <role>Developer</role>
75 </roles>
76 </developer>
77 <developer>
78 <name>Ian Howell</name>
79 <email>ian.howell@att.com</email>
80 <organization>ATT</organization>
81 <roles>
82 <role>Developer</role>
83 </roles>
84 </developer>
Sai Gandhame01703c2018-03-26 22:57:09 +000085 <developer>
86 <name>Sai Gandham</name>
87 <email>sai.gandham@att.com</email>
88 <organization>ATT</organization>
89 <roles>
90 <role>Developer</role>
91 </roles>
92 </developer>
Instrumental71037c32018-03-26 13:51:48 -070093 </developers>
94
95 <build>
96 <pluginManagement>
97 <plugins>
98 <plugin>
99 <groupId>org.apache.maven.plugins</groupId>
100 <artifactId>maven-compiler-plugin</artifactId>
101 <version>2.3.2</version>
102 <configuration>
103 <source>1.8</source>
104 <target>1.8</target>
105 </configuration>
106 </plugin>
107 <plugin>
108 <groupId>org.apache.maven.plugins</groupId>
109 <artifactId>maven-deploy-plugin</artifactId>
110 <version>2.6</version>
111 <configuration>
Sai Gandhamd97041c2018-04-03 01:57:59 -0500112 <skip>false</skip>
Instrumental71037c32018-03-26 13:51:48 -0700113 </configuration>
114 </plugin>
115
116 <plugin>
117 <groupId>org.apache.maven.plugins</groupId>
118 <artifactId>maven-surefire-plugin</artifactId>
119 <version>2.17</version>
120 <configuration>
Instrumental67bac2c2018-04-02 17:41:10 -0500121 <skipTests>false</skipTests>
Instrumental17ca7442018-03-29 16:54:19 -0500122
Instrumental71037c32018-03-26 13:51:48 -0700123 <includes>
124 <include>**/JU*.java</include>
125 </includes>
126 <excludes>
127 </excludes>
128
129 </configuration>
130 </plugin>
131
132 <plugin>
133 <groupId>org.apache.maven.plugins</groupId>
134 <artifactId>maven-failsafe-plugin</artifactId>
135 <version>2.17</version>
136 <configuration>
Instrumental924b18d2018-04-05 20:17:18 -0500137 <skipTests>false</skipTests>
Instrumental71037c32018-03-26 13:51:48 -0700138 </configuration>
139 <executions>
140 <execution>
141 <id>integration-test</id>
142 <goals>
143 <goal>integration-test</goal>
144 <goal>verify</goal>
145 </goals>
146 </execution>
147 </executions>
148 </plugin>
149
150 <!-- Builds O/S Command line ready jars and scripts, ready to run/zip -->
151 <plugin>
152 <groupId>org.codehaus.mojo</groupId>
153 <artifactId>appassembler-maven-plugin</artifactId>
154 <version>1.10</version>
155 <executions>
156 <execution>
157 <goals>
158 <goal>assemble</goal>
159 </goals>
160 <phase>install</phase>
161 </execution>
162 </executions>
163 <configuration>
164 <programs/> <!-- this set in projects that have programs -->
165 <assembleDirectory>../aaf_${project.version}</assembleDirectory>
Instrumental924b18d2018-04-05 20:17:18 -0500166 <copyConfigurationDirectory>true</copyConfigurationDirectory>
Instrumental71037c32018-03-26 13:51:48 -0700167 <configurationDirectory>etc</configurationDirectory>
168 <repositoryName>lib</repositoryName>
Instrumental924b18d2018-04-05 20:17:18 -0500169 <includeConfigurationDirectoryInClasspath>false</includeConfigurationDirectoryInClasspath>
Instrumental71037c32018-03-26 13:51:48 -0700170 <repositoryLayout>flat</repositoryLayout>
171 </configuration>
172 </plugin>
173
174 <!-- Build Docker Image -->
175 <plugin>
176 <groupId>com.spotify</groupId>
177 <artifactId>docker-maven-plugin</artifactId>
178 <version>1.0.0</version>
179 <configuration>
180 <imageName>onap/osaaf/${project.artifactId}</imageName>
181 <!-- <dockerDirectory>${dockerLocation}</dockerDirectory> -->
182 <dockerDirectory>${basedir}/src/main/resources/docker</dockerDirectory>
183 <imageTags>
184 <imageTag>latest</imageTag>
185 <imageTag>${project.docker.latesttagtimestamp.version}</imageTag>
186 <imageTag>${project.docker.latesttag.version}</imageTag>
187 </imageTags>
188 <forceTags>true</forceTags>
189 <!-- <resources> <resource> <targetPath>/</targetPath> <directory>${project.build.directory}/opt</directory>
190 <filtering>true</filtering> <includes> <include>**/**</include> </includes>
191 </resource> </resources> -->
192 <resources>
193 <resource>
194 <targetPath>/</targetPath>
195 <directory>${project.build.directory}/opt</directory>
196 <include>${project.build.finalName}.jar</include>
197 </resource>
198 <resource>
199 <targetPath>/</targetPath>
200 <directory>${project.build.directory}</directory>
201 <include>**/**</include>
202 </resource>
203 </resources>
204 </configuration>
205 <executions>
206 <execution>
207 <id>build-image</id>
208 <phase>package</phase>
209 <goals>
210 <goal>build</goal>
211 </goals>
212 <configuration>
213 <skipDockerBuild>${skip.docker.build}</skipDockerBuild>
214 </configuration>
215 </execution>
216
217 <execution>
218 <id>tag-image-project-version</id>
219 <phase>package</phase>
220 <goals>
221 <goal>tag</goal>
222 </goals>
223 <configuration>
224 <image>onap/osaaf/${project.artifactId}</image>
225 <newName>${docker.push.registry}/onap/osaaf/${project.artifactId}:${project.version}</newName>
226 <skipDockerTag>${skip.docker.push}</skipDockerTag>
227 </configuration>
228 </execution>
229
230 <execution>
231 <id>tag-image-latest</id>
232 <phase>package</phase>
233 <goals>
234 <goal>tag</goal>
235 </goals>
236 <configuration>
237 <image>onap/aaf/authz-service</image>
238 <newName>${docker.push.registry}/onap/osaaf/${project.artifactId}:latest</newName>
239 <skipDockerTag>${skip.docker.push}</skipDockerTag>
240 </configuration>
241 </execution>
242
243 <execution>
244 <id>push-image-latest</id>
245 <phase>deploy</phase>
246 <goals>
247 <goal>push</goal>
248 </goals>
249 <configuration>
250 <imageName>${docker.push.registry}/onap/osaaf/${project.artifactId}:${project.version}</imageName>
251 <skipDockerPush>${skip.docker.push}</skipDockerPush>
252 </configuration>
253 </execution>
254
255 <execution>
256 <id>push-image</id>
257 <phase>deploy</phase>
258 <goals>
259 <goal>push</goal>
260 </goals>
261 <configuration>
262 <imageName>${docker.push.registry}/onap/osaaf/${project.artifactId}:latest</imageName>
263 <skipDockerPush>${skip.docker.push}</skipDockerPush>
264 </configuration>
265 </execution>
266 </executions>
267 </plugin>
Sai Gandhamc434f3c2018-03-27 16:29:24 +0000268 <plugin>
269 <groupId>org.sonatype.plugins</groupId>
270 <artifactId>nexus-staging-maven-plugin</artifactId>
271 <version>1.6.7</version>
272 <extensions>true</extensions>
273 <configuration>
274 <nexusUrl>${nexusproxy}</nexusUrl>
275 <stagingProfileId>176c31dfe190a</stagingProfileId>
276 <serverId>ecomp-staging</serverId>
277 </configuration>
278 </plugin>
279 <plugin>
280 <groupId>org.jacoco</groupId>
281 <artifactId>jacoco-maven-plugin</artifactId>
282 <version>0.7.7.201606060606</version>
283 <configuration>
284 <dumpOnExit>true</dumpOnExit>
285 <includes>
286 <include>org.onap.aaf.*</include>
287 </includes>
288 </configuration>
289 <executions>
290 <execution>
291 <id>pre-unit-test</id>
292 <goals>
293 <goal>prepare-agent</goal>
294 </goals>
295 <configuration>
296 <destFile>${project.build.directory}/coverage-reports/jacoco.exec</destFile>
297 <!-- <append>true</append> -->
298 </configuration>
299 </execution>
300 <execution>
301 <id>pre-integration-test</id>
302 <phase>pre-integration-test</phase>
303 <goals>
304 <goal>prepare-agent</goal>
305 </goals>
306 <configuration>
307 <destFile>${project.build.directory}/coverage-reports/jacoco-it.exec</destFile>
308 <!-- <append>true</append> -->
309 </configuration>
310 </execution>
311 <execution>
312 <goals>
313 <goal>merge</goal>
314 </goals>
315 <phase>post-integration-test</phase>
316 <configuration>
317 <fileSets>
318 <fileSet implementation="org.apache.maven.shared.model.fileset.FileSet">
319 <directory>${project.build.directory}/coverage-reports</directory>
320 <includes>
321 <include>*.exec</include>
322 </includes>
323 </fileSet>
324 </fileSets>
325 <destFile>${project.build.directory}/jacoco-dev.exec</destFile>
326 </configuration>
327 </execution>
328 </executions>
329 </plugin>
Instrumental71037c32018-03-26 13:51:48 -0700330 </plugins>
331 </pluginManagement>
332 </build>
333
334 <dependencies>
335 <dependency>
336 <groupId>org.mockito</groupId>
337 <artifactId>mockito-all</artifactId>
Instrumental71037c32018-03-26 13:51:48 -0700338 <scope>test</scope>
339 </dependency>
340 <dependency>
341 <groupId>org.powermock</groupId>
342 <artifactId>powermock-module-junit4</artifactId>
Instrumental71037c32018-03-26 13:51:48 -0700343 <scope>test</scope>
344 </dependency>
345 <dependency>
346 <groupId>org.powermock</groupId>
347 <artifactId>powermock-api-mockito</artifactId>
Instrumental71037c32018-03-26 13:51:48 -0700348 <scope>test</scope>
349 </dependency>
350 <dependency>
351 <groupId>junit</groupId>
352 <artifactId>junit</artifactId>
Instrumental71037c32018-03-26 13:51:48 -0700353 <scope>test</scope>
354 </dependency>
355
356 </dependencies>
357
358 <modules>
359 <!-- <module>auth-client</module> complile manually with mvn -N independently -->
360 <module>auth-core</module>
361 <module>auth-cass</module>
362 <module>auth-deforg</module>
363
364 <module>auth-service</module>
365 <module>auth-cmd</module>
366 <module>auth-batch</module>
367
368 <module>auth-gui</module>
369 <module>auth-locate</module>
370 <module>auth-oauth</module>
371 <module>auth-certman</module>
372 <module>auth-fs</module>
373 <module>auth-hello</module>
374 </modules>
375
Instrumental71037c32018-03-26 13:51:48 -0700376
377</project>