Release aaf/authz
[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     <parent>
27         <groupId>org.onap.aaf.authz</groupId>
28         <artifactId>parent</artifactId>
29         <version>2.1.23</version>
30     </parent>
31     <artifactId>authparent</artifactId>
32     <name>AAF Auth Parent</name>
33     <packaging>pom</packaging>
34
35     
36     <properties>
37         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
38         <project.ext_root_dir>/opt/app/osaaf</project.ext_root_dir>
39         <!--  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 -->
44         <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>
46         <!-- 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>
52         <sitePath>/content/sites/site/org/onap/aaf/authz/${project.artifactId}/${project.version}</sitePath>
53         <!-- We have to up these versions from the original to avoid Security Errors -->
54         <project.nettyVersion>4.1.22.Final</project.nettyVersion>
55         <project.project.ext_root_dir>/opt/app/osaaf</project.project.ext_root_dir>
56     </properties>
57
58     <developers>
59         <developer>
60             <name>Jonathan Gathman</name>
61             <email>jonathan.gathman@att.com</email>
62             <organization>ATT</organization>
63             <roles>
64                 <role>Architect</role>
65                 <role>Lead Developer</role>
66             </roles>
67         </developer>
68         <developer>
69             <name>Sai Gandham</name>
70             <email>sai.gandham@att.com</email>
71             <organization>ATT</organization>
72             <roles>
73                 <role>Developer</role>
74             </roles>
75         </developer>
76     </developers>
77
78     <build>
79         <pluginManagement>
80             <plugins>
81                 <plugin>
82                     <groupId>org.apache.maven.plugins</groupId>
83                     <artifactId>maven-compiler-plugin</artifactId>
84                     <version>2.3.2</version>
85                     <configuration>
86                         <source>1.8</source>
87                         <target>1.8</target>
88                     </configuration>
89                 </plugin>
90                 <plugin>
91                     <groupId>org.apache.maven.plugins</groupId>
92                     <artifactId>maven-surefire-plugin</artifactId>
93                     <version>2.17</version>
94                     <configuration>
95                         <skipTests>false</skipTests>
96
97                         <includes>
98                             <include>**/JU*.java</include>
99                         </includes>
100                         <excludes>
101                         </excludes>
102                         <useSystemClassLoader>false</useSystemClassLoader>
103                     </configuration>
104                 </plugin>
105
106                 <plugin>
107                     <groupId>org.apache.maven.plugins</groupId>
108                     <artifactId>maven-failsafe-plugin</artifactId>
109                     <version>2.17</version>
110                     <configuration>
111                         <skipTests>false</skipTests>
112                     </configuration>
113                     <executions>
114                         <execution>
115                             <id>integration-test</id>
116                             <goals>
117                                 <goal>integration-test</goal>
118                                 <goal>verify</goal>
119                             </goals>
120                         </execution>
121                     </executions>
122                 </plugin>
123                 
124                 <!--  Builds O/S Command line ready jars and scripts, ready to run/zip -->
125                 <plugin>
126                     <groupId>org.codehaus.mojo</groupId>
127                     <artifactId>appassembler-maven-plugin</artifactId>
128                     <version>1.10</version>
129                     <executions>
130                         <execution>
131                             <goals>
132                                 <goal>assemble</goal>
133                             </goals>
134                             <phase>install</phase>
135                         </execution>
136                     </executions>
137                     <configuration>
138                         <programs/> <!-- this set in projects that have programs -->
139                         <assembleDirectory>../aaf_${project.version}</assembleDirectory>
140                         <copyConfigurationDirectory>true</copyConfigurationDirectory>
141                         <configurationDirectory>etc</configurationDirectory>
142                         <repositoryName>lib</repositoryName>
143                         <includeConfigurationDirectoryInClasspath>false</includeConfigurationDirectoryInClasspath>
144                         <repositoryLayout>flat</repositoryLayout>
145                     </configuration>
146                 </plugin>
147                 <!-- Build Docker Image -->
148                 <plugin>
149                     <groupId>com.spotify</groupId>
150                     <artifactId>docker-maven-plugin</artifactId>
151                     <version>1.0.0</version>
152                     <configuration>
153                         <imageName>onap/osaaf/${project.artifactId}</imageName>
154                         <!-- <dockerDirectory>${dockerLocation}</dockerDirectory> -->
155                         <dockerDirectory>${basedir}/src/main/resources/docker</dockerDirectory>
156                         <imageTags>
157                             <imageTag>latest</imageTag>
158                             <imageTag>${project.docker.latesttagtimestamp.version}</imageTag>
159                             <imageTag>${project.docker.latesttag.version}</imageTag>
160                         </imageTags>
161                         <forceTags>true</forceTags>
162                         <!-- <resources> <resource> <targetPath>/</targetPath> <directory>${project.build.directory}/opt</directory> 
163                             <filtering>true</filtering> <includes> <include>**/**</include> </includes> 
164                             </resource> </resources> -->
165                         <resources>
166                             <resource>
167                                 <targetPath>/</targetPath>
168                                 <directory>${project.build.directory}/opt</directory>
169                                 <include>${project.build.finalName}.jar</include>
170                             </resource>
171                             <resource>
172                                 <targetPath>/</targetPath>
173                                 <directory>${project.build.directory}</directory>
174                                 <include>**/**</include>
175                             </resource>
176                         </resources>
177                     </configuration>
178                     <executions>
179                         <execution>
180                             <id>build-image</id>
181                             <phase>package</phase>
182                             <goals>
183                                 <goal>build</goal>
184                             </goals>
185                             <configuration>
186                                 <skipDockerBuild>${skip.docker.build}</skipDockerBuild>
187                             </configuration>
188                         </execution>
189                 
190                         <execution>
191                             <id>tag-image-project-version</id>
192                             <phase>package</phase>
193                             <goals>
194                                 <goal>tag</goal>
195                             </goals>
196                             <configuration>
197                                 <image>onap/osaaf/${project.artifactId}</image>
198                                 <newName>${docker.push.registry}/onap/osaaf/${project.artifactId}:${project.version}</newName>
199                                 <skipDockerTag>${skip.docker.push}</skipDockerTag>
200                             </configuration>
201                         </execution>
202                 
203                         <execution>
204                             <id>tag-image-latest</id>
205                             <phase>package</phase>
206                             <goals>
207                                 <goal>tag</goal>
208                             </goals>
209                             <configuration>
210                                 <image>onap/aaf/authz-service</image>
211                                 <newName>${docker.push.registry}/onap/osaaf/${project.artifactId}:latest</newName>
212                                 <skipDockerTag>${skip.docker.push}</skipDockerTag>
213                             </configuration>
214                         </execution>
215                 
216                         <execution>
217                             <id>push-image-latest</id>
218                             <phase>deploy</phase>
219                             <goals>
220                                 <goal>push</goal>
221                             </goals>
222                             <configuration>
223                                 <imageName>${docker.push.registry}/onap/osaaf/${project.artifactId}:${project.version}</imageName>
224                                 <skipDockerPush>${skip.docker.push}</skipDockerPush>
225                             </configuration>
226                         </execution>
227                 
228                         <execution>
229                             <id>push-image</id>
230                             <phase>deploy</phase>
231                             <goals>
232                                 <goal>push</goal>
233                             </goals>
234                             <configuration>
235                                 <imageName>${docker.push.registry}/onap/osaaf/${project.artifactId}:latest</imageName>
236                                 <skipDockerPush>${skip.docker.push}</skipDockerPush>
237                             </configuration>
238                         </execution>
239                     </executions>
240                 </plugin>
241             <plugin>
242                 <groupId>org.jacoco</groupId>
243                 <artifactId>jacoco-maven-plugin</artifactId>
244                 <version>0.7.7.201606060606</version>
245                 <configuration>
246                     <dumpOnExit>true</dumpOnExit>
247                     <includes>
248                         <include>org.onap.aaf.*</include>
249                     </includes>
250                 </configuration>
251                 <executions>
252                     <execution>
253                         <id>pre-unit-test</id>
254                         <goals>
255                             <goal>prepare-agent</goal>
256                         </goals>
257                         <configuration>
258                             <destFile>${project.build.directory}/coverage-reports/jacoco.exec</destFile>
259                             <!-- <append>true</append> -->
260                         </configuration>
261                     </execution>
262                     <execution>
263                         <id>pre-integration-test</id>
264                         <phase>pre-integration-test</phase>
265                         <goals>
266                             <goal>prepare-agent</goal>
267                         </goals>
268                         <configuration>
269                             <destFile>${project.build.directory}/coverage-reports/jacoco-it.exec</destFile>
270                             <!-- <append>true</append> -->
271                         </configuration>
272                     </execution>
273                     <execution>
274                         <goals>
275                             <goal>merge</goal>
276                         </goals>
277                         <phase>post-integration-test</phase>
278                         <configuration>
279                             <fileSets>
280                                 <fileSet implementation="org.apache.maven.shared.model.fileset.FileSet">
281                                     <directory>${project.build.directory}/coverage-reports</directory>
282                                     <includes>
283                                         <include>*.exec</include>
284                                     </includes>
285                                 </fileSet>
286                             </fileSets>
287                             <destFile>${project.build.directory}/jacoco-dev.exec</destFile>
288                         </configuration>
289                     </execution>
290                 </executions>
291             </plugin>
292             </plugins>
293         </pluginManagement>
294     </build>
295
296     <dependencies>
297         <dependency>
298             <groupId>org.mockito</groupId>
299             <artifactId>mockito-all</artifactId>
300             <scope>test</scope>
301         </dependency>
302         <dependency>
303             <groupId>org.powermock</groupId>
304             <artifactId>powermock-module-junit4</artifactId>
305             <scope>test</scope>
306         </dependency>
307         <dependency>
308             <groupId>org.powermock</groupId>
309             <artifactId>powermock-api-mockito</artifactId>
310             <scope>test</scope>
311         </dependency>
312         <dependency>
313             <groupId>junit</groupId>
314             <artifactId>junit</artifactId>
315             <scope>test</scope>
316         </dependency>
317
318     </dependencies>
319
320     <modules>
321         <!-- <module>auth-client</module> complile manually with mvn -N independently -->
322         <module>auth-core</module>
323         <module>auth-cass</module>
324         <module>auth-deforg</module>
325
326         <module>auth-service</module>
327         <module>auth-cmd</module>
328         <module>auth-batch</module>
329
330         <module>auth-gui</module>
331         <module>auth-locate</module>
332         <module>auth-oauth</module>
333         <module>auth-certman</module>
334         <module>auth-fs</module>
335         <module>auth-hello</module>
336     </modules>
337
338
339 </project>