3088b20d6e43c7350940a3164f2bcb389ce3a5d9
[aaf/cadi.git] / core / 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                 <relativePath>..</relativePath>\r
28                 <version>1.0.0-SNAPSHOT</version>\r
29         </parent>\r
30         \r
31         <modelVersion>4.0.0</modelVersion>\r
32         <name>CADI Core Framework (Code, Access, Data, Identity)</name>\r
33         <artifactId>cadi-core</artifactId>\r
34         <packaging>jar</packaging>\r
35         <url>https://github.com/att/AAF</url>\r
36         <description>CADI</description>\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>true</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         <dependencies>\r
54 \r
55                 <dependency>\r
56                         <groupId>org.mockito</groupId>\r
57                         <artifactId>mockito-all</artifactId>\r
58                 </dependency>\r
59                 <dependency>\r
60                         <groupId>javax.servlet</groupId>\r
61                         <artifactId>servlet-api</artifactId>\r
62                         <scope>provided</scope>\r
63                 </dependency>\r
64                 \r
65                 <dependency>\r
66                         <groupId>org.slf4j</groupId>\r
67                         <artifactId>slf4j-api</artifactId>\r
68                         <scope>provided</scope>\r
69                 </dependency>\r
70                 \r
71         </dependencies>\r
72         <build>\r
73                 <plugins>\r
74                         <plugin>\r
75                                 <!-- Must put this in to turn on Signing, but Configuration itself is \r
76                                         in Parent -->\r
77                                 <groupId>org.apache.maven.plugins</groupId>\r
78                                 <artifactId>maven-jarsigner-plugin</artifactId>\r
79                         </plugin>\r
80                         <plugin>\r
81                         <groupId>org.apache.maven.plugins</groupId>\r
82                         <artifactId>maven-jar-plugin</artifactId>\r
83                         <configuration>\r
84                                 <archive>\r
85                                         <manifest>\r
86                                                 <mainClass>com.att.cadi.CmdLine</mainClass>\r
87                                         </manifest>\r
88                                         <manifestEntries>\r
89                                                 <Sealed>true</Sealed>\r
90                                         </manifestEntries>\r
91                                 </archive>\r
92                         </configuration>\r
93                         <executions>\r
94                                 <execution>\r
95                                         <id>test-jar</id>\r
96                                         <phase>package</phase>\r
97                                         <goals>\r
98                                                 <goal>test-jar</goal>\r
99                                         </goals>\r
100                                 </execution>\r
101                         </executions>\r
102                 </plugin>\r
103                 \r
104                 <plugin>\r
105                         <groupId>org.apache.maven.plugins</groupId>\r
106                         <artifactId>maven-javadoc-plugin</artifactId>\r
107                         <version>2.10.4</version>\r
108                         <configuration>\r
109                         <failOnError>false</failOnError>\r
110                         </configuration>\r
111                         <executions>\r
112                                 <execution>\r
113                                         <id>attach-javadocs</id>\r
114                                         <goals>\r
115                                                 <goal>jar</goal>\r
116                                         </goals>\r
117                                 </execution>\r
118                         </executions>\r
119                 </plugin> \r
120            \r
121            \r
122                <plugin>\r
123                       <groupId>org.apache.maven.plugins</groupId>\r
124                       <artifactId>maven-source-plugin</artifactId>\r
125                       <version>2.2.1</version>\r
126                       <executions>\r
127                         <execution>\r
128                           <id>attach-sources</id>\r
129                           <goals>\r
130                             <goal>jar-no-fork</goal>\r
131                           </goals>\r
132                         </execution>\r
133                       </executions>\r
134                     </plugin>\r
135   <plugin>\r
136                                 <groupId>org.sonatype.plugins</groupId>\r
137                                 <artifactId>nexus-staging-maven-plugin</artifactId>\r
138                                 <version>1.6.7</version>\r
139                                 <extensions>true</extensions>\r
140                                 <configuration>\r
141                                         <nexusUrl>${nexusproxy}</nexusUrl>\r
142                                         <stagingProfileId>176c31dfe190a</stagingProfileId>\r
143                                         <serverId>ecomp-staging</serverId>\r
144                                 </configuration>\r
145                         </plugin> \r
146                         \r
147                         <plugin>\r
148           <groupId>org.jacoco</groupId>\r
149           <artifactId>jacoco-maven-plugin</artifactId>\r
150           <version>${jacoco.version}</version>\r
151           <configuration>\r
152             <!-- Note: This exclusion list should match <sonar.exclusions>\r
153          property above -->\r
154             <excludes>\r
155               <exclude>**/gen/**</exclude>\r
156               <exclude>**/generated-sources/**</exclude>\r
157               <exclude>**/yang-gen/**</exclude>\r
158               <exclude>**/pax/**</exclude>\r
159             </excludes>\r
160           </configuration>\r
161           <executions>\r
162             <!--\r
163         Prepares the property pointing to the JaCoCo runtime agent which\r
164         is passed as VM argument when Maven the Surefire plugin is executed.\r
165         -->\r
166             <execution>\r
167               <id>pre-unit-test</id>\r
168               <goals>\r
169                 <goal>prepare-agent</goal>\r
170               </goals>\r
171               <configuration>\r
172                 <!-- Sets the path to the file which contains the execution data. -->\r
173                 <destFile>${project.build.directory}/code-coverage/jacoco-ut.exec</destFile>\r
174                 <!--\r
175             Sets the name of the property containing the settings\r
176             for JaCoCo runtime agent.\r
177         -->\r
178                 <propertyName>surefireArgLine</propertyName>\r
179               </configuration>\r
180             </execution>\r
181             <!--\r
182         Ensures that the code coverage report for unit tests is created after\r
183         unit tests have been run.\r
184         -->\r
185             <execution>\r
186               <id>post-unit-test</id>\r
187               <phase>test</phase>\r
188               <goals>\r
189                 <goal>report</goal>\r
190               </goals>\r
191               <configuration>\r
192                 <!-- Sets the path to the file which contains the execution data. -->\r
193                 <dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>\r
194                 <!-- Sets the output directory for the code coverage report. -->\r
195                 <outputDirectory>${project.reporting.outputDirectory}/jacoco-ut</outputDirectory>\r
196               </configuration>\r
197             </execution>\r
198             <execution>\r
199               <id>pre-integration-test</id>\r
200               <phase>pre-integration-test</phase>\r
201               <goals>\r
202                 <goal>prepare-agent</goal>\r
203               </goals>\r
204               <configuration>\r
205                 <!-- Sets the path to the file which contains the execution data. -->\r
206                 <destFile>${project.build.directory}/code-coverage/jacoco-it.exec</destFile>\r
207                 <!--\r
208             Sets the name of the property containing the settings\r
209             for JaCoCo runtime agent.\r
210         -->\r
211                 <propertyName>failsafeArgLine</propertyName>\r
212               </configuration>\r
213             </execution>\r
214             <!--\r
215         Ensures that the code coverage report for integration tests after\r
216         integration tests have been run.\r
217         -->\r
218             <execution>\r
219               <id>post-integration-test</id>\r
220               <phase>post-integration-test</phase>\r
221               <goals>\r
222                 <goal>report</goal>\r
223               </goals>\r
224               <configuration>\r
225                 <!-- Sets the path to the file which contains the execution data. -->\r
226                 <dataFile>${project.build.directory}/code-coverage/jacoco-it.exec</dataFile>\r
227                 <!-- Sets the output directory for the code coverage report. -->\r
228                 <outputDirectory>${project.reporting.outputDirectory}/jacoco-it</outputDirectory>\r
229               </configuration>\r
230             </execution>\r
231           </executions>\r
232         </plugin>                    \r
233 \r
234                 </plugins>\r
235         </build>\r
236         <distributionManagement>\r
237                 <repository>\r
238                         <id>ecomp-releases</id>\r
239                         <name>AAF Release Repository</name>\r
240                         <url>${nexusproxy}${releaseNexusPath}</url>\r
241                 </repository>\r
242                 <snapshotRepository>\r
243                         <id>ecomp-snapshots</id>\r
244                         <name>AAF Snapshot Repository</name>\r
245                         <url>${nexusproxy}${snapshotNexusPath}</url>\r
246                 </snapshotRepository>\r
247                 <site>\r
248                         <id>ecomp-site</id>\r
249                         <url>dav:${nexusproxy}${sitePath}</url>\r
250                 </site>\r
251         </distributionManagement>\r
252 \r
253 </project>\r