7593df69fb7b641f3ada86af1012dbae43f4d03d
[aaf/cadi.git] / aaf / pom.xml
1 <!--\r
2   ============LICENSE_START====================================================\r
3   * org.onap.aaf\r
4   * ===========================================================================\r
5   * Copyright © 2017 AT&T Intellectual Property. All rights reserved.\r
6   * ===========================================================================\r
7   * Licensed under the Apache License, Version 2.0 (the "License");\r
8   * you may not use this file except in compliance with the License.\r
9   * You may obtain a copy of the License at\r
10   * \r
11    *      http://www.apache.org/licenses/LICENSE-2.0\r
12   * \r
13    * Unless required by applicable law or agreed to in writing, software\r
14   * distributed under the License is distributed on an "AS IS" BASIS,\r
15   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
16   * See the License for the specific language governing permissions and\r
17   * limitations under the License.\r
18   * ============LICENSE_END====================================================\r
19   *\r
20   * ECOMP is a trademark and service mark of AT&T Intellectual Property.\r
21   *\r
22 -->\r
23 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">\r
24         <parent>\r
25                 <groupId>org.onap.aaf.cadi</groupId>\r
26                 <artifactId>parent</artifactId>\r
27                 <version>1.0.0-SNAPSHOT</version>\r
28                 <relativePath>..</relativePath>\r
29         </parent>\r
30 \r
31         <modelVersion>4.0.0</modelVersion>\r
32         <name>CADI AAF (Application Authorization Framework) LUR</name>\r
33         <packaging>jar</packaging>\r
34         <url>https://github.com/att/AAF</url>\r
35         <description>CADI</description>\r
36         <artifactId>cadi-aaf</artifactId>\r
37         <properties>\r
38                 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>\r
39                 <project.cadiVersion>1.0.0-SNAPSHOT</project.cadiVersion>\r
40                 <sonar.language>java</sonar.language>\r
41                 <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>\r
42                 <sonar.surefire.reportsPath>${project.build.directory}/surefire-reports</sonar.surefire.reportsPath>\r
43                 <sonar.jacoco.reportPath>${project.build.directory}/coverage-reports/jacoco.exec</sonar.jacoco.reportPath>\r
44                 <sonar.jacoco.itReportPath>${project.build.directory}/coverage-reports/jacoco-it.exec</sonar.jacoco.itReportPath>\r
45                 <sonar.jacoco.reportMissing.force.zero>false</sonar.jacoco.reportMissing.force.zero>\r
46                 <sonar.projectVersion>${project.version}</sonar.projectVersion>\r
47         <nexusproxy>https://nexus.onap.org</nexusproxy>\r
48                 <snapshotNexusPath>/content/repositories/snapshots/</snapshotNexusPath>\r
49                 <releaseNexusPath>/content/repositories/releases/</releaseNexusPath>\r
50                 <stagingNexusPath>/content/repositories/staging/</stagingNexusPath>\r
51                 <sitePath>/content/sites/site/org/onap/aaf/cadi/${project.artifactId}/${project.version}</sitePath>\r
52         </properties>\r
53         \r
54         <dependencies>\r
55                 <dependency>\r
56                         <groupId>org.onap.aaf.authz</groupId>\r
57                         <artifactId>authz-client</artifactId>\r
58                 </dependency> \r
59                 <dependency>\r
60                         <groupId>org.mockito</groupId>\r
61                         <artifactId>mockito-all</artifactId>\r
62                         </dependency>\r
63 \r
64                   <dependency>\r
65                         <groupId>org.onap.aaf.cadi</groupId>\r
66                         <artifactId>cadi-client</artifactId>\r
67                 </dependency> \r
68 \r
69                 <dependency>\r
70                         <groupId>org.onap.aaf.cadi</groupId>\r
71                         <artifactId>cadi-client</artifactId>\r
72                 </dependency>\r
73                 \r
74                 <dependency>\r
75                         <groupId>com.att.aft</groupId>\r
76                         <artifactId>dme2</artifactId>\r
77                         <scope>provided</scope>\r
78                 </dependency>\r
79                 \r
80                 <dependency>\r
81                     <groupId>javax.servlet</groupId>\r
82                     <artifactId>javax.servlet-api</artifactId>\r
83                     <version>3.0.1</version>\r
84                         <scope>provided</scope>\r
85                 </dependency>\r
86 \r
87                 <dependency>\r
88                         <groupId>org.slf4j</groupId>\r
89                     <artifactId>slf4j-log4j12</artifactId>\r
90                     <version>1.7.5</version>\r
91                     <scope>test</scope>\r
92                 </dependency>\r
93 \r
94         </dependencies>\r
95         <build>\r
96                 <plugins> \r
97                         <plugin>\r
98                                 <groupId>org.apache.maven.plugins</groupId>\r
99                                 <artifactId>maven-compiler-plugin</artifactId>\r
100                                 <version>2.3.2</version>\r
101                         </plugin>\r
102                 \r
103                                 <!-- We want to create a Jar with Rosetta built in (since I don't want \r
104                                 a separate deployment at this time Use this one as the jar to put in SWM \r
105                                 packages -->\r
106                         <plugin>\r
107                                 <artifactId>maven-assembly-plugin</artifactId>\r
108                                 <configuration>\r
109                                         <classifier>tests</classifier>\r
110                                         <archive>\r
111                                                 <manifest>\r
112                                                         <mainClass>org.onap.aaf.cadi.cm.CmAgent</mainClass>\r
113                                                 </manifest>\r
114 \r
115                                                 <manifestEntries>\r
116                                                         <Sealed>true</Sealed>\r
117                                                 </manifestEntries>\r
118                                         </archive>\r
119                                 </configuration>\r
120                                 <executions>\r
121                                         <execution>\r
122                                                 <id>full</id>\r
123                                                 <phase>package</phase>\r
124                                                 <goals>\r
125                                                         <goal>single</goal>\r
126                                                 </goals>\r
127                                                 <configuration>\r
128                                                         <descriptors>\r
129                                                                 <descriptor>src/assemble/cadi-aaf.xml</descriptor>\r
130                                                         </descriptors>\r
131                                                 </configuration>\r
132                                         </execution>\r
133                                 </executions>\r
134                         </plugin>\r
135                 <plugin>\r
136                         <groupId>org.apache.maven.plugins</groupId>\r
137                         <artifactId>maven-javadoc-plugin</artifactId>\r
138                         <version>2.10.4</version>\r
139                         <configuration>\r
140                         <failOnError>false</failOnError>\r
141                         </configuration>\r
142                         <executions>\r
143                                 <execution>\r
144                                         <id>attach-javadocs</id>\r
145                                         <goals>\r
146                                                 <goal>jar</goal>\r
147                                         </goals>\r
148                                 </execution>\r
149                         </executions>\r
150                 </plugin> \r
151            \r
152            \r
153                <plugin>\r
154                       <groupId>org.apache.maven.plugins</groupId>\r
155                       <artifactId>maven-source-plugin</artifactId>\r
156                       <version>2.2.1</version>\r
157                       <executions>\r
158                         <execution>\r
159                           <id>attach-sources</id>\r
160                           <goals>\r
161                             <goal>jar-no-fork</goal>\r
162                           </goals>\r
163                         </execution>\r
164                       </executions>\r
165                     </plugin>\r
166         \r
167 \r
168 \r
169                         <plugin>\r
170                                 <!-- Also sign "full" -->\r
171                                 <groupId>org.apache.maven.plugins</groupId>\r
172                                 <artifactId>maven-jarsigner-plugin</artifactId>\r
173                                 <configuration>\r
174                                         <skip>true</skip>\r
175                                 </configuration>\r
176                                 <executions>\r
177                                         <execution>\r
178                                                 <id>sign-full</id>\r
179                                                 <goals>\r
180                                                         <goal>sign</goal>\r
181                                                 </goals>\r
182                                                 <configuration>\r
183                                                         <archive>target/${project.artifactId}-${project.version}-full.jar</archive>\r
184                                                 </configuration>\r
185                                         </execution>\r
186                                         <execution>\r
187                                                 <id>verify-full</id>\r
188                                                 <goals>\r
189                                                         <goal>verify</goal>\r
190                                                 </goals>\r
191                                                 <configuration>\r
192                                                         <archive>target/${project.artifactId}-${project.version}-full.jar</archive>\r
193                                                 </configuration>\r
194                                         </execution>\r
195                                 </executions>\r
196                         </plugin>\r
197                   <plugin>\r
198                                 <groupId>org.sonatype.plugins</groupId>\r
199                                 <artifactId>nexus-staging-maven-plugin</artifactId>\r
200                                 <version>1.6.7</version>\r
201                                 <extensions>true</extensions>\r
202                                 <configuration>\r
203                                         <nexusUrl>${nexusproxy}</nexusUrl>\r
204                                         <stagingProfileId>176c31dfe190a</stagingProfileId>\r
205                                         <serverId>ecomp-staging</serverId>\r
206                                 </configuration>\r
207                         </plugin> \r
208                         \r
209                         <plugin>\r
210           <groupId>org.jacoco</groupId>\r
211           <artifactId>jacoco-maven-plugin</artifactId>\r
212           <version>${jacoco.version}</version>\r
213           <configuration>\r
214             <!-- Note: This exclusion list should match <sonar.exclusions>\r
215          property above -->\r
216             <excludes>\r
217               <exclude>**/gen/**</exclude>\r
218               <exclude>**/generated-sources/**</exclude>\r
219               <exclude>**/yang-gen/**</exclude>\r
220               <exclude>**/pax/**</exclude>\r
221             </excludes>\r
222           </configuration>\r
223           <executions>\r
224             <!--\r
225         Prepares the property pointing to the JaCoCo runtime agent which\r
226         is passed as VM argument when Maven the Surefire plugin is executed.\r
227         -->\r
228             <execution>\r
229               <id>pre-unit-test</id>\r
230               <goals>\r
231                 <goal>prepare-agent</goal>\r
232               </goals>\r
233               <configuration>\r
234                 <!-- Sets the path to the file which contains the execution data. -->\r
235                 <destFile>${project.build.directory}/code-coverage/jacoco-ut.exec</destFile>\r
236                 <!--\r
237             Sets the name of the property containing the settings\r
238             for JaCoCo runtime agent.\r
239         -->\r
240                 <propertyName>surefireArgLine</propertyName>\r
241               </configuration>\r
242             </execution>\r
243             <!--\r
244         Ensures that the code coverage report for unit tests is created after\r
245         unit tests have been run.\r
246         -->\r
247             <execution>\r
248               <id>post-unit-test</id>\r
249               <phase>test</phase>\r
250               <goals>\r
251                 <goal>report</goal>\r
252               </goals>\r
253               <configuration>\r
254                 <!-- Sets the path to the file which contains the execution data. -->\r
255                 <dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>\r
256                 <!-- Sets the output directory for the code coverage report. -->\r
257                 <outputDirectory>${project.reporting.outputDirectory}/jacoco-ut</outputDirectory>\r
258               </configuration>\r
259             </execution>\r
260             <execution>\r
261               <id>pre-integration-test</id>\r
262               <phase>pre-integration-test</phase>\r
263               <goals>\r
264                 <goal>prepare-agent</goal>\r
265               </goals>\r
266               <configuration>\r
267                 <!-- Sets the path to the file which contains the execution data. -->\r
268                 <destFile>${project.build.directory}/code-coverage/jacoco-it.exec</destFile>\r
269                 <!--\r
270             Sets the name of the property containing the settings\r
271             for JaCoCo runtime agent.\r
272         -->\r
273                 <propertyName>failsafeArgLine</propertyName>\r
274               </configuration>\r
275             </execution>\r
276             <!--\r
277         Ensures that the code coverage report for integration tests after\r
278         integration tests have been run.\r
279         -->\r
280             <execution>\r
281               <id>post-integration-test</id>\r
282               <phase>post-integration-test</phase>\r
283               <goals>\r
284                 <goal>report</goal>\r
285               </goals>\r
286               <configuration>\r
287                 <!-- Sets the path to the file which contains the execution data. -->\r
288                 <dataFile>${project.build.directory}/code-coverage/jacoco-it.exec</dataFile>\r
289                 <!-- Sets the output directory for the code coverage report. -->\r
290                 <outputDirectory>${project.reporting.outputDirectory}/jacoco-it</outputDirectory>\r
291               </configuration>\r
292             </execution>\r
293           </executions>\r
294         </plugin>                    \r
295 \r
296                 </plugins>\r
297         </build>\r
298                 <distributionManagement>\r
299                 <repository>\r
300                         <id>ecomp-releases</id>\r
301                         <name>AAF Release Repository</name>\r
302                         <url>${nexusproxy}${releaseNexusPath}</url>\r
303                 </repository>\r
304                 <snapshotRepository>\r
305                         <id>ecomp-snapshots</id>\r
306                         <name>AAF Snapshot Repository</name>\r
307                         <url>${nexusproxy}${snapshotNexusPath}</url>\r
308                 </snapshotRepository>\r
309                 <site>\r
310                         <id>ecomp-site</id>\r
311                         <url>dav:${nexusproxy}${sitePath}</url>\r
312                 </site>\r
313         </distributionManagement>\r
314 \r
315 </project>\r