Remove staging plugin
[ccsdk/parent.git] / odlparent / binding-parent / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <project xmlns="http://maven.apache.org/POM/4.0.0"
3         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
5
6         <!-- PLEASE READ !!!!! This file is generated from ccsdk/parent/setup/src/main/template/pom-template.xml 
7                 Any updates needed should be made to that template and not to the generated 
8                 pom.xml file -->
9
10         <modelVersion>4.0.0</modelVersion>
11         <packaging>pom</packaging>
12         <groupId>org.onap.ccsdk.parent</groupId>
13         <artifactId>binding-parent</artifactId>
14         <version>1.3.1-SNAPSHOT</version>
15
16         <parent>
17                 <groupId>org.opendaylight.mdsal</groupId>
18                 <artifactId>binding-parent</artifactId>
19                 <version>0.13.2</version>
20                 <relativePath />
21         </parent>
22
23
24         <name>ONAP :: ${project.groupId} :: ${project.artifactId}</name>
25         <url>http://wiki.onap.org</url>
26         <description>Root POM to be used in place of odlparent for CCSDK based projects</description>
27
28
29         <issueManagement>
30                 <system>JIRA</system>
31                 <url>https://jira.onap.org/</url>
32         </issueManagement>
33
34         <properties>
35
36                 <!-- properties from oparent -->
37                 <maven.compiler.source>1.8</maven.compiler.source>
38                 <maven.compiler.target>1.8</maven.compiler.target>
39                 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
40                 <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
41                 <onap.nexus.url>https://nexus.onap.org</onap.nexus.url>
42                 <!-- sitePath may be overridden in the inheriting POM if desired -->
43                 <sitePath>/content/sites/site/${project.groupId}/${project.artifactId}/${project.version}</sitePath>
44                 <jacoco.version>0.7.7.201606060606</jacoco.version>
45                 <sonar-jacoco-listeners.version>3.2</sonar-jacoco-listeners.version>
46                 <sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
47                 <!-- Default Sonar configuration -->
48                 <sonar.jacoco.reportPaths>target/code-coverage/jacoco-ut.exec,target/code-coverage/jacoco-it.exec</sonar.jacoco.reportPaths>
49                 <!-- Note: This list should match jacoco-maven-plugin's exclusion list 
50                         below -->
51                 <sonar.exclusions>**/gen/**,**/generated-sources/**,**/yang-gen**,**/pax/**</sonar.exclusions>
52                 <!-- If following file exist, auto-generation of swagger.json will be done -->
53                 <swagger-properties>${basedir}/src/main/resources/swagger.properties</swagger-properties>
54                 <!-- If following file exist, auto-generation of sdk will be done -->
55                 <swagger-json>${basedir}/src/main/resources/swagger.json</swagger-json>
56                 <!-- end of properties from oparent -->
57
58                 <!-- ONAP repositories -->
59                 <onap.nexus.host>nexus.onap.org</onap.nexus.host>
60                 <onap.nexus.port>443</onap.nexus.port>
61                 <onap.nexus.protocol>https</onap.nexus.protocol>
62                 <onap.nexus.public-url>https://nexus.onap.org/content/groups/public</onap.nexus.public-url>
63                 <onap.nexus.staging-url>https://nexus.onap.org/content/groups/staging</onap.nexus.staging-url>
64                 <onap.nexus.release-url>https://nexus.onap.org/content/repositories/releases</onap.nexus.release-url>
65                 <onap.nexus.snapshot-url>https://nexus.onap.org/content/repositories/snapshots</onap.nexus.snapshot-url>
66                 <onap.nexus.staging.server-id>ecomp-staging</onap.nexus.staging.server-id>
67                 <onap.nexus.staging.profile-id>176c31dfe190a</onap.nexus.staging.profile-id>
68
69
70                 <!-- OpenDaylight repositories -->
71                 <opendaylight.nexus.public-url>https://nexus.opendaylight.org/content/repositories/public/</opendaylight.nexus.public-url>
72                 <opendaylight.nexus.snapshot-url>https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/</opendaylight.nexus.snapshot-url>
73
74
75                 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
76                 <java.version.source>1.8</java.version.source>
77                 <java.version.target>1.8</java.version.target>
78                 <bundle.plugin.version>2.5.0</bundle.plugin.version>
79                 <maven.compile.plugin.version>2.5.1</maven.compile.plugin.version>
80                 <features.file>features.xml</features.file>
81                 <jmxGeneratorPath>src/main/yang-gen-config</jmxGeneratorPath>
82                 <salGeneratorPath>src/main/yang-gen-sal</salGeneratorPath>
83                 <checkstyle.skip>true</checkstyle.skip>
84
85
86                 <sonar.language>java</sonar.language>
87                 <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
88                 <sonar.surefire.reportsPath>${project.build.directory}/surefire-reports</sonar.surefire.reportsPath>
89                 <sonar.jacoco.reportMissing.force.zero>true</sonar.jacoco.reportMissing.force.zero>
90                 <sonar.projectVersion>${project.version}</sonar.projectVersion>
91
92
93
94
95                 <!-- CCSDK component versions -->
96                 <ccsdk.sli.core.version>0.5.0-SNAPSHOT</ccsdk.sli.core.version>
97                 <ccsdk.sli.adaptors.version>0.5.0-SNAPSHOT</ccsdk.sli.adaptors.version>
98                 <ccsdk.sli.northbound.version>0.5.0-SNAPSHOT</ccsdk.sli.northbound.version>
99                 <ccsdk.sli.plugins.version>0.5.0-SNAPSHOT</ccsdk.sli.plugins.version>
100                 <ccsdk.distribution.version>0.5.0-SNAPSHOT</ccsdk.distribution.version>
101                 <sdnctl.sli.version>${ccsdk.sli.core.version}</sdnctl.sli.version>
102                 <sdnctl.aai.service.version>${ccsdk.sli.adaptors.version}</sdnctl.aai.service.version>
103                 <sdnctl.dblib.version>${ccsdk.sli.core.version}</sdnctl.dblib.version>
104                 <sdnctl.mdsal.resource.version>${ccsdk.sli.adaptors.version}</sdnctl.mdsal.resource.version>
105                 <sdnctl.slipluginutils.version>${ccsdk.sli.core.version}</sdnctl.slipluginutils.version>
106
107
108                 <!-- Support libraries used by OpenDaylight -->
109                 <odl.controller.mdsal.version>1.8.2</odl.controller.mdsal.version>
110                 <odl.mdsal.version>2.5.2</odl.mdsal.version>
111                 <odl.mdsal.model.version>0.13.2</odl.mdsal.model.version>
112                 <odl.netconf.restconf.version>1.8.2</odl.netconf.restconf.version>
113                 <odl.netconf.netconf.version>1.5.2</odl.netconf.netconf.version>
114                 <odl.netconf.sal.rest.docgen.version>1.8.2</odl.netconf.sal.rest.docgen.version>
115                 <!-- Used by aaa, vtn -->
116                 <commons.codec.version>1.11</commons.codec.version>
117                 <!-- Used by netconf, ovsdb -->
118                 <commons.lang3.version>3.7</commons.lang3.version>
119                 <!-- Used by sfc, snmp4sdn; see also affinity, toolkit -->
120                 <commons.lang.version>2.6</commons.lang.version>
121                 <!-- Used by neutron; see also controller, vtn -->
122                 <commons.net.version>3.6</commons.net.version>
123                 <!-- Used by neutron -->
124                 <eclipse.persistence.version>2.7.1</eclipse.persistence.version>
125                 <!-- Used by aaa -->
126                 <felix.dependencymanager.version>4.4.1</felix.dependencymanager.version>
127                 <!-- Used by lacp, netconf, ovsdb, sfc, toolkit; see also vtn -->
128                 <gson.version>2.8.5</gson.version>
129                 <!-- Used by aaa, dlux, persistence, snmp4sdn, sxp -->
130                 <guava.version>23.6.1-jre</guava.version>
131                 <!-- Used by lispflowmapping, sxp, vtn/manager -->
132                 <hamcrest.version>1.3.1</hamcrest.version>
133                 <!-- Used by aaa, alto, netconf, ovsdb, sfc; see also affinity, defense4all, 
134                         integration/distribution, snmp4sdn, toolkit, ttp -->
135                 <jackson.version>2.8.11</jackson.version>
136                 <jackson.bom.version>2.8.11.20181123</jackson.bom.version>
137                 <!-- Used by snmp4sdn, yangtools -->
138                 <javassist.version>3.24.0-GA</javassist.version>
139
140                 <!-- FIXME remove all dependencies for jersey 1.17 after migration all 
141                         projects -->
142                 <!-- Used by aaa, alto, netconf, neutron, sfc; see also affinity, defense4all, 
143                         snmp4sdn, toolkit -->
144                 <jersey.version>2.25.1</jersey.version>
145                 <!-- Used by sfc -->
146                 <jersey.client.version>2.25.1</jersey.client.version>
147
148                 <!-- New packages for jersey migration 1.17 to 2.8 -->
149                 <!-- appache.geronimo.bundle for DocGen -->
150                 <!-- Used by aaa, iotdm, netconf, ovsdb, sfc -->
151                 <org.json.version>20131018</org.json.version>
152
153                 <!-- Used by sfc -->
154                 <jettison.version>1.3.8</jettison.version>
155                 <!-- Used by persistence -->
156                 <jsr305.api.version>3.0.0</jsr305.api.version>
157                 <!-- Need to stick to JUnit 4.11 until https://github.com/jayway/powermock/issues/560 
158                         is fixed (either in PowerMock or with a new JUnit release) -->
159                 <!-- Used everywhere -->
160                 <junit.version>4.12</junit.version>
161                 <!-- Used by coretutorials, sfc, snmp4sdn, sxp; see also affinity, toolkit -->
162                 <logback.version>1.2.3</logback.version>
163                 <!-- Used by nic, sfc, sxp, tsdr -->
164                 <mockito.version>1.10.19</mockito.version>
165                 <!-- Used by bgpcep, netconf, ovsdb, sxp; see also opendove, toolkit -->
166                 <netty.version>4.1.31.Final</netty.version>
167                 <!-- Used by openflowjava, persistence, sfc, snmp4sdn, sxp; see also affinity, 
168                         toolkit -->
169                 <slf4j.version>1.7.25</slf4j.version>
170                 <!-- Used in integration/distribution; see also affinity, snmp4sdn, toolkit, 
171                         tsdr, ttp -->
172                 <spring.version>4.3.18.RELEASE</spring.version>
173
174
175
176                 <!-- Extra support libraries used by SDN-C -->
177                 <equinox.osgi.version>3.8.1.v20120830-144521</equinox.osgi.version>
178                 <jackson-annotations-version>${jackson.version}</jackson-annotations-version>
179                 <jvnet.jaxb2.version>0.6.4</jvnet.jaxb2.version>
180                 <antlr.version>4.7.1</antlr.version>
181                 <mysql.connector.version>5.1.39</mysql.connector.version>
182
183                 <eelf.maven.plugin.version>1.0.0</eelf.maven.plugin.version>
184
185
186                 <!-- Managed dependency versions -->
187                 <apache.httpcomponents.core.version>4.4.4</apache.httpcomponents.core.version>
188                 <apache.httpcomponents.client.version>4.5.2</apache.httpcomponents.client.version>
189                 <derby.version>10.14.2.0</derby.version>
190                 <eelf.version>1.0.0</eelf.version>
191                 <grpc.version>1.17.1</grpc.version>
192                 <jackson.bom.version>2.8.11.20181123</jackson.bom.version>
193                 <jersey.version>2.25.1</jersey.version>
194                 <junit.version>4.12</junit.version>
195                 <logback.version>1.2.3</logback.version>
196                 <mariadb.connector.version>2.1.1</mariadb.connector.version>
197                 <mariadb4j.version>2.2.3</mariadb4j.version>
198                 <spring.version>4.3.18.RELEASE</spring.version>
199                 <slf4j.version>1.7.25</slf4j.version>
200                 <testng.version>6.11</testng.version>
201                 <tomcat-jdbc.version>8.5.14</tomcat-jdbc.version>
202                 <skip.karaf.featureTest>true</skip.karaf.featureTest>
203         </properties>
204
205         <profiles>
206                 <!-- Profiles from ONAP oparent -->
207                 <profile>
208                         <id>generate-json</id>
209                         <activation>
210                                 <file>
211                                         <exists>${swagger-properties}</exists>
212                                 </file>
213                                 <property>
214                                         <name>swagger-sdk.generate-json</name>
215                                 </property>
216                         </activation>
217                         <build>
218                                 <plugins>
219                                         <plugin>
220                                                 <groupId>org.codehaus.mojo</groupId>
221                                                 <artifactId>properties-maven-plugin</artifactId>
222                                                 <version>1.0.0</version>
223                                                 <executions>
224                                                         <execution>
225                                                                 <phase>initialize</phase>
226                                                                 <goals>
227                                                                         <goal>read-project-properties</goal>
228                                                                 </goals>
229                                                                 <configuration>
230                                                                         <files>
231                                                                                 <file>${basedir}/src/main/resources/swagger.properties</file>
232                                                                         </files>
233                                                                 </configuration>
234                                                         </execution>
235                                                 </executions>
236                                         </plugin>
237                                         <plugin>
238                                                 <groupId>com.github.kongchen</groupId>
239                                                 <artifactId>swagger-maven-plugin</artifactId>
240                                                 <version>3.1.4</version>
241                                                 <configuration>
242                                                         <apiSources>
243                                                                 <apiSource>
244                                                                         <locations>${api-rest-package}</locations>
245                                                                         <schemes>http,https</schemes>
246                                                                         <host>${api-host-ip}:${api-host-port}</host>
247                                                                         <basePath>${api-base-path}</basePath>
248                                                                         <info>
249                                                                                 <title>${api-title}</title>
250                                                                                 <version>${api-version}</version>
251                                                                                 <description>${api-description}</description>
252                                                                                 <license>
253                                                                                         <name>${api-license}</name>
254                                                                                 </license>
255                                                                         </info>
256                                                                         <swaggerDirectory>${basedir}/src/main/resources</swaggerDirectory>
257                                                                 </apiSource>
258                                                         </apiSources>
259                                                 </configuration>
260                                                 <executions>
261                                                         <execution>
262                                                                 <phase>compile</phase>
263                                                                 <goals>
264                                                                         <goal>generate</goal>
265                                                                 </goals>
266                                                         </execution>
267                                                 </executions>
268                                         </plugin>
269                                         <plugin>
270                                                 <groupId>org.apache.maven.plugins</groupId>
271                                                 <artifactId>maven-install-plugin</artifactId>
272                                                 <version>2.3.1</version>
273                                                 <executions>
274                                                         <execution>
275                                                                 <id>install-file-id</id>
276                                                                 <phase>install</phase>
277                                                                 <goals>
278                                                                         <goal>install-file</goal>
279                                                                 </goals>
280                                                                 <configuration>
281                                                                         <file>${basedir}/src/main/resources/swagger.json</file>
282                                                                         <groupId>${project.groupId}</groupId>
283                                                                         <artifactId>${project.artifactId}-swagger-schema</artifactId>
284                                                                         <version>${project.version}</version>
285                                                                         <packaging>json</packaging>
286                                                                 </configuration>
287                                                         </execution>
288                                                 </executions>
289                                         </plugin>
290                                 </plugins>
291                         </build>
292                 </profile>
293                 <profile>
294                         <id>generate-sdk</id>
295                         <activation>
296                                 <file>
297                                         <exists>${swagger-json}</exists>
298                                 </file>
299                                 <property>
300                                         <name>swagger-sdk.generate-java-sdk</name>
301                                 </property>
302                         </activation>
303                         <build>
304                                 <plugins>
305                                         <plugin>
306                                                 <groupId>org.apache.maven.plugins</groupId>
307                                                 <artifactId>maven-antrun-plugin</artifactId>
308                                                 <version>1.8</version>
309                                                 <executions>
310                                                         <execution>
311                                                                 <phase>initialize</phase>
312                                                                 <id>ant-create-script</id>
313                                                                 <configuration>
314                                                                         <exportAntProperties>true</exportAntProperties>
315                                                                         <tasks>
316                                                                                 <taskdef resource="net/sf/antcontrib/antlib.xml"
317                                                                                         classpathref="maven.plugin.classpath" />
318                                                                                 <condition property="is_windows" value="true">
319                                                                                         <os family="windows" />
320                                                                                 </condition>
321                                                                                 <condition property="isLinux" value="true">
322                                                                                         <os family="unix" />
323                                                                                 </condition>
324                                                                                 <if>
325                                                                                         <equals arg1="${is_windows}" arg2="true" />
326                                                                                         <then>
327                                                                                                 <property name="swagger.sdk.script.file"
328                                                                                                         value="generated-source-script.bat" />
329                                                                                                 <echo
330                                                                                                         file="${project.build.directory}${file.separator}generated-source-script.bat"
331                                                                                                         append="true"
332                                                                                                         message="cd ${project.build.directory}${file.separator}generated-sources${line.separator}" />
333                                                                                                 <echo
334                                                                                                         file="${project.build.directory}${file.separator}generated-source-script.bat"
335                                                                                                         append="true"
336                                                                                                         message="mvn clean install -Dmaven.test.skip=true${line.separator}" />
337                                                                                         </then>
338                                                                                         <else>
339                                                                                                 <property name="swagger.sdk.script.file"
340                                                                                                         value="generated-source-script.sh" />
341                                                                                                 <echo
342                                                                                                         file="${project.build.directory}${file.separator}generated-source-script.sh"
343                                                                                                         append="true"
344                                                                                                         message="cd ${project.build.directory}${file.separator}generated-sources${line.separator}" />
345                                                                                                 <echo
346                                                                                                         file="${project.build.directory}${file.separator}generated-source-script.sh"
347                                                                                                         append="true"
348                                                                                                         message="mvn clean install -Dmaven.test.skip=true${line.separator}" />
349                                                                                                 <chmod
350                                                                                                         file="${project.build.directory}${file.separator}generated-source-script.sh"
351                                                                                                         perm="755" />
352                                                                                         </else>
353                                                                                 </if>
354                                                                         </tasks>
355                                                                 </configuration>
356                                                                 <goals>
357                                                                         <goal>run</goal>
358                                                                 </goals>
359                                                         </execution>
360                                                 </executions>
361                                                 <dependencies>
362                                                         <dependency>
363                                                                 <groupId>ant-contrib</groupId>
364                                                                 <artifactId>ant-contrib</artifactId>
365                                                                 <version>1.0b3</version>
366                                                                 <exclusions>
367                                                                         <exclusion>
368                                                                                 <artifactId>ant</artifactId>
369                                                                                 <groupId>ant</groupId>
370                                                                         </exclusion>
371                                                                 </exclusions>
372                                                         </dependency>
373                                                 </dependencies>
374                                         </plugin>
375                                         <plugin>
376                                                 <groupId>io.swagger</groupId>
377                                                 <artifactId>swagger-codegen-maven-plugin</artifactId>
378                                                 <version>2.2.1</version>
379                                                 <executions>
380                                                         <execution>
381                                                                 <goals>
382                                                                         <goal>generate</goal>
383                                                                 </goals>
384                                                                 <configuration>
385                                                                         <inputSpec>${basedir}/src/main/resources/swagger.json</inputSpec>
386                                                                         <output>${project.build.directory}/generated-sources</output>
387                                                                         <language>java</language>
388                                                                         <configOptions>
389                                                                                 <dateLibrary>joda</dateLibrary>
390                                                                         </configOptions>
391                                                                         <library>jersey2</library>
392                                                                         <groupId>${project.groupId}</groupId>
393                                                                         <artifactId>${project.artifactId}-java-sdk</artifactId>
394                                                                         <artifactVersion>${project.version}</artifactVersion>
395                                                                         <modelPackage>${project.groupId}.${project.artifactId}.client.model</modelPackage>
396                                                                         <apiPackage>${project.groupId}.${project.artifactId}.client.api</apiPackage>
397                                                                         <invokerPackage>${project.groupId}.${project.artifactId}.client.invoker</invokerPackage>
398                                                                 </configuration>
399                                                         </execution>
400                                                 </executions>
401                                         </plugin>
402                                         <plugin>
403                                                 <artifactId>exec-maven-plugin</artifactId>
404                                                 <groupId>org.codehaus.mojo</groupId>
405                                                 <version>1.5.0</version>
406                                                 <executions>
407                                                         <execution>
408                                                                 <id>swagger-generate-sources</id>
409                                                                 <phase>generate-sources</phase>
410                                                                 <goals>
411                                                                         <goal>exec</goal>
412                                                                 </goals>
413                                                                 <configuration>
414                                                                         <executable>${project.build.directory}${file.separator}${swagger.sdk.script.file}</executable>
415                                                                 </configuration>
416                                                         </execution>
417                                                 </executions>
418                                         </plugin>
419                                         <plugin>
420                                                 <groupId>org.apache.maven.plugins</groupId>
421                                                 <artifactId>maven-clean-plugin</artifactId>
422                                                 <version>3.0.0</version>
423                                                 <executions>
424                                                         <execution>
425                                                                 <id>clean-generated-files</id>
426                                                                 <phase>generate-sources</phase>
427                                                                 <goals>
428                                                                         <goal>clean</goal>
429                                                                 </goals>
430                                                                 <configuration>
431                                                                         <filesets>
432                                                                                 <fileset>
433                                                                                         <directory>${project.build.directory}/generated-sources</directory>
434                                                                                 </fileset>
435                                                                         </filesets>
436                                                                 </configuration>
437                                                         </execution>
438                                                 </executions>
439                                         </plugin>
440                                 </plugins>
441                         </build>
442                         <dependencies>
443                                 <dependency>
444                                         <groupId>org.onap.msb.swagger-sdk</groupId>
445                                         <artifactId>swagger-sdk</artifactId>
446                                         <version>1.0.0</version>
447                                 </dependency>
448                         </dependencies>
449                 </profile>
450
451                 <!-- End of profiles from ONAP oparent -->
452
453                 <profile>
454                         <id>yang-compile</id>
455                         <activation>
456                                 <file>
457                                         <exists>src/main/yang</exists>
458                                 </file>
459                         </activation>
460                         <build>
461                                 <plugins>
462                                         <plugin>
463                                                 <groupId>org.opendaylight.yangtools</groupId>
464                                                 <artifactId>yang-maven-plugin</artifactId>
465                                                 <version>2.1.8</version>
466                                                 <dependencies>
467                                                         <dependency>
468                                                                 <groupId>org.opendaylight.mdsal</groupId>
469                                                                 <artifactId>maven-sal-api-gen-plugin</artifactId>
470                                                                 <version>${odl.mdsal.model.version}</version>
471                                                                 <type>jar</type>
472                                                         </dependency>
473                                                         <dependency>
474                                                                 <groupId>org.opendaylight.netconf</groupId>
475                                                                 <artifactId>sal-rest-docgen-maven</artifactId>
476                                                                 <version>${odl.netconf.sal.rest.docgen.version}</version>
477                                                                 <type>jar</type>
478                                                         </dependency>
479                                                 </dependencies>
480                                                 <executions>
481                                                         <execution>
482                                                                 <goals>
483                                                                         <goal>generate-sources</goal>
484                                                                 </goals>
485                                                                 <configuration>
486                                                                         <yangFilesRootDir>${yang.file.directory}</yangFilesRootDir>
487                                                                         <codeGenerators>
488                                                                                 <generator>
489                                                                                         <codeGeneratorClass>org.opendaylight.mdsal.binding.maven.api.gen.plugin.CodeGeneratorImpl</codeGeneratorClass>
490                                                                                         <outputBaseDir>${salGeneratorPath}</outputBaseDir>
491                                                                                 </generator>
492                                                                                 <generator>
493                                                                                         <codeGeneratorClass>org.opendaylight.netconf.sal.rest.doc.maven.StaticDocGenerator</codeGeneratorClass>
494                                                                                         <outputBaseDir>target/swagger</outputBaseDir>
495                                                                                 </generator>
496                                                                         </codeGenerators>
497                                                                         <inspectDependencies>true</inspectDependencies>
498                                                                 </configuration>
499                                                         </execution>
500                                                 </executions>
501                                         </plugin>
502                                 </plugins>
503                         </build>
504                 </profile>
505
506         </profiles>
507
508
509         <dependencyManagement>
510                 <dependencies>
511
512                         <!-- Note: If value in BOM conflicts with value inherited from
513                         parent pom, inherited value takes precedence.  This seems more like
514                         a bug than a feature, but this is how maven 3.6 works -->
515                         <dependency>
516                                 <groupId>org.onap.ccsdk.parent</groupId>
517                                 <artifactId>dependencies-odl-bom</artifactId>
518                                 <version>1.3.1-SNAPSHOT</version>
519                                 <type>pom</type>
520                                 <scope>import</scope>
521                         </dependency>
522
523                         <!-- Override versions in ODL parent poms -->
524                         <dependency>
525                                 <groupId>junit</groupId>
526                                 <artifactId>junit</artifactId>
527                                 <version>4.12</version>
528                                 <scope>test</scope>
529                         </dependency>
530
531                         <dependency>
532                                 <groupId>com.google.protobuf</groupId>
533                                 <artifactId>protobuf-java</artifactId>
534                                 <version>3.6.1</version>
535                         </dependency>
536                 </dependencies>
537
538         </dependencyManagement>
539
540         <pluginRepositories>
541                 <pluginRepository>
542                         <id>onap-public</id>
543                         <url>${onap.nexus.public-url}</url>
544                         <releases>
545                                 <enabled>true</enabled>
546                         </releases>
547                         <snapshots>
548                                 <enabled>true</enabled>
549                         </snapshots>
550                 </pluginRepository>
551                 <pluginRepository>
552                         <id>onap-staging</id>
553                         <url>${onap.nexus.staging-url}</url>
554                         <releases>
555                                 <enabled>true</enabled>
556                         </releases>
557                         <snapshots>
558                                 <enabled>true</enabled>
559                         </snapshots>
560                 </pluginRepository>
561                 <pluginRepository>
562                         <id>onap-snapshot</id>
563                         <url>${onap.nexus.snapshot-url}</url>
564                         <releases>
565                                 <enabled>false</enabled>
566                         </releases>
567                         <snapshots>
568                                 <enabled>true</enabled>
569                         </snapshots>
570                 </pluginRepository>
571                 <pluginRepository>
572                         <id>opendaylight-mirror</id>
573                         <name>opendaylight-mirror</name>
574                         <url>${opendaylight.nexus.public-url}</url>
575                         <releases>
576                                 <enabled>true</enabled>
577                                 <updatePolicy>never</updatePolicy>
578                         </releases>
579                         <snapshots>
580                                 <enabled>false</enabled>
581                         </snapshots>
582                 </pluginRepository>
583                 <pluginRepository>
584                         <id>opendaylight-snapshot</id>
585                         <name>opendaylight-snapshot</name>
586                         <url>${opendaylight.nexus.snapshot-url}</url>
587                         <releases>
588                                 <enabled>false</enabled>
589                         </releases>
590                         <snapshots>
591                                 <enabled>true</enabled>
592                         </snapshots>
593                 </pluginRepository>
594                 <!-- Black Duck plugin dependencies -->
595                 <pluginRepository>
596                         <id>JCenter</id>
597                         <name>JCenter Repository</name>
598                         <url>http://jcenter.bintray.com</url>
599                 </pluginRepository>
600
601                 <pluginRepository>
602                         <id>Restlet</id>
603                         <name>Restlet Repository</name>
604                         <url>http://maven.restlet.com</url>
605                 </pluginRepository>
606         </pluginRepositories>
607
608
609         <repositories>
610                 <repository>
611                         <id>onap-public</id>
612                         <url>https://nexus.onap.org/content/groups/public</url>
613                         <releases>
614                                 <enabled>true</enabled>
615                                 <updatePolicy>never</updatePolicy>
616                         </releases>
617                         <snapshots>
618                                 <enabled>true</enabled>
619                                 <updatePolicy>always</updatePolicy>
620                         </snapshots>
621                 </repository>
622                 <repository>
623                         <id>onap-staging</id>
624                         <url>https://nexus.onap.org/content/groups/staging</url>
625                         <releases>
626                                 <enabled>true</enabled>
627                                 <updatePolicy>never</updatePolicy>
628                         </releases>
629                         <snapshots>
630                                 <enabled>true</enabled>
631                                 <updatePolicy>always</updatePolicy>
632                         </snapshots>
633                 </repository>
634                 <repository>
635                         <id>ecomp-release</id>
636                         <name>onap-repository-releases</name>
637                         <url>https://nexus.onap.org/content/repositories/releases</url>
638                         <releases>
639                                 <enabled>true</enabled>
640                                 <updatePolicy>never</updatePolicy>
641                         </releases>
642                         <snapshots>
643                                 <enabled>false</enabled>
644                         </snapshots>
645                 </repository>
646                 <repository>
647                         <id>ecomp-snapshot</id>
648                         <name>onap-repository-snapshots</name>
649                         <url>https://nexus.onap.org/content/repositories/snapshots</url>
650                         <releases>
651                                 <enabled>false</enabled>
652                         </releases>
653                         <snapshots>
654                                 <enabled>true</enabled>
655                         </snapshots>
656                 </repository>
657                 <repository>
658                         <id>opendaylight-mirror</id>
659                         <name>opendaylight-mirror</name>
660                         <url>https://nexus.opendaylight.org/content/repositories/public/</url>
661                         <releases>
662                                 <enabled>true</enabled>
663                                 <updatePolicy>never</updatePolicy>
664                         </releases>
665                         <snapshots>
666                                 <enabled>false</enabled>
667                         </snapshots>
668                 </repository>
669                 <repository>
670                         <id>opendaylight-snapshot</id>
671                         <name>opendaylight-snapshot</name>
672                         <url>https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/</url>
673                         <releases>
674                                 <enabled>false</enabled>
675                         </releases>
676                         <snapshots>
677                                 <enabled>true</enabled>
678                         </snapshots>
679                 </repository>
680
681         </repositories>
682
683         <distributionManagement>
684                 <repository>
685                         <id>ecomp-releases</id>
686                         <url>https://nexus.onap.org/content/repositories/releases</url>
687                 </repository>
688                 <snapshotRepository>
689                         <id>ecomp-snapshots</id>
690                         <url>https://nexus.onap.org/content/repositories/snapshots</url>
691                 </snapshotRepository>
692         </distributionManagement>
693
694         <build>
695                 <pluginManagement>
696                         <plugins>
697
698                                 <!-- Plugins from ONAP version (parent of oparent) -->
699
700                                 <plugin>
701                                         <groupId>org.apache.maven.plugins</groupId>
702                                         <artifactId>maven-deploy-plugin</artifactId>
703                                         <!-- This version supports the "deployAtEnd" parameter -->
704                                         <version>2.8</version>
705                                         <configuration>
706                                                 <skip />
707                                         </configuration>
708                                 </plugin>
709                                 <plugin>
710                                         <groupId>org.apache.maven.plugins</groupId>
711                                         <artifactId>maven-site-plugin</artifactId>
712                                         <version>3.6</version>
713                                         <dependencies>
714                                                 <dependency>
715                                                         <groupId>org.apache.maven.wagon</groupId>
716                                                         <artifactId>wagon-webdav-jackrabbit</artifactId>
717                                                         <version>2.10</version>
718                                                 </dependency>
719                                         </dependencies>
720                                 </plugin>
721                                 <plugin>
722                                         <groupId>org.apache.maven.plugins</groupId>
723                                         <artifactId>maven-enforcer-plugin</artifactId>
724                                         <version>3.0.0-M2</version>
725                                         <executions>
726                                                 <execution>
727                                                         <id>enforce-property</id>
728                                                         <goals>
729                                                                 <goal>enforce</goal>
730                                                         </goals>
731                                                         <configuration>
732                                                                 <rules>
733                                                                         <requireProperty>
734                                                                                 <property>onap.nexus.url</property>
735                                                                                 <message>You must set a onap.nexus.url property in your
736                                                                                         ~/.m2/settings.xml. See oparent/settings.xml for an example.</message>
737                                                                         </requireProperty>
738                                                                 </rules>
739                                                                 <fail>true</fail>
740                                                         </configuration>
741                                                 </execution>
742                                                 <execution>
743                                                         <id>enforce-no-snapshots</id>
744                                                         <goals>
745                                                                 <goal>enforce</goal>
746                                                         </goals>
747                                                         <configuration>
748                                                                 <rules>
749                                                                         <requireReleaseDeps>
750                                                                                 <failWhenParentIsSnapshot>false</failWhenParentIsSnapshot>
751                                                                                 <onlyWhenRelease>true</onlyWhenRelease>
752                                                                                 <level>WARN</level>
753                                                                         </requireReleaseDeps>
754                                                                 </rules>
755                                                         </configuration>
756                                                 </execution>
757                                         </executions>
758                                 </plugin>
759                                 <!-- https://mvnrepository.com/artifact/org.sonarsource.scanner.maven/sonar-maven-plugin -->
760                                 <plugin>
761                                         <groupId>org.sonarsource.scanner.maven</groupId>
762                                         <artifactId>sonar-maven-plugin</artifactId>
763                                         <version>3.2</version>
764                                 </plugin>
765                                 <!-- end of plugins from ONAP version (parent of oparent) -->
766
767                                 <!-- Plugins from ONAP oparent -->
768
769                                 <plugin>
770                                         <groupId>org.jacoco</groupId>
771                                         <artifactId>jacoco-maven-plugin</artifactId>
772                                         <version>${jacoco.version}</version>
773                                         <configuration>
774                                                 <!-- Note: This exclusion list should match <sonar.exclusions> property 
775                                                         above -->
776                                                 <excludes>
777                                                         <exclude>**/gen/**</exclude>
778                                                         <exclude>**/generated-sources/**</exclude>
779                                                         <exclude>**/yang-gen/**</exclude>
780                                                         <exclude>**/pax/**</exclude>
781                                                 </excludes>
782                                         </configuration>
783                                         <executions>
784                                                 <!-- Prepares the property pointing to the JaCoCo runtime agent which 
785                                                         is passed as VM argument when Maven the Surefire plugin is executed. -->
786                                                 <execution>
787                                                         <id>pre-unit-test</id>
788                                                         <goals>
789                                                                 <goal>prepare-agent</goal>
790                                                         </goals>
791                                                         <configuration>
792                                                                 <!-- Sets the path to the file which contains the execution data. -->
793                                                                 <destFile>${project.build.directory}/code-coverage/jacoco-ut.exec</destFile>
794                                                                 <!-- Sets the name of the property containing the settings for JaCoCo 
795                                                                         runtime agent. -->
796                                                                 <propertyName>surefireArgLine</propertyName>
797                                                         </configuration>
798                                                 </execution>
799                                                 <!-- Ensures that the code coverage report for unit tests is created 
800                                                         after unit tests have been run. -->
801                                                 <execution>
802                                                         <id>post-unit-test</id>
803                                                         <phase>test</phase>
804                                                         <goals>
805                                                                 <goal>report</goal>
806                                                         </goals>
807                                                         <configuration>
808                                                                 <!-- Sets the path to the file which contains the execution data. -->
809                                                                 <dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>
810                                                                 <!-- Sets the output directory for the code coverage report. -->
811                                                                 <outputDirectory>${project.reporting.outputDirectory}/jacoco-ut</outputDirectory>
812                                                         </configuration>
813                                                 </execution>
814                                                 <execution>
815                                                         <id>pre-integration-test</id>
816                                                         <phase>pre-integration-test</phase>
817                                                         <goals>
818                                                                 <goal>prepare-agent</goal>
819                                                         </goals>
820                                                         <configuration>
821                                                                 <!-- Sets the path to the file which contains the execution data. -->
822                                                                 <destFile>${project.build.directory}/code-coverage/jacoco-it.exec</destFile>
823                                                                 <!-- Sets the name of the property containing the settings for JaCoCo 
824                                                                         runtime agent. -->
825                                                                 <propertyName>failsafeArgLine</propertyName>
826                                                         </configuration>
827                                                 </execution>
828                                                 <!-- Ensures that the code coverage report for integration tests after 
829                                                         integration tests have been run. -->
830                                                 <execution>
831                                                         <id>post-integration-test</id>
832                                                         <phase>post-integration-test</phase>
833                                                         <goals>
834                                                                 <goal>report</goal>
835                                                         </goals>
836                                                         <configuration>
837                                                                 <!-- Sets the path to the file which contains the execution data. -->
838                                                                 <dataFile>${project.build.directory}/code-coverage/jacoco-it.exec</dataFile>
839                                                                 <!-- Sets the output directory for the code coverage report. -->
840                                                                 <outputDirectory>${project.reporting.outputDirectory}/jacoco-it</outputDirectory>
841                                                         </configuration>
842                                                 </execution>
843                                         </executions>
844                                 </plugin>
845                                 <plugin>
846                                         <groupId>org.apache.maven.plugins</groupId>
847                                         <artifactId>maven-surefire-plugin</artifactId>
848                                         <version>2.22.0</version>
849                                         <configuration>
850                                                 <!-- Sets the VM argument line used when unit tests are run. -->
851                                                 <argLine>${surefireArgLine}</argLine>
852                                                 <!-- Excludes integration tests when unit tests are run. -->
853                                                 <excludes>
854                                                         <exclude>**/IT*.java</exclude>
855                                                 </excludes>
856                                         </configuration>
857                                 </plugin>
858                                 <plugin>
859                                         <groupId>org.apache.maven.plugins</groupId>
860                                         <artifactId>maven-failsafe-plugin</artifactId>
861                                         <version>2.22.0</version>
862                                         <executions>
863                                                 <!-- Ensures that both integration-test and verify goals of the Failsafe 
864                                                         Maven plugin are executed. -->
865                                                 <execution>
866                                                         <id>integration-tests</id>
867                                                         <goals>
868                                                                 <goal>integration-test</goal>
869                                                                 <goal>verify</goal>
870                                                         </goals>
871                                                         <configuration>
872                                                                 <!-- Sets the VM argument line used when integration tests are run. -->
873                                                                 <argLine>${failsafeArgLine}</argLine>
874                                                         </configuration>
875                                                 </execution>
876                                         </executions>
877                                 </plugin>
878
879                                 <!-- End of plugins from ONAP oparent -->
880                                 <plugin>
881                                         <groupId>org.codehaus.mojo</groupId>
882                                         <artifactId>properties-maven-plugin</artifactId>
883                                         <version>1.0.0</version>
884                                         <executions>
885                                                 <execution>
886                                                         <goals>
887                                                                 <goal>set-system-properties</goal>
888                                                         </goals>
889                                                         <configuration>
890                                                                 <properties>
891                                                                         <property>
892                                                                                 <name>maven.wagon.http.ssl.allowall</name>
893                                                                                 <value>${ssl.allowall}</value>
894                                                                         </property>
895                                                                         <property>
896                                                                                 <name>maven.wagon.http.ssl.insecure</name>
897                                                                                 <value>${ssl.insecure}</value>
898                                                                         </property>
899                                                                 </properties>
900                                                         </configuration>
901                                                 </execution>
902                                         </executions>
903                                 </plugin>
904
905                                 <plugin>
906                                         <groupId>org.codehaus.mojo</groupId>
907                                         <artifactId>versions-maven-plugin</artifactId>
908                                         <version>2.5</version>
909                                         <configuration>
910                                                 <processAllModules>true</processAllModules>
911                                         </configuration>
912                                 </plugin>
913                                 <plugin>
914                                         <artifactId>maven-scm-plugin</artifactId>
915                                         <version>1.8.1</version>
916                                         <configuration>
917                                                 <tag>${project.artifactId}-${project.version}</tag>
918                                         </configuration>
919                                 </plugin>
920                         </plugins>
921                 </pluginManagement>
922                 <plugins>
923
924                         <!-- Plugins from oparent version (parent of oparent) -->
925                         <plugin>
926                                 <groupId>org.apache.maven.plugins</groupId>
927                                 <artifactId>maven-deploy-plugin</artifactId>
928                         </plugin>
929                         <plugin>
930                                 <groupId>org.apache.maven.plugins</groupId>
931                                 <artifactId>maven-site-plugin</artifactId>
932                         </plugin>
933                         <plugin>
934                                 <groupId>org.apache.maven.plugins</groupId>
935                                 <artifactId>maven-enforcer-plugin</artifactId>
936                         </plugin>
937                         <!-- end of plugins from oparent version (parent of oparent) -->
938
939                         <!-- Plugins from oparent -->
940                         <plugin>
941                                 <artifactId>maven-checkstyle-plugin</artifactId>
942                                 <version>2.17</version>
943                                 <dependencies>
944                                         <dependency>
945                                                 <groupId>org.onap.oparent</groupId>
946                                                 <artifactId>checkstyle</artifactId>
947                                                 <version>1.2.2</version>
948                                         </dependency>
949                                 </dependencies>
950                                 <executions>
951                                         <execution>
952                                                 <id>onap-license</id>
953                                                 <goals>
954                                                         <goal>check</goal>
955                                                 </goals>
956                                                 <phase>process-sources</phase>
957                                                 <configuration>
958                                                         <configLocation>onap-checkstyle/check-license.xml</configLocation>
959                                                         <includeResources>false</includeResources>
960                                                         <includeTestSourceDirectory>true</includeTestSourceDirectory>
961                                                         <includeTestResources>false</includeTestResources>
962                                                         <sourceDirectory>${project.build.sourceDirectory}</sourceDirectory>
963                                                         <excludes>
964                                                         </excludes>
965                                                         <consoleOutput>true</consoleOutput>
966                                                         <failOnViolation>false</failOnViolation>
967                                                 </configuration>
968                                         </execution>
969                                         <execution>
970                                                 <id>onap-java-style</id>
971                                                 <goals>
972                                                         <goal>check</goal>
973                                                 </goals>
974                                                 <phase>process-sources</phase>
975                                                 <configuration>
976                                                         <!-- Use Google Java Style Guide: https://github.com/checkstyle/checkstyle/blob/master/src/main/resources/google_checks.xml 
977                                                                 with minor changes -->
978                                                         <configLocation>onap-checkstyle/onap-java-style.xml</configLocation>
979                                                         <!-- <sourceDirectory> is needed so that checkstyle ignores the generated 
980                                                                 sources directory -->
981                                                         <sourceDirectory>${project.build.sourceDirectory}/src/main/java</sourceDirectory>
982                                                         <includeResources>true</includeResources>
983                                                         <includeTestSourceDirectory>true</includeTestSourceDirectory>
984                                                         <includeTestResources>true</includeTestResources>
985                                                         <excludes>
986                                                         </excludes>
987                                                         <consoleOutput>true</consoleOutput>
988                                                         <failOnViolation>false</failOnViolation>
989                                                 </configuration>
990                                         </execution>
991                                 </executions>
992                         </plugin>
993                         <plugin>
994                                 <groupId>org.codehaus.mojo</groupId>
995                                 <artifactId>build-helper-maven-plugin</artifactId>
996                                 <version>1.12</version>
997                         </plugin>
998                         <!-- Jacoco / Sonar -->
999                         <plugin>
1000                                 <groupId>org.jacoco</groupId>
1001                                 <artifactId>jacoco-maven-plugin</artifactId>
1002                         </plugin>
1003                         <plugin>
1004                                 <groupId>org.apache.maven.plugins</groupId>
1005                                 <artifactId>maven-surefire-plugin</artifactId>
1006                         </plugin>
1007                         <plugin>
1008                                 <groupId>org.apache.maven.plugins</groupId>
1009                                 <artifactId>maven-failsafe-plugin</artifactId>
1010                         </plugin>
1011                         <!-- end of plugins from oparent -->
1012                         <plugin>
1013                             <groupId>org.apache.maven.plugins</groupId>
1014                             <artifactId>maven-javadoc-plugin</artifactId>
1015                             <version>2.10.4</version>
1016                             <executions>
1017                                 <execution>
1018                                     <id>attach-javadocs</id>
1019                                     <goals>
1020                                         <goal>jar</goal>
1021                                     </goals>
1022                                     <configuration>
1023                                         <additionalparam>-Xdoclint:none</additionalparam>
1024                                     </configuration>
1025                                 </execution>
1026                             </executions>
1027                         </plugin>
1028                 </plugins>
1029         </build>
1030     <reporting>
1031                 <plugins>
1032                         <plugin>
1033                                 <artifactId>maven-javadoc-plugin</artifactId>
1034                                 <version>2.10.4</version>
1035                                 <configuration>
1036                                         <failOnError>false</failOnError>
1037                                         <additionalparam>-Xdoclint:none</additionalparam>
1038                                 </configuration>
1039                         </plugin>
1040                 </plugins>
1041         </reporting>
1042         <organization>
1043                 <name>ONAP</name>
1044         </organization>
1045 </project>