switch to sodium

fix dependencies and versions for sodium SR3

Issue-ID: CCSDK-2518
Signed-off-by: Michael Dürre <michael.duerre@highstreet-technologies.com>
Change-Id: I46a4def45fed75aeb3b507831446a2d8d26a2f52
diff --git a/odlparent/binding-parent/pom.xml b/odlparent/binding-parent/pom.xml
index 3bc6b66..96f6dc5 100644
--- a/odlparent/binding-parent/pom.xml
+++ b/odlparent/binding-parent/pom.xml
@@ -8,7 +8,7 @@
     <parent>
         <groupId>org.opendaylight.mdsal</groupId>
         <artifactId>binding-parent</artifactId>
-        <version>3.0.8</version>
+        <version>4.0.14</version>
         <relativePath/>
     </parent>
 
@@ -53,8 +53,8 @@
         <jacoco.version>0.8.5</jacoco.version>
 
         <!-- properties from oparent -->
-        <maven.compiler.source>1.8</maven.compiler.source>
-        <maven.compiler.target>1.8</maven.compiler.target>
+        <maven.compiler.source>8</maven.compiler.source>
+        <maven.compiler.target>8</maven.compiler.target>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
         <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
         <onap.nexus.url>https://nexus.onap.org</onap.nexus.url>
@@ -83,8 +83,8 @@
         <opendaylight.nexus.snapshot-url>https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/</opendaylight.nexus.snapshot-url>
 
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-        <java.version.source>1.8</java.version.source>
-        <java.version.target>1.8</java.version.target>
+        <java.version.source>8</java.version.source>
+        <java.version.target>8</java.version.target>
         <bundle.plugin.version>2.5.0</bundle.plugin.version>
         <maven.compile.plugin.version>2.5.1</maven.compile.plugin.version>
         <features.file>features.xml</features.file>
@@ -110,15 +110,15 @@
         <sdnctl.slipluginutils.version>${ccsdk.sli.core.version}</sdnctl.slipluginutils.version>
 
         <!-- Support libraries used by OpenDaylight -->
-        <odl.controller.mdsal.version>1.9.1</odl.controller.mdsal.version>
-        <odl.mdsal.version>3.0.8</odl.mdsal.version>
-        <odl.mdsal.model.version>1.0.8</odl.mdsal.model.version>
-        <odl.netconf.restconf.version>1.9.1</odl.netconf.restconf.version>
-        <odl.netconf.netconf.version>1.6.1</odl.netconf.netconf.version>
-        <odl.netconf.sal.rest.docgen.version>1.9.1</odl.netconf.sal.rest.docgen.version>
+        <odl.controller.mdsal.version>1.10.3</odl.controller.mdsal.version>
+        <odl.mdsal.version>4.0.14</odl.mdsal.version>
+        <odl.mdsal.model.version>2.0.14</odl.mdsal.model.version>
+        <odl.netconf.restconf.version>1.10.3</odl.netconf.restconf.version>
+        <odl.netconf.netconf.version>1.7.3</odl.netconf.netconf.version>
+        <odl.netconf.sal.rest.docgen.version>1.10.3</odl.netconf.sal.rest.docgen.version>
 
         <!-- Used by aaa, vtn -->
-        <commons.codec.version>1.12</commons.codec.version>
+        <commons.codec.version>1.13</commons.codec.version>
         <!-- Used by netconf, ovsdb -->
         <commons.lang3.version>3.8.1</commons.lang3.version>
         <!-- Used by sfc, snmp4sdn; see also affinity, toolkit -->
@@ -126,7 +126,7 @@
         <!-- Used by neutron; see also controller, vtn -->
         <commons.net.version>3.6</commons.net.version>
         <!-- Used by neutron -->
-        <eclipse.persistence.version>2.7.3</eclipse.persistence.version>
+        <eclipse.persistence.version>2.7.4</eclipse.persistence.version>
         <!-- Used by aaa -->
         <felix.dependencymanager.version>4.4.1</felix.dependencymanager.version>
         <!-- Used by lacp, netconf, ovsdb, sfc, toolkit; see also vtn -->
@@ -135,7 +135,7 @@
         <guava.version>25.1-jre</guava.version>
         <!-- Used by aaa, alto, netconf, ovsdb, sfc; see also affinity, defense4all,
             integration/distribution, snmp4sdn, toolkit, ttp -->
-        <jackson.version>2.9.8</jackson.version>
+        <jackson.version>2.9.10</jackson.version>
         <!-- Used by snmp4sdn, yangtools -->
         <javassist.version>3.24.1-GA</javassist.version>
 
@@ -157,7 +157,7 @@
         <!-- Used by nic, sfc, sxp, tsdr -->
         <mockito.version>1.10.19</mockito.version>
         <!-- Used by bgpcep, netconf, ovsdb, sxp; see also opendove, toolkit -->
-        <netty.version>4.1.34.Final</netty.version>
+        <netty.version>4.1.42.Final</netty.version>
         <!-- Used by openflowjava, persistence, sfc, snmp4sdn, sxp; see also affinity, toolkit -->
         <slf4j.version>1.7.25</slf4j.version>
         <!-- Used in integration/distribution; see also affinity, snmp4sdn, toolkit, tsdr, ttp -->
@@ -418,6 +418,40 @@
                                 </rules>
                             </configuration>
                         </execution>
+                        <execution>
+                            <id>enforce-maven</id>
+                            <goals>
+                            <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                            <rules>
+                                <requireJavaVersion>
+                                <version>8</version>
+                                </requireJavaVersion>
+                                <requireMavenVersion>
+                                <version>[3.5.0,)</version>
+                                </requireMavenVersion>
+                            </rules>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>enforce-banned-dependencies</id>
+                            <goals>
+                            <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                            <rules>
+                                <bannedDependencies>
+                                <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
+                                <excludes>
+                                    <exclude>org.mockito:mockito-all</exclude>
+                <!--                     <exclude>com.google.code.findbugs:annotations</exclude> -->
+                                </excludes>
+                                </bannedDependencies>
+                            </rules>
+                            <fail>true</fail>
+                            </configuration>
+                        </execution>
                     </executions>
                 </plugin>
                 <!-- https://mvnrepository.com/artifact/org.sonarsource.scanner.maven/sonar-maven-plugin -->
@@ -530,10 +564,6 @@
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-site-plugin</artifactId>
             </plugin>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-enforcer-plugin</artifactId>
-            </plugin>
             <!-- end of plugins from oparent version (parent of oparent) -->
 
             <!-- Plugins from oparent -->
@@ -713,6 +743,77 @@
                     </execution>
                 </executions>
             </plugin>
+            <plugin>
+                <artifactId>maven-enforcer-plugin</artifactId>
+                <version>3.0.0-M2</version>
+                <executions>
+                    <execution>
+                        <id>enforce-property</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireProperty>
+                                    <property>onap.nexus.url</property>
+                                    <message>You must set a onap.nexus.url property in your
+                                        ~/.m2/settings.xml. See oparent/settings.xml for an example.</message>
+                                </requireProperty>
+                            </rules>
+                            <fail>true</fail>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-no-snapshots</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireReleaseDeps>
+                                    <failWhenParentIsSnapshot>false</failWhenParentIsSnapshot>
+                                    <onlyWhenRelease>true</onlyWhenRelease>
+                                    <level>WARN</level>
+                                </requireReleaseDeps>
+                            </rules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-maven</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireJavaVersion>
+                                    <version>1.8.0</version>
+                                </requireJavaVersion>
+                                <requireMavenVersion>
+                                    <version>[3.5.0,)</version>
+                                </requireMavenVersion>
+                            </rules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-banned-dependencies</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <bannedDependencies>
+                                    <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
+                                    <excludes>
+                                        <exclude>org.mockito:mockito-all</exclude>
+<!--                                         <exclude>com.google.code.findbugs:annotations</exclude> -->
+                                    </excludes>
+                                </bannedDependencies>
+                            </rules>
+                            <fail>true</fail>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
         </plugins>
     </build>
 
@@ -726,19 +827,6 @@
                     <additionalparam>-Xdoclint:none</additionalparam>
                 </configuration>
             </plugin>
-            <plugin>
-                <groupId>org.jacoco</groupId>
-                <artifactId>jacoco-maven-plugin</artifactId>
-                <version>${jacoco.version}</version>
-                <reportSets>
-                    <reportSet>
-                        <reports>
-                            <!-- select non-aggregate reports -->
-                            <report>report</report>
-                        </reports>
-                    </reportSet>
-                </reportSets>
-            </plugin>
         </plugins>
     </reporting>
 
@@ -1024,13 +1112,14 @@
                     <plugin>
                         <groupId>org.opendaylight.yangtools</groupId>
                         <artifactId>yang-maven-plugin</artifactId>
-                        <version>2.1.8</version>
+                        <version>3.0.11</version>
                         <dependencies>
                             <dependency>
                                 <groupId>org.opendaylight.mdsal</groupId>
                                 <artifactId>maven-sal-api-gen-plugin</artifactId>
                                 <version>${odl.mdsal.model.version}</version>
                                 <type>jar</type>
+                                <scope>compile</scope>
                             </dependency>
                             <dependency>
                                 <groupId>org.opendaylight.netconf</groupId>
diff --git a/odlparent/bundle-parent/pom.xml b/odlparent/bundle-parent/pom.xml
index 20c44cd..0ad3f3a 100644
--- a/odlparent/bundle-parent/pom.xml
+++ b/odlparent/bundle-parent/pom.xml
@@ -8,7 +8,7 @@
     <parent>
         <groupId>org.opendaylight.odlparent</groupId>
         <artifactId>bundle-parent</artifactId>
-        <version>4.0.10</version>
+        <version>5.0.7</version>
         <relativePath/>
     </parent>
 
@@ -53,8 +53,8 @@
         <jacoco.version>0.8.5</jacoco.version>
 
         <!-- properties from oparent -->
-        <maven.compiler.source>1.8</maven.compiler.source>
-        <maven.compiler.target>1.8</maven.compiler.target>
+        <maven.compiler.source>8</maven.compiler.source>
+        <maven.compiler.target>8</maven.compiler.target>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
         <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
         <onap.nexus.url>https://nexus.onap.org</onap.nexus.url>
@@ -83,8 +83,8 @@
         <opendaylight.nexus.snapshot-url>https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/</opendaylight.nexus.snapshot-url>
 
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-        <java.version.source>1.8</java.version.source>
-        <java.version.target>1.8</java.version.target>
+        <java.version.source>8</java.version.source>
+        <java.version.target>8</java.version.target>
         <bundle.plugin.version>2.5.0</bundle.plugin.version>
         <maven.compile.plugin.version>2.5.1</maven.compile.plugin.version>
         <features.file>features.xml</features.file>
@@ -110,15 +110,15 @@
         <sdnctl.slipluginutils.version>${ccsdk.sli.core.version}</sdnctl.slipluginutils.version>
 
         <!-- Support libraries used by OpenDaylight -->
-        <odl.controller.mdsal.version>1.9.1</odl.controller.mdsal.version>
-        <odl.mdsal.version>3.0.8</odl.mdsal.version>
-        <odl.mdsal.model.version>1.0.8</odl.mdsal.model.version>
-        <odl.netconf.restconf.version>1.9.1</odl.netconf.restconf.version>
-        <odl.netconf.netconf.version>1.6.1</odl.netconf.netconf.version>
-        <odl.netconf.sal.rest.docgen.version>1.9.1</odl.netconf.sal.rest.docgen.version>
+        <odl.controller.mdsal.version>1.10.3</odl.controller.mdsal.version>
+        <odl.mdsal.version>4.0.14</odl.mdsal.version>
+        <odl.mdsal.model.version>2.0.14</odl.mdsal.model.version>
+        <odl.netconf.restconf.version>1.10.3</odl.netconf.restconf.version>
+        <odl.netconf.netconf.version>1.7.3</odl.netconf.netconf.version>
+        <odl.netconf.sal.rest.docgen.version>1.10.3</odl.netconf.sal.rest.docgen.version>
 
         <!-- Used by aaa, vtn -->
-        <commons.codec.version>1.12</commons.codec.version>
+        <commons.codec.version>1.13</commons.codec.version>
         <!-- Used by netconf, ovsdb -->
         <commons.lang3.version>3.8.1</commons.lang3.version>
         <!-- Used by sfc, snmp4sdn; see also affinity, toolkit -->
@@ -126,7 +126,7 @@
         <!-- Used by neutron; see also controller, vtn -->
         <commons.net.version>3.6</commons.net.version>
         <!-- Used by neutron -->
-        <eclipse.persistence.version>2.7.3</eclipse.persistence.version>
+        <eclipse.persistence.version>2.7.4</eclipse.persistence.version>
         <!-- Used by aaa -->
         <felix.dependencymanager.version>4.4.1</felix.dependencymanager.version>
         <!-- Used by lacp, netconf, ovsdb, sfc, toolkit; see also vtn -->
@@ -135,7 +135,7 @@
         <guava.version>25.1-jre</guava.version>
         <!-- Used by aaa, alto, netconf, ovsdb, sfc; see also affinity, defense4all,
             integration/distribution, snmp4sdn, toolkit, ttp -->
-        <jackson.version>2.9.8</jackson.version>
+        <jackson.version>2.9.10</jackson.version>
         <!-- Used by snmp4sdn, yangtools -->
         <javassist.version>3.24.1-GA</javassist.version>
 
@@ -157,7 +157,7 @@
         <!-- Used by nic, sfc, sxp, tsdr -->
         <mockito.version>1.10.19</mockito.version>
         <!-- Used by bgpcep, netconf, ovsdb, sxp; see also opendove, toolkit -->
-        <netty.version>4.1.34.Final</netty.version>
+        <netty.version>4.1.42.Final</netty.version>
         <!-- Used by openflowjava, persistence, sfc, snmp4sdn, sxp; see also affinity, toolkit -->
         <slf4j.version>1.7.25</slf4j.version>
         <!-- Used in integration/distribution; see also affinity, snmp4sdn, toolkit, tsdr, ttp -->
@@ -418,6 +418,40 @@
                                 </rules>
                             </configuration>
                         </execution>
+                        <execution>
+                            <id>enforce-maven</id>
+                            <goals>
+                            <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                            <rules>
+                                <requireJavaVersion>
+                                <version>8</version>
+                                </requireJavaVersion>
+                                <requireMavenVersion>
+                                <version>[3.5.0,)</version>
+                                </requireMavenVersion>
+                            </rules>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>enforce-banned-dependencies</id>
+                            <goals>
+                            <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                            <rules>
+                                <bannedDependencies>
+                                <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
+                                <excludes>
+                                    <exclude>org.mockito:mockito-all</exclude>
+                <!--                     <exclude>com.google.code.findbugs:annotations</exclude> -->
+                                </excludes>
+                                </bannedDependencies>
+                            </rules>
+                            <fail>true</fail>
+                            </configuration>
+                        </execution>
                     </executions>
                 </plugin>
                 <!-- https://mvnrepository.com/artifact/org.sonarsource.scanner.maven/sonar-maven-plugin -->
@@ -530,10 +564,6 @@
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-site-plugin</artifactId>
             </plugin>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-enforcer-plugin</artifactId>
-            </plugin>
             <!-- end of plugins from oparent version (parent of oparent) -->
 
             <!-- Plugins from oparent -->
@@ -713,6 +743,77 @@
                     </execution>
                 </executions>
             </plugin>
+            <plugin>
+                <artifactId>maven-enforcer-plugin</artifactId>
+                <version>3.0.0-M2</version>
+                <executions>
+                    <execution>
+                        <id>enforce-property</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireProperty>
+                                    <property>onap.nexus.url</property>
+                                    <message>You must set a onap.nexus.url property in your
+                                        ~/.m2/settings.xml. See oparent/settings.xml for an example.</message>
+                                </requireProperty>
+                            </rules>
+                            <fail>true</fail>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-no-snapshots</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireReleaseDeps>
+                                    <failWhenParentIsSnapshot>false</failWhenParentIsSnapshot>
+                                    <onlyWhenRelease>true</onlyWhenRelease>
+                                    <level>WARN</level>
+                                </requireReleaseDeps>
+                            </rules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-maven</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireJavaVersion>
+                                    <version>1.8.0</version>
+                                </requireJavaVersion>
+                                <requireMavenVersion>
+                                    <version>[3.5.0,)</version>
+                                </requireMavenVersion>
+                            </rules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-banned-dependencies</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <bannedDependencies>
+                                    <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
+                                    <excludes>
+                                        <exclude>org.mockito:mockito-all</exclude>
+<!--                                         <exclude>com.google.code.findbugs:annotations</exclude> -->
+                                    </excludes>
+                                </bannedDependencies>
+                            </rules>
+                            <fail>true</fail>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
         </plugins>
     </build>
 
@@ -726,19 +827,6 @@
                     <additionalparam>-Xdoclint:none</additionalparam>
                 </configuration>
             </plugin>
-            <plugin>
-                <groupId>org.jacoco</groupId>
-                <artifactId>jacoco-maven-plugin</artifactId>
-                <version>${jacoco.version}</version>
-                <reportSets>
-                    <reportSet>
-                        <reports>
-                            <!-- select non-aggregate reports -->
-                            <report>report</report>
-                        </reports>
-                    </reportSet>
-                </reportSets>
-            </plugin>
         </plugins>
     </reporting>
 
@@ -1024,13 +1112,14 @@
                     <plugin>
                         <groupId>org.opendaylight.yangtools</groupId>
                         <artifactId>yang-maven-plugin</artifactId>
-                        <version>2.1.8</version>
+                        <version>3.0.11</version>
                         <dependencies>
                             <dependency>
                                 <groupId>org.opendaylight.mdsal</groupId>
                                 <artifactId>maven-sal-api-gen-plugin</artifactId>
                                 <version>${odl.mdsal.model.version}</version>
                                 <type>jar</type>
+                                <scope>compile</scope>
                             </dependency>
                             <dependency>
                                 <groupId>org.opendaylight.netconf</groupId>
diff --git a/odlparent/feature-repo-parent/pom.xml b/odlparent/feature-repo-parent/pom.xml
index c408eae..6bf0e1c 100644
--- a/odlparent/feature-repo-parent/pom.xml
+++ b/odlparent/feature-repo-parent/pom.xml
@@ -8,7 +8,7 @@
     <parent>
         <groupId>org.opendaylight.odlparent</groupId>
         <artifactId>feature-repo-parent</artifactId>
-        <version>4.0.10</version>
+        <version>5.0.7</version>
         <relativePath/>
     </parent>
 
@@ -53,8 +53,8 @@
         <jacoco.version>0.8.5</jacoco.version>
 
         <!-- properties from oparent -->
-        <maven.compiler.source>1.8</maven.compiler.source>
-        <maven.compiler.target>1.8</maven.compiler.target>
+        <maven.compiler.source>8</maven.compiler.source>
+        <maven.compiler.target>8</maven.compiler.target>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
         <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
         <onap.nexus.url>https://nexus.onap.org</onap.nexus.url>
@@ -83,8 +83,8 @@
         <opendaylight.nexus.snapshot-url>https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/</opendaylight.nexus.snapshot-url>
 
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-        <java.version.source>1.8</java.version.source>
-        <java.version.target>1.8</java.version.target>
+        <java.version.source>8</java.version.source>
+        <java.version.target>8</java.version.target>
         <bundle.plugin.version>2.5.0</bundle.plugin.version>
         <maven.compile.plugin.version>2.5.1</maven.compile.plugin.version>
         <features.file>features.xml</features.file>
@@ -110,15 +110,15 @@
         <sdnctl.slipluginutils.version>${ccsdk.sli.core.version}</sdnctl.slipluginutils.version>
 
         <!-- Support libraries used by OpenDaylight -->
-        <odl.controller.mdsal.version>1.9.1</odl.controller.mdsal.version>
-        <odl.mdsal.version>3.0.8</odl.mdsal.version>
-        <odl.mdsal.model.version>1.0.8</odl.mdsal.model.version>
-        <odl.netconf.restconf.version>1.9.1</odl.netconf.restconf.version>
-        <odl.netconf.netconf.version>1.6.1</odl.netconf.netconf.version>
-        <odl.netconf.sal.rest.docgen.version>1.9.1</odl.netconf.sal.rest.docgen.version>
+        <odl.controller.mdsal.version>1.10.3</odl.controller.mdsal.version>
+        <odl.mdsal.version>4.0.14</odl.mdsal.version>
+        <odl.mdsal.model.version>2.0.14</odl.mdsal.model.version>
+        <odl.netconf.restconf.version>1.10.3</odl.netconf.restconf.version>
+        <odl.netconf.netconf.version>1.7.3</odl.netconf.netconf.version>
+        <odl.netconf.sal.rest.docgen.version>1.10.3</odl.netconf.sal.rest.docgen.version>
 
         <!-- Used by aaa, vtn -->
-        <commons.codec.version>1.12</commons.codec.version>
+        <commons.codec.version>1.13</commons.codec.version>
         <!-- Used by netconf, ovsdb -->
         <commons.lang3.version>3.8.1</commons.lang3.version>
         <!-- Used by sfc, snmp4sdn; see also affinity, toolkit -->
@@ -126,7 +126,7 @@
         <!-- Used by neutron; see also controller, vtn -->
         <commons.net.version>3.6</commons.net.version>
         <!-- Used by neutron -->
-        <eclipse.persistence.version>2.7.3</eclipse.persistence.version>
+        <eclipse.persistence.version>2.7.4</eclipse.persistence.version>
         <!-- Used by aaa -->
         <felix.dependencymanager.version>4.4.1</felix.dependencymanager.version>
         <!-- Used by lacp, netconf, ovsdb, sfc, toolkit; see also vtn -->
@@ -135,7 +135,7 @@
         <guava.version>25.1-jre</guava.version>
         <!-- Used by aaa, alto, netconf, ovsdb, sfc; see also affinity, defense4all,
             integration/distribution, snmp4sdn, toolkit, ttp -->
-        <jackson.version>2.9.8</jackson.version>
+        <jackson.version>2.9.10</jackson.version>
         <!-- Used by snmp4sdn, yangtools -->
         <javassist.version>3.24.1-GA</javassist.version>
 
@@ -157,7 +157,7 @@
         <!-- Used by nic, sfc, sxp, tsdr -->
         <mockito.version>1.10.19</mockito.version>
         <!-- Used by bgpcep, netconf, ovsdb, sxp; see also opendove, toolkit -->
-        <netty.version>4.1.34.Final</netty.version>
+        <netty.version>4.1.42.Final</netty.version>
         <!-- Used by openflowjava, persistence, sfc, snmp4sdn, sxp; see also affinity, toolkit -->
         <slf4j.version>1.7.25</slf4j.version>
         <!-- Used in integration/distribution; see also affinity, snmp4sdn, toolkit, tsdr, ttp -->
@@ -418,6 +418,40 @@
                                 </rules>
                             </configuration>
                         </execution>
+                        <execution>
+                            <id>enforce-maven</id>
+                            <goals>
+                            <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                            <rules>
+                                <requireJavaVersion>
+                                <version>8</version>
+                                </requireJavaVersion>
+                                <requireMavenVersion>
+                                <version>[3.5.0,)</version>
+                                </requireMavenVersion>
+                            </rules>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>enforce-banned-dependencies</id>
+                            <goals>
+                            <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                            <rules>
+                                <bannedDependencies>
+                                <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
+                                <excludes>
+                                    <exclude>org.mockito:mockito-all</exclude>
+                <!--                     <exclude>com.google.code.findbugs:annotations</exclude> -->
+                                </excludes>
+                                </bannedDependencies>
+                            </rules>
+                            <fail>true</fail>
+                            </configuration>
+                        </execution>
                     </executions>
                 </plugin>
                 <!-- https://mvnrepository.com/artifact/org.sonarsource.scanner.maven/sonar-maven-plugin -->
@@ -530,10 +564,6 @@
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-site-plugin</artifactId>
             </plugin>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-enforcer-plugin</artifactId>
-            </plugin>
             <!-- end of plugins from oparent version (parent of oparent) -->
 
             <!-- Plugins from oparent -->
@@ -713,6 +743,77 @@
                     </execution>
                 </executions>
             </plugin>
+            <plugin>
+                <artifactId>maven-enforcer-plugin</artifactId>
+                <version>3.0.0-M2</version>
+                <executions>
+                    <execution>
+                        <id>enforce-property</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireProperty>
+                                    <property>onap.nexus.url</property>
+                                    <message>You must set a onap.nexus.url property in your
+                                        ~/.m2/settings.xml. See oparent/settings.xml for an example.</message>
+                                </requireProperty>
+                            </rules>
+                            <fail>true</fail>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-no-snapshots</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireReleaseDeps>
+                                    <failWhenParentIsSnapshot>false</failWhenParentIsSnapshot>
+                                    <onlyWhenRelease>true</onlyWhenRelease>
+                                    <level>WARN</level>
+                                </requireReleaseDeps>
+                            </rules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-maven</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireJavaVersion>
+                                    <version>1.8.0</version>
+                                </requireJavaVersion>
+                                <requireMavenVersion>
+                                    <version>[3.5.0,)</version>
+                                </requireMavenVersion>
+                            </rules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-banned-dependencies</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <bannedDependencies>
+                                    <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
+                                    <excludes>
+                                        <exclude>org.mockito:mockito-all</exclude>
+<!--                                         <exclude>com.google.code.findbugs:annotations</exclude> -->
+                                    </excludes>
+                                </bannedDependencies>
+                            </rules>
+                            <fail>true</fail>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
         </plugins>
     </build>
 
@@ -726,19 +827,6 @@
                     <additionalparam>-Xdoclint:none</additionalparam>
                 </configuration>
             </plugin>
-            <plugin>
-                <groupId>org.jacoco</groupId>
-                <artifactId>jacoco-maven-plugin</artifactId>
-                <version>${jacoco.version}</version>
-                <reportSets>
-                    <reportSet>
-                        <reports>
-                            <!-- select non-aggregate reports -->
-                            <report>report</report>
-                        </reports>
-                    </reportSet>
-                </reportSets>
-            </plugin>
         </plugins>
     </reporting>
 
@@ -1024,13 +1112,14 @@
                     <plugin>
                         <groupId>org.opendaylight.yangtools</groupId>
                         <artifactId>yang-maven-plugin</artifactId>
-                        <version>2.1.8</version>
+                        <version>3.0.11</version>
                         <dependencies>
                             <dependency>
                                 <groupId>org.opendaylight.mdsal</groupId>
                                 <artifactId>maven-sal-api-gen-plugin</artifactId>
                                 <version>${odl.mdsal.model.version}</version>
                                 <type>jar</type>
+                                <scope>compile</scope>
                             </dependency>
                             <dependency>
                                 <groupId>org.opendaylight.netconf</groupId>
diff --git a/odlparent/karaf4-parent/pom.xml b/odlparent/karaf4-parent/pom.xml
index 78c64ad..438df81 100644
--- a/odlparent/karaf4-parent/pom.xml
+++ b/odlparent/karaf4-parent/pom.xml
@@ -8,7 +8,7 @@
     <parent>
         <groupId>org.opendaylight.odlparent</groupId>
         <artifactId>karaf4-parent</artifactId>
-        <version>4.0.10</version>
+        <version>5.0.7</version>
         <relativePath/>
     </parent>
 
@@ -53,8 +53,8 @@
         <jacoco.version>0.8.5</jacoco.version>
 
         <!-- properties from oparent -->
-        <maven.compiler.source>1.8</maven.compiler.source>
-        <maven.compiler.target>1.8</maven.compiler.target>
+        <maven.compiler.source>8</maven.compiler.source>
+        <maven.compiler.target>8</maven.compiler.target>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
         <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
         <onap.nexus.url>https://nexus.onap.org</onap.nexus.url>
@@ -83,8 +83,8 @@
         <opendaylight.nexus.snapshot-url>https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/</opendaylight.nexus.snapshot-url>
 
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-        <java.version.source>1.8</java.version.source>
-        <java.version.target>1.8</java.version.target>
+        <java.version.source>8</java.version.source>
+        <java.version.target>8</java.version.target>
         <bundle.plugin.version>2.5.0</bundle.plugin.version>
         <maven.compile.plugin.version>2.5.1</maven.compile.plugin.version>
         <features.file>features.xml</features.file>
@@ -110,15 +110,15 @@
         <sdnctl.slipluginutils.version>${ccsdk.sli.core.version}</sdnctl.slipluginutils.version>
 
         <!-- Support libraries used by OpenDaylight -->
-        <odl.controller.mdsal.version>1.9.1</odl.controller.mdsal.version>
-        <odl.mdsal.version>3.0.8</odl.mdsal.version>
-        <odl.mdsal.model.version>1.0.8</odl.mdsal.model.version>
-        <odl.netconf.restconf.version>1.9.1</odl.netconf.restconf.version>
-        <odl.netconf.netconf.version>1.6.1</odl.netconf.netconf.version>
-        <odl.netconf.sal.rest.docgen.version>1.9.1</odl.netconf.sal.rest.docgen.version>
+        <odl.controller.mdsal.version>1.10.3</odl.controller.mdsal.version>
+        <odl.mdsal.version>4.0.14</odl.mdsal.version>
+        <odl.mdsal.model.version>2.0.14</odl.mdsal.model.version>
+        <odl.netconf.restconf.version>1.10.3</odl.netconf.restconf.version>
+        <odl.netconf.netconf.version>1.7.3</odl.netconf.netconf.version>
+        <odl.netconf.sal.rest.docgen.version>1.10.3</odl.netconf.sal.rest.docgen.version>
 
         <!-- Used by aaa, vtn -->
-        <commons.codec.version>1.12</commons.codec.version>
+        <commons.codec.version>1.13</commons.codec.version>
         <!-- Used by netconf, ovsdb -->
         <commons.lang3.version>3.8.1</commons.lang3.version>
         <!-- Used by sfc, snmp4sdn; see also affinity, toolkit -->
@@ -126,7 +126,7 @@
         <!-- Used by neutron; see also controller, vtn -->
         <commons.net.version>3.6</commons.net.version>
         <!-- Used by neutron -->
-        <eclipse.persistence.version>2.7.3</eclipse.persistence.version>
+        <eclipse.persistence.version>2.7.4</eclipse.persistence.version>
         <!-- Used by aaa -->
         <felix.dependencymanager.version>4.4.1</felix.dependencymanager.version>
         <!-- Used by lacp, netconf, ovsdb, sfc, toolkit; see also vtn -->
@@ -135,7 +135,7 @@
         <guava.version>25.1-jre</guava.version>
         <!-- Used by aaa, alto, netconf, ovsdb, sfc; see also affinity, defense4all,
             integration/distribution, snmp4sdn, toolkit, ttp -->
-        <jackson.version>2.9.8</jackson.version>
+        <jackson.version>2.9.10</jackson.version>
         <!-- Used by snmp4sdn, yangtools -->
         <javassist.version>3.24.1-GA</javassist.version>
 
@@ -157,7 +157,7 @@
         <!-- Used by nic, sfc, sxp, tsdr -->
         <mockito.version>1.10.19</mockito.version>
         <!-- Used by bgpcep, netconf, ovsdb, sxp; see also opendove, toolkit -->
-        <netty.version>4.1.34.Final</netty.version>
+        <netty.version>4.1.42.Final</netty.version>
         <!-- Used by openflowjava, persistence, sfc, snmp4sdn, sxp; see also affinity, toolkit -->
         <slf4j.version>1.7.25</slf4j.version>
         <!-- Used in integration/distribution; see also affinity, snmp4sdn, toolkit, tsdr, ttp -->
@@ -418,6 +418,40 @@
                                 </rules>
                             </configuration>
                         </execution>
+                        <execution>
+                            <id>enforce-maven</id>
+                            <goals>
+                            <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                            <rules>
+                                <requireJavaVersion>
+                                <version>8</version>
+                                </requireJavaVersion>
+                                <requireMavenVersion>
+                                <version>[3.5.0,)</version>
+                                </requireMavenVersion>
+                            </rules>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>enforce-banned-dependencies</id>
+                            <goals>
+                            <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                            <rules>
+                                <bannedDependencies>
+                                <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
+                                <excludes>
+                                    <exclude>org.mockito:mockito-all</exclude>
+                <!--                     <exclude>com.google.code.findbugs:annotations</exclude> -->
+                                </excludes>
+                                </bannedDependencies>
+                            </rules>
+                            <fail>true</fail>
+                            </configuration>
+                        </execution>
                     </executions>
                 </plugin>
                 <!-- https://mvnrepository.com/artifact/org.sonarsource.scanner.maven/sonar-maven-plugin -->
@@ -530,10 +564,6 @@
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-site-plugin</artifactId>
             </plugin>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-enforcer-plugin</artifactId>
-            </plugin>
             <!-- end of plugins from oparent version (parent of oparent) -->
 
             <!-- Plugins from oparent -->
@@ -713,6 +743,77 @@
                     </execution>
                 </executions>
             </plugin>
+            <plugin>
+                <artifactId>maven-enforcer-plugin</artifactId>
+                <version>3.0.0-M2</version>
+                <executions>
+                    <execution>
+                        <id>enforce-property</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireProperty>
+                                    <property>onap.nexus.url</property>
+                                    <message>You must set a onap.nexus.url property in your
+                                        ~/.m2/settings.xml. See oparent/settings.xml for an example.</message>
+                                </requireProperty>
+                            </rules>
+                            <fail>true</fail>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-no-snapshots</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireReleaseDeps>
+                                    <failWhenParentIsSnapshot>false</failWhenParentIsSnapshot>
+                                    <onlyWhenRelease>true</onlyWhenRelease>
+                                    <level>WARN</level>
+                                </requireReleaseDeps>
+                            </rules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-maven</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireJavaVersion>
+                                    <version>1.8.0</version>
+                                </requireJavaVersion>
+                                <requireMavenVersion>
+                                    <version>[3.5.0,)</version>
+                                </requireMavenVersion>
+                            </rules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-banned-dependencies</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <bannedDependencies>
+                                    <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
+                                    <excludes>
+                                        <exclude>org.mockito:mockito-all</exclude>
+<!--                                         <exclude>com.google.code.findbugs:annotations</exclude> -->
+                                    </excludes>
+                                </bannedDependencies>
+                            </rules>
+                            <fail>true</fail>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
         </plugins>
     </build>
 
@@ -726,19 +827,6 @@
                     <additionalparam>-Xdoclint:none</additionalparam>
                 </configuration>
             </plugin>
-            <plugin>
-                <groupId>org.jacoco</groupId>
-                <artifactId>jacoco-maven-plugin</artifactId>
-                <version>${jacoco.version}</version>
-                <reportSets>
-                    <reportSet>
-                        <reports>
-                            <!-- select non-aggregate reports -->
-                            <report>report</report>
-                        </reports>
-                    </reportSet>
-                </reportSets>
-            </plugin>
         </plugins>
     </reporting>
 
@@ -1024,13 +1112,14 @@
                     <plugin>
                         <groupId>org.opendaylight.yangtools</groupId>
                         <artifactId>yang-maven-plugin</artifactId>
-                        <version>2.1.8</version>
+                        <version>3.0.11</version>
                         <dependencies>
                             <dependency>
                                 <groupId>org.opendaylight.mdsal</groupId>
                                 <artifactId>maven-sal-api-gen-plugin</artifactId>
                                 <version>${odl.mdsal.model.version}</version>
                                 <type>jar</type>
+                                <scope>compile</scope>
                             </dependency>
                             <dependency>
                                 <groupId>org.opendaylight.netconf</groupId>
diff --git a/odlparent/mdsal-it-parent/pom.xml b/odlparent/mdsal-it-parent/pom.xml
index 3ae78db..bf28972 100644
--- a/odlparent/mdsal-it-parent/pom.xml
+++ b/odlparent/mdsal-it-parent/pom.xml
@@ -8,7 +8,7 @@
     <parent>
         <groupId>org.opendaylight.controller</groupId>
         <artifactId>mdsal-it-parent</artifactId>
-        <version>1.9.1</version>
+        <version>1.10.3</version>
         <relativePath/>
     </parent>
 
@@ -53,8 +53,8 @@
         <jacoco.version>0.8.5</jacoco.version>
 
         <!-- properties from oparent -->
-        <maven.compiler.source>1.8</maven.compiler.source>
-        <maven.compiler.target>1.8</maven.compiler.target>
+        <maven.compiler.source>8</maven.compiler.source>
+        <maven.compiler.target>8</maven.compiler.target>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
         <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
         <onap.nexus.url>https://nexus.onap.org</onap.nexus.url>
@@ -83,8 +83,8 @@
         <opendaylight.nexus.snapshot-url>https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/</opendaylight.nexus.snapshot-url>
 
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-        <java.version.source>1.8</java.version.source>
-        <java.version.target>1.8</java.version.target>
+        <java.version.source>8</java.version.source>
+        <java.version.target>8</java.version.target>
         <bundle.plugin.version>2.5.0</bundle.plugin.version>
         <maven.compile.plugin.version>2.5.1</maven.compile.plugin.version>
         <features.file>features.xml</features.file>
@@ -110,15 +110,15 @@
         <sdnctl.slipluginutils.version>${ccsdk.sli.core.version}</sdnctl.slipluginutils.version>
 
         <!-- Support libraries used by OpenDaylight -->
-        <odl.controller.mdsal.version>1.9.1</odl.controller.mdsal.version>
-        <odl.mdsal.version>3.0.8</odl.mdsal.version>
-        <odl.mdsal.model.version>1.0.8</odl.mdsal.model.version>
-        <odl.netconf.restconf.version>1.9.1</odl.netconf.restconf.version>
-        <odl.netconf.netconf.version>1.6.1</odl.netconf.netconf.version>
-        <odl.netconf.sal.rest.docgen.version>1.9.1</odl.netconf.sal.rest.docgen.version>
+        <odl.controller.mdsal.version>1.10.3</odl.controller.mdsal.version>
+        <odl.mdsal.version>4.0.14</odl.mdsal.version>
+        <odl.mdsal.model.version>2.0.14</odl.mdsal.model.version>
+        <odl.netconf.restconf.version>1.10.3</odl.netconf.restconf.version>
+        <odl.netconf.netconf.version>1.7.3</odl.netconf.netconf.version>
+        <odl.netconf.sal.rest.docgen.version>1.10.3</odl.netconf.sal.rest.docgen.version>
 
         <!-- Used by aaa, vtn -->
-        <commons.codec.version>1.12</commons.codec.version>
+        <commons.codec.version>1.13</commons.codec.version>
         <!-- Used by netconf, ovsdb -->
         <commons.lang3.version>3.8.1</commons.lang3.version>
         <!-- Used by sfc, snmp4sdn; see also affinity, toolkit -->
@@ -126,7 +126,7 @@
         <!-- Used by neutron; see also controller, vtn -->
         <commons.net.version>3.6</commons.net.version>
         <!-- Used by neutron -->
-        <eclipse.persistence.version>2.7.3</eclipse.persistence.version>
+        <eclipse.persistence.version>2.7.4</eclipse.persistence.version>
         <!-- Used by aaa -->
         <felix.dependencymanager.version>4.4.1</felix.dependencymanager.version>
         <!-- Used by lacp, netconf, ovsdb, sfc, toolkit; see also vtn -->
@@ -135,7 +135,7 @@
         <guava.version>25.1-jre</guava.version>
         <!-- Used by aaa, alto, netconf, ovsdb, sfc; see also affinity, defense4all,
             integration/distribution, snmp4sdn, toolkit, ttp -->
-        <jackson.version>2.9.8</jackson.version>
+        <jackson.version>2.9.10</jackson.version>
         <!-- Used by snmp4sdn, yangtools -->
         <javassist.version>3.24.1-GA</javassist.version>
 
@@ -157,7 +157,7 @@
         <!-- Used by nic, sfc, sxp, tsdr -->
         <mockito.version>1.10.19</mockito.version>
         <!-- Used by bgpcep, netconf, ovsdb, sxp; see also opendove, toolkit -->
-        <netty.version>4.1.34.Final</netty.version>
+        <netty.version>4.1.42.Final</netty.version>
         <!-- Used by openflowjava, persistence, sfc, snmp4sdn, sxp; see also affinity, toolkit -->
         <slf4j.version>1.7.25</slf4j.version>
         <!-- Used in integration/distribution; see also affinity, snmp4sdn, toolkit, tsdr, ttp -->
@@ -418,6 +418,40 @@
                                 </rules>
                             </configuration>
                         </execution>
+                        <execution>
+                            <id>enforce-maven</id>
+                            <goals>
+                            <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                            <rules>
+                                <requireJavaVersion>
+                                <version>8</version>
+                                </requireJavaVersion>
+                                <requireMavenVersion>
+                                <version>[3.5.0,)</version>
+                                </requireMavenVersion>
+                            </rules>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>enforce-banned-dependencies</id>
+                            <goals>
+                            <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                            <rules>
+                                <bannedDependencies>
+                                <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
+                                <excludes>
+                                    <exclude>org.mockito:mockito-all</exclude>
+                <!--                     <exclude>com.google.code.findbugs:annotations</exclude> -->
+                                </excludes>
+                                </bannedDependencies>
+                            </rules>
+                            <fail>true</fail>
+                            </configuration>
+                        </execution>
                     </executions>
                 </plugin>
                 <!-- https://mvnrepository.com/artifact/org.sonarsource.scanner.maven/sonar-maven-plugin -->
@@ -530,10 +564,6 @@
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-site-plugin</artifactId>
             </plugin>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-enforcer-plugin</artifactId>
-            </plugin>
             <!-- end of plugins from oparent version (parent of oparent) -->
 
             <!-- Plugins from oparent -->
@@ -713,6 +743,77 @@
                     </execution>
                 </executions>
             </plugin>
+            <plugin>
+                <artifactId>maven-enforcer-plugin</artifactId>
+                <version>3.0.0-M2</version>
+                <executions>
+                    <execution>
+                        <id>enforce-property</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireProperty>
+                                    <property>onap.nexus.url</property>
+                                    <message>You must set a onap.nexus.url property in your
+                                        ~/.m2/settings.xml. See oparent/settings.xml for an example.</message>
+                                </requireProperty>
+                            </rules>
+                            <fail>true</fail>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-no-snapshots</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireReleaseDeps>
+                                    <failWhenParentIsSnapshot>false</failWhenParentIsSnapshot>
+                                    <onlyWhenRelease>true</onlyWhenRelease>
+                                    <level>WARN</level>
+                                </requireReleaseDeps>
+                            </rules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-maven</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireJavaVersion>
+                                    <version>1.8.0</version>
+                                </requireJavaVersion>
+                                <requireMavenVersion>
+                                    <version>[3.5.0,)</version>
+                                </requireMavenVersion>
+                            </rules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-banned-dependencies</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <bannedDependencies>
+                                    <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
+                                    <excludes>
+                                        <exclude>org.mockito:mockito-all</exclude>
+<!--                                         <exclude>com.google.code.findbugs:annotations</exclude> -->
+                                    </excludes>
+                                </bannedDependencies>
+                            </rules>
+                            <fail>true</fail>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
         </plugins>
     </build>
 
@@ -726,19 +827,6 @@
                     <additionalparam>-Xdoclint:none</additionalparam>
                 </configuration>
             </plugin>
-            <plugin>
-                <groupId>org.jacoco</groupId>
-                <artifactId>jacoco-maven-plugin</artifactId>
-                <version>${jacoco.version}</version>
-                <reportSets>
-                    <reportSet>
-                        <reports>
-                            <!-- select non-aggregate reports -->
-                            <report>report</report>
-                        </reports>
-                    </reportSet>
-                </reportSets>
-            </plugin>
         </plugins>
     </reporting>
 
@@ -1024,13 +1112,14 @@
                     <plugin>
                         <groupId>org.opendaylight.yangtools</groupId>
                         <artifactId>yang-maven-plugin</artifactId>
-                        <version>2.1.8</version>
+                        <version>3.0.11</version>
                         <dependencies>
                             <dependency>
                                 <groupId>org.opendaylight.mdsal</groupId>
                                 <artifactId>maven-sal-api-gen-plugin</artifactId>
                                 <version>${odl.mdsal.model.version}</version>
                                 <type>jar</type>
+                                <scope>compile</scope>
                             </dependency>
                             <dependency>
                                 <groupId>org.opendaylight.netconf</groupId>
diff --git a/odlparent/odlparent-lite/pom.xml b/odlparent/odlparent-lite/pom.xml
index 3477381..f65748d 100644
--- a/odlparent/odlparent-lite/pom.xml
+++ b/odlparent/odlparent-lite/pom.xml
@@ -8,7 +8,7 @@
     <parent>
         <groupId>org.opendaylight.odlparent</groupId>
         <artifactId>odlparent-lite</artifactId>
-        <version>4.0.10</version>
+        <version>5.0.7</version>
         <relativePath/>
     </parent>
 
@@ -53,8 +53,8 @@
         <jacoco.version>0.8.5</jacoco.version>
 
         <!-- properties from oparent -->
-        <maven.compiler.source>1.8</maven.compiler.source>
-        <maven.compiler.target>1.8</maven.compiler.target>
+        <maven.compiler.source>8</maven.compiler.source>
+        <maven.compiler.target>8</maven.compiler.target>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
         <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
         <onap.nexus.url>https://nexus.onap.org</onap.nexus.url>
@@ -83,8 +83,8 @@
         <opendaylight.nexus.snapshot-url>https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/</opendaylight.nexus.snapshot-url>
 
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-        <java.version.source>1.8</java.version.source>
-        <java.version.target>1.8</java.version.target>
+        <java.version.source>8</java.version.source>
+        <java.version.target>8</java.version.target>
         <bundle.plugin.version>2.5.0</bundle.plugin.version>
         <maven.compile.plugin.version>2.5.1</maven.compile.plugin.version>
         <features.file>features.xml</features.file>
@@ -110,15 +110,15 @@
         <sdnctl.slipluginutils.version>${ccsdk.sli.core.version}</sdnctl.slipluginutils.version>
 
         <!-- Support libraries used by OpenDaylight -->
-        <odl.controller.mdsal.version>1.9.1</odl.controller.mdsal.version>
-        <odl.mdsal.version>3.0.8</odl.mdsal.version>
-        <odl.mdsal.model.version>1.0.8</odl.mdsal.model.version>
-        <odl.netconf.restconf.version>1.9.1</odl.netconf.restconf.version>
-        <odl.netconf.netconf.version>1.6.1</odl.netconf.netconf.version>
-        <odl.netconf.sal.rest.docgen.version>1.9.1</odl.netconf.sal.rest.docgen.version>
+        <odl.controller.mdsal.version>1.10.3</odl.controller.mdsal.version>
+        <odl.mdsal.version>4.0.14</odl.mdsal.version>
+        <odl.mdsal.model.version>2.0.14</odl.mdsal.model.version>
+        <odl.netconf.restconf.version>1.10.3</odl.netconf.restconf.version>
+        <odl.netconf.netconf.version>1.7.3</odl.netconf.netconf.version>
+        <odl.netconf.sal.rest.docgen.version>1.10.3</odl.netconf.sal.rest.docgen.version>
 
         <!-- Used by aaa, vtn -->
-        <commons.codec.version>1.12</commons.codec.version>
+        <commons.codec.version>1.13</commons.codec.version>
         <!-- Used by netconf, ovsdb -->
         <commons.lang3.version>3.8.1</commons.lang3.version>
         <!-- Used by sfc, snmp4sdn; see also affinity, toolkit -->
@@ -126,7 +126,7 @@
         <!-- Used by neutron; see also controller, vtn -->
         <commons.net.version>3.6</commons.net.version>
         <!-- Used by neutron -->
-        <eclipse.persistence.version>2.7.3</eclipse.persistence.version>
+        <eclipse.persistence.version>2.7.4</eclipse.persistence.version>
         <!-- Used by aaa -->
         <felix.dependencymanager.version>4.4.1</felix.dependencymanager.version>
         <!-- Used by lacp, netconf, ovsdb, sfc, toolkit; see also vtn -->
@@ -135,7 +135,7 @@
         <guava.version>25.1-jre</guava.version>
         <!-- Used by aaa, alto, netconf, ovsdb, sfc; see also affinity, defense4all,
             integration/distribution, snmp4sdn, toolkit, ttp -->
-        <jackson.version>2.9.8</jackson.version>
+        <jackson.version>2.9.10</jackson.version>
         <!-- Used by snmp4sdn, yangtools -->
         <javassist.version>3.24.1-GA</javassist.version>
 
@@ -157,7 +157,7 @@
         <!-- Used by nic, sfc, sxp, tsdr -->
         <mockito.version>1.10.19</mockito.version>
         <!-- Used by bgpcep, netconf, ovsdb, sxp; see also opendove, toolkit -->
-        <netty.version>4.1.34.Final</netty.version>
+        <netty.version>4.1.42.Final</netty.version>
         <!-- Used by openflowjava, persistence, sfc, snmp4sdn, sxp; see also affinity, toolkit -->
         <slf4j.version>1.7.25</slf4j.version>
         <!-- Used in integration/distribution; see also affinity, snmp4sdn, toolkit, tsdr, ttp -->
@@ -418,6 +418,40 @@
                                 </rules>
                             </configuration>
                         </execution>
+                        <execution>
+                            <id>enforce-maven</id>
+                            <goals>
+                            <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                            <rules>
+                                <requireJavaVersion>
+                                <version>8</version>
+                                </requireJavaVersion>
+                                <requireMavenVersion>
+                                <version>[3.5.0,)</version>
+                                </requireMavenVersion>
+                            </rules>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>enforce-banned-dependencies</id>
+                            <goals>
+                            <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                            <rules>
+                                <bannedDependencies>
+                                <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
+                                <excludes>
+                                    <exclude>org.mockito:mockito-all</exclude>
+                <!--                     <exclude>com.google.code.findbugs:annotations</exclude> -->
+                                </excludes>
+                                </bannedDependencies>
+                            </rules>
+                            <fail>true</fail>
+                            </configuration>
+                        </execution>
                     </executions>
                 </plugin>
                 <!-- https://mvnrepository.com/artifact/org.sonarsource.scanner.maven/sonar-maven-plugin -->
@@ -530,10 +564,6 @@
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-site-plugin</artifactId>
             </plugin>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-enforcer-plugin</artifactId>
-            </plugin>
             <!-- end of plugins from oparent version (parent of oparent) -->
 
             <!-- Plugins from oparent -->
@@ -713,6 +743,77 @@
                     </execution>
                 </executions>
             </plugin>
+            <plugin>
+                <artifactId>maven-enforcer-plugin</artifactId>
+                <version>3.0.0-M2</version>
+                <executions>
+                    <execution>
+                        <id>enforce-property</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireProperty>
+                                    <property>onap.nexus.url</property>
+                                    <message>You must set a onap.nexus.url property in your
+                                        ~/.m2/settings.xml. See oparent/settings.xml for an example.</message>
+                                </requireProperty>
+                            </rules>
+                            <fail>true</fail>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-no-snapshots</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireReleaseDeps>
+                                    <failWhenParentIsSnapshot>false</failWhenParentIsSnapshot>
+                                    <onlyWhenRelease>true</onlyWhenRelease>
+                                    <level>WARN</level>
+                                </requireReleaseDeps>
+                            </rules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-maven</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireJavaVersion>
+                                    <version>1.8.0</version>
+                                </requireJavaVersion>
+                                <requireMavenVersion>
+                                    <version>[3.5.0,)</version>
+                                </requireMavenVersion>
+                            </rules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-banned-dependencies</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <bannedDependencies>
+                                    <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
+                                    <excludes>
+                                        <exclude>org.mockito:mockito-all</exclude>
+<!--                                         <exclude>com.google.code.findbugs:annotations</exclude> -->
+                                    </excludes>
+                                </bannedDependencies>
+                            </rules>
+                            <fail>true</fail>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
         </plugins>
     </build>
 
@@ -726,19 +827,6 @@
                     <additionalparam>-Xdoclint:none</additionalparam>
                 </configuration>
             </plugin>
-            <plugin>
-                <groupId>org.jacoco</groupId>
-                <artifactId>jacoco-maven-plugin</artifactId>
-                <version>${jacoco.version}</version>
-                <reportSets>
-                    <reportSet>
-                        <reports>
-                            <!-- select non-aggregate reports -->
-                            <report>report</report>
-                        </reports>
-                    </reportSet>
-                </reportSets>
-            </plugin>
         </plugins>
     </reporting>
 
@@ -1024,13 +1112,14 @@
                     <plugin>
                         <groupId>org.opendaylight.yangtools</groupId>
                         <artifactId>yang-maven-plugin</artifactId>
-                        <version>2.1.8</version>
+                        <version>3.0.11</version>
                         <dependencies>
                             <dependency>
                                 <groupId>org.opendaylight.mdsal</groupId>
                                 <artifactId>maven-sal-api-gen-plugin</artifactId>
                                 <version>${odl.mdsal.model.version}</version>
                                 <type>jar</type>
+                                <scope>compile</scope>
                             </dependency>
                             <dependency>
                                 <groupId>org.opendaylight.netconf</groupId>
diff --git a/odlparent/odlparent/pom.xml b/odlparent/odlparent/pom.xml
index 9a20a1c..f2bcf94 100644
--- a/odlparent/odlparent/pom.xml
+++ b/odlparent/odlparent/pom.xml
@@ -8,7 +8,7 @@
     <parent>
         <groupId>org.opendaylight.odlparent</groupId>
         <artifactId>odlparent</artifactId>
-        <version>4.0.10</version>
+        <version>5.0.7</version>
         <relativePath/>
     </parent>
 
@@ -53,8 +53,8 @@
         <jacoco.version>0.8.5</jacoco.version>
 
         <!-- properties from oparent -->
-        <maven.compiler.source>1.8</maven.compiler.source>
-        <maven.compiler.target>1.8</maven.compiler.target>
+        <maven.compiler.source>8</maven.compiler.source>
+        <maven.compiler.target>8</maven.compiler.target>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
         <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
         <onap.nexus.url>https://nexus.onap.org</onap.nexus.url>
@@ -83,8 +83,8 @@
         <opendaylight.nexus.snapshot-url>https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/</opendaylight.nexus.snapshot-url>
 
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-        <java.version.source>1.8</java.version.source>
-        <java.version.target>1.8</java.version.target>
+        <java.version.source>8</java.version.source>
+        <java.version.target>8</java.version.target>
         <bundle.plugin.version>2.5.0</bundle.plugin.version>
         <maven.compile.plugin.version>2.5.1</maven.compile.plugin.version>
         <features.file>features.xml</features.file>
@@ -110,15 +110,15 @@
         <sdnctl.slipluginutils.version>${ccsdk.sli.core.version}</sdnctl.slipluginutils.version>
 
         <!-- Support libraries used by OpenDaylight -->
-        <odl.controller.mdsal.version>1.9.1</odl.controller.mdsal.version>
-        <odl.mdsal.version>3.0.8</odl.mdsal.version>
-        <odl.mdsal.model.version>1.0.8</odl.mdsal.model.version>
-        <odl.netconf.restconf.version>1.9.1</odl.netconf.restconf.version>
-        <odl.netconf.netconf.version>1.6.1</odl.netconf.netconf.version>
-        <odl.netconf.sal.rest.docgen.version>1.9.1</odl.netconf.sal.rest.docgen.version>
+        <odl.controller.mdsal.version>1.10.3</odl.controller.mdsal.version>
+        <odl.mdsal.version>4.0.14</odl.mdsal.version>
+        <odl.mdsal.model.version>2.0.14</odl.mdsal.model.version>
+        <odl.netconf.restconf.version>1.10.3</odl.netconf.restconf.version>
+        <odl.netconf.netconf.version>1.7.3</odl.netconf.netconf.version>
+        <odl.netconf.sal.rest.docgen.version>1.10.3</odl.netconf.sal.rest.docgen.version>
 
         <!-- Used by aaa, vtn -->
-        <commons.codec.version>1.12</commons.codec.version>
+        <commons.codec.version>1.13</commons.codec.version>
         <!-- Used by netconf, ovsdb -->
         <commons.lang3.version>3.8.1</commons.lang3.version>
         <!-- Used by sfc, snmp4sdn; see also affinity, toolkit -->
@@ -126,7 +126,7 @@
         <!-- Used by neutron; see also controller, vtn -->
         <commons.net.version>3.6</commons.net.version>
         <!-- Used by neutron -->
-        <eclipse.persistence.version>2.7.3</eclipse.persistence.version>
+        <eclipse.persistence.version>2.7.4</eclipse.persistence.version>
         <!-- Used by aaa -->
         <felix.dependencymanager.version>4.4.1</felix.dependencymanager.version>
         <!-- Used by lacp, netconf, ovsdb, sfc, toolkit; see also vtn -->
@@ -135,7 +135,7 @@
         <guava.version>25.1-jre</guava.version>
         <!-- Used by aaa, alto, netconf, ovsdb, sfc; see also affinity, defense4all,
             integration/distribution, snmp4sdn, toolkit, ttp -->
-        <jackson.version>2.9.8</jackson.version>
+        <jackson.version>2.9.10</jackson.version>
         <!-- Used by snmp4sdn, yangtools -->
         <javassist.version>3.24.1-GA</javassist.version>
 
@@ -157,7 +157,7 @@
         <!-- Used by nic, sfc, sxp, tsdr -->
         <mockito.version>1.10.19</mockito.version>
         <!-- Used by bgpcep, netconf, ovsdb, sxp; see also opendove, toolkit -->
-        <netty.version>4.1.34.Final</netty.version>
+        <netty.version>4.1.42.Final</netty.version>
         <!-- Used by openflowjava, persistence, sfc, snmp4sdn, sxp; see also affinity, toolkit -->
         <slf4j.version>1.7.25</slf4j.version>
         <!-- Used in integration/distribution; see also affinity, snmp4sdn, toolkit, tsdr, ttp -->
@@ -418,6 +418,40 @@
                                 </rules>
                             </configuration>
                         </execution>
+                        <execution>
+                            <id>enforce-maven</id>
+                            <goals>
+                            <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                            <rules>
+                                <requireJavaVersion>
+                                <version>8</version>
+                                </requireJavaVersion>
+                                <requireMavenVersion>
+                                <version>[3.5.0,)</version>
+                                </requireMavenVersion>
+                            </rules>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>enforce-banned-dependencies</id>
+                            <goals>
+                            <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                            <rules>
+                                <bannedDependencies>
+                                <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
+                                <excludes>
+                                    <exclude>org.mockito:mockito-all</exclude>
+                <!--                     <exclude>com.google.code.findbugs:annotations</exclude> -->
+                                </excludes>
+                                </bannedDependencies>
+                            </rules>
+                            <fail>true</fail>
+                            </configuration>
+                        </execution>
                     </executions>
                 </plugin>
                 <!-- https://mvnrepository.com/artifact/org.sonarsource.scanner.maven/sonar-maven-plugin -->
@@ -530,10 +564,6 @@
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-site-plugin</artifactId>
             </plugin>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-enforcer-plugin</artifactId>
-            </plugin>
             <!-- end of plugins from oparent version (parent of oparent) -->
 
             <!-- Plugins from oparent -->
@@ -713,6 +743,77 @@
                     </execution>
                 </executions>
             </plugin>
+            <plugin>
+                <artifactId>maven-enforcer-plugin</artifactId>
+                <version>3.0.0-M2</version>
+                <executions>
+                    <execution>
+                        <id>enforce-property</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireProperty>
+                                    <property>onap.nexus.url</property>
+                                    <message>You must set a onap.nexus.url property in your
+                                        ~/.m2/settings.xml. See oparent/settings.xml for an example.</message>
+                                </requireProperty>
+                            </rules>
+                            <fail>true</fail>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-no-snapshots</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireReleaseDeps>
+                                    <failWhenParentIsSnapshot>false</failWhenParentIsSnapshot>
+                                    <onlyWhenRelease>true</onlyWhenRelease>
+                                    <level>WARN</level>
+                                </requireReleaseDeps>
+                            </rules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-maven</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireJavaVersion>
+                                    <version>1.8.0</version>
+                                </requireJavaVersion>
+                                <requireMavenVersion>
+                                    <version>[3.5.0,)</version>
+                                </requireMavenVersion>
+                            </rules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-banned-dependencies</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <bannedDependencies>
+                                    <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
+                                    <excludes>
+                                        <exclude>org.mockito:mockito-all</exclude>
+<!--                                         <exclude>com.google.code.findbugs:annotations</exclude> -->
+                                    </excludes>
+                                </bannedDependencies>
+                            </rules>
+                            <fail>true</fail>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
         </plugins>
     </build>
 
@@ -726,19 +827,6 @@
                     <additionalparam>-Xdoclint:none</additionalparam>
                 </configuration>
             </plugin>
-            <plugin>
-                <groupId>org.jacoco</groupId>
-                <artifactId>jacoco-maven-plugin</artifactId>
-                <version>${jacoco.version}</version>
-                <reportSets>
-                    <reportSet>
-                        <reports>
-                            <!-- select non-aggregate reports -->
-                            <report>report</report>
-                        </reports>
-                    </reportSet>
-                </reportSets>
-            </plugin>
         </plugins>
     </reporting>
 
@@ -1024,13 +1112,14 @@
                     <plugin>
                         <groupId>org.opendaylight.yangtools</groupId>
                         <artifactId>yang-maven-plugin</artifactId>
-                        <version>2.1.8</version>
+                        <version>3.0.11</version>
                         <dependencies>
                             <dependency>
                                 <groupId>org.opendaylight.mdsal</groupId>
                                 <artifactId>maven-sal-api-gen-plugin</artifactId>
                                 <version>${odl.mdsal.model.version}</version>
                                 <type>jar</type>
+                                <scope>compile</scope>
                             </dependency>
                             <dependency>
                                 <groupId>org.opendaylight.netconf</groupId>
diff --git a/odlparent/setup/pom.xml b/odlparent/setup/pom.xml
index e3e5e2b..1ea5396 100755
--- a/odlparent/setup/pom.xml
+++ b/odlparent/setup/pom.xml
@@ -44,6 +44,7 @@
                             <filters>
                                 <filter>${basedir}/src/main/properties/binding-parent.properties</filter>
                             </filters>
+                            <encoding>UTF-8</encoding>
                         </configuration>
                     </execution>
                     <execution>
@@ -67,6 +68,7 @@
                             <filters>
                                 <filter>${basedir}/src/main/properties/bundle-parent.properties</filter>
                             </filters>
+                            <encoding>UTF-8</encoding>
                         </configuration>
                     </execution>
                     <execution>
@@ -90,6 +92,7 @@
                             <filters>
                                 <filter>${basedir}/src/main/properties/feature-repo-parent.properties</filter>
                             </filters>
+                             <encoding>UTF-8</encoding>
                         </configuration>
                     </execution>
                     <execution>
@@ -113,6 +116,7 @@
                             <filters>
                                 <filter>${basedir}/src/main/properties/karaf4-parent.properties</filter>
                             </filters>
+                            <encoding>UTF-8</encoding>
                         </configuration>
                     </execution>
                     <execution>
@@ -136,6 +140,7 @@
                             <filters>
                                 <filter>${basedir}/src/main/properties/mdsal-it-parent.properties</filter>
                             </filters>
+                            <encoding>UTF-8</encoding>
                         </configuration>
                     </execution>
                     <execution>
@@ -159,6 +164,7 @@
                             <filters>
                                 <filter>${basedir}/src/main/properties/odlparent.properties</filter>
                             </filters>
+                            <encoding>UTF-8</encoding>
                         </configuration>
                     </execution>
                     <execution>
@@ -182,6 +188,7 @@
                             <filters>
                                 <filter>${basedir}/src/main/properties/odlparent-lite.properties</filter>
                             </filters>
+                            <encoding>UTF-8</encoding>
                         </configuration>
                     </execution>
                     <execution>
@@ -205,6 +212,7 @@
                             <filters>
                                 <filter>${basedir}/src/main/properties/single-feature-parent.properties</filter>
                             </filters>
+                            <encoding>UTF-8</encoding>
                         </configuration>
                     </execution>
                 </executions>
@@ -223,6 +231,7 @@
                         <configuration>
                             <sourceFile>../binding-parent/pom-template.xml</sourceFile>
                             <destinationFile>../binding-parent/pom.xml</destinationFile>
+                            
                         </configuration>
                     </execution>
                     <execution>
diff --git a/odlparent/setup/src/main/properties/binding-parent.properties b/odlparent/setup/src/main/properties/binding-parent.properties
index f6d5251..7cf6550 100644
--- a/odlparent/setup/src/main/properties/binding-parent.properties
+++ b/odlparent/setup/src/main/properties/binding-parent.properties
@@ -1,3 +1,3 @@
 odlparent.artifactId=binding-parent
 odlparent.groupId=org.opendaylight.mdsal
-odlparent.version=3.0.8
\ No newline at end of file
+odlparent.version=4.0.14
\ No newline at end of file
diff --git a/odlparent/setup/src/main/properties/bundle-parent.properties b/odlparent/setup/src/main/properties/bundle-parent.properties
index 8bba806..3fe8c8c 100644
--- a/odlparent/setup/src/main/properties/bundle-parent.properties
+++ b/odlparent/setup/src/main/properties/bundle-parent.properties
@@ -1,3 +1,3 @@
 odlparent.artifactId=bundle-parent
 odlparent.groupId=org.opendaylight.odlparent
-odlparent.version=4.0.10
+odlparent.version=5.0.7
diff --git a/odlparent/setup/src/main/properties/feature-repo-parent.properties b/odlparent/setup/src/main/properties/feature-repo-parent.properties
index 92c2fcf..3896b1b 100644
--- a/odlparent/setup/src/main/properties/feature-repo-parent.properties
+++ b/odlparent/setup/src/main/properties/feature-repo-parent.properties
@@ -1,3 +1,3 @@
 odlparent.artifactId=feature-repo-parent
 odlparent.groupId=org.opendaylight.odlparent
-odlparent.version=4.0.10
+odlparent.version=5.0.7
diff --git a/odlparent/setup/src/main/properties/karaf4-parent.properties b/odlparent/setup/src/main/properties/karaf4-parent.properties
index 5be7cc1..7d77244 100644
--- a/odlparent/setup/src/main/properties/karaf4-parent.properties
+++ b/odlparent/setup/src/main/properties/karaf4-parent.properties
@@ -1,3 +1,3 @@
 odlparent.artifactId=karaf4-parent
 odlparent.groupId=org.opendaylight.odlparent
-odlparent.version=4.0.10
+odlparent.version=5.0.7
diff --git a/odlparent/setup/src/main/properties/mdsal-it-parent.properties b/odlparent/setup/src/main/properties/mdsal-it-parent.properties
index acb5ec7..5612720 100644
--- a/odlparent/setup/src/main/properties/mdsal-it-parent.properties
+++ b/odlparent/setup/src/main/properties/mdsal-it-parent.properties
@@ -1,3 +1,3 @@
 odlparent.artifactId=mdsal-it-parent
 odlparent.groupId=org.opendaylight.controller
-odlparent.version=1.9.1
+odlparent.version=1.10.3
diff --git a/odlparent/setup/src/main/properties/odlparent-lite.properties b/odlparent/setup/src/main/properties/odlparent-lite.properties
index e57359b..1c175aa 100644
--- a/odlparent/setup/src/main/properties/odlparent-lite.properties
+++ b/odlparent/setup/src/main/properties/odlparent-lite.properties
@@ -1,3 +1,3 @@
 odlparent.artifactId=odlparent-lite
 odlparent.groupId=org.opendaylight.odlparent
-odlparent.version=4.0.10
+odlparent.version=5.0.7
diff --git a/odlparent/setup/src/main/properties/odlparent.properties b/odlparent/setup/src/main/properties/odlparent.properties
index 8341a6f..36ebb66 100644
--- a/odlparent/setup/src/main/properties/odlparent.properties
+++ b/odlparent/setup/src/main/properties/odlparent.properties
@@ -1,3 +1,3 @@
 odlparent.artifactId=odlparent
 odlparent.groupId=org.opendaylight.odlparent
-odlparent.version=4.0.10
+odlparent.version=5.0.7
diff --git a/odlparent/setup/src/main/properties/single-feature-parent.properties b/odlparent/setup/src/main/properties/single-feature-parent.properties
index 70c1c4c..7d91c00 100644
--- a/odlparent/setup/src/main/properties/single-feature-parent.properties
+++ b/odlparent/setup/src/main/properties/single-feature-parent.properties
@@ -1,3 +1,3 @@
 odlparent.artifactId=single-feature-parent
 odlparent.groupId=org.opendaylight.odlparent
-odlparent.version=4.0.10
+odlparent.version=5.0.7
diff --git a/odlparent/setup/src/main/resources/pom-template.xml b/odlparent/setup/src/main/resources/pom-template.xml
index 81f4bec..7130756 100755
--- a/odlparent/setup/src/main/resources/pom-template.xml
+++ b/odlparent/setup/src/main/resources/pom-template.xml
@@ -53,8 +53,8 @@
         <jacoco.version>0.8.5</jacoco.version>
 
         <!-- properties from oparent -->
-        <maven.compiler.source>1.8</maven.compiler.source>
-        <maven.compiler.target>1.8</maven.compiler.target>
+        <maven.compiler.source>8</maven.compiler.source>
+        <maven.compiler.target>8</maven.compiler.target>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
         <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
         <onap.nexus.url>https://nexus.onap.org</onap.nexus.url>
@@ -83,8 +83,8 @@
         <opendaylight.nexus.snapshot-url>https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/</opendaylight.nexus.snapshot-url>
 
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-        <java.version.source>1.8</java.version.source>
-        <java.version.target>1.8</java.version.target>
+        <java.version.source>8</java.version.source>
+        <java.version.target>8</java.version.target>
         <bundle.plugin.version>2.5.0</bundle.plugin.version>
         <maven.compile.plugin.version>2.5.1</maven.compile.plugin.version>
         <features.file>features.xml</features.file>
@@ -110,15 +110,15 @@
         <sdnctl.slipluginutils.version>\${ccsdk.sli.core.version}</sdnctl.slipluginutils.version>
 
         <!-- Support libraries used by OpenDaylight -->
-        <odl.controller.mdsal.version>1.9.1</odl.controller.mdsal.version>
-        <odl.mdsal.version>3.0.8</odl.mdsal.version>
-        <odl.mdsal.model.version>1.0.8</odl.mdsal.model.version>
-        <odl.netconf.restconf.version>1.9.1</odl.netconf.restconf.version>
-        <odl.netconf.netconf.version>1.6.1</odl.netconf.netconf.version>
-        <odl.netconf.sal.rest.docgen.version>1.9.1</odl.netconf.sal.rest.docgen.version>
+        <odl.controller.mdsal.version>1.10.3</odl.controller.mdsal.version>
+        <odl.mdsal.version>4.0.14</odl.mdsal.version>
+        <odl.mdsal.model.version>2.0.14</odl.mdsal.model.version>
+        <odl.netconf.restconf.version>1.10.3</odl.netconf.restconf.version>
+        <odl.netconf.netconf.version>1.7.3</odl.netconf.netconf.version>
+        <odl.netconf.sal.rest.docgen.version>1.10.3</odl.netconf.sal.rest.docgen.version>
 
         <!-- Used by aaa, vtn -->
-        <commons.codec.version>1.12</commons.codec.version>
+        <commons.codec.version>1.13</commons.codec.version>
         <!-- Used by netconf, ovsdb -->
         <commons.lang3.version>3.8.1</commons.lang3.version>
         <!-- Used by sfc, snmp4sdn; see also affinity, toolkit -->
@@ -126,7 +126,7 @@
         <!-- Used by neutron; see also controller, vtn -->
         <commons.net.version>3.6</commons.net.version>
         <!-- Used by neutron -->
-        <eclipse.persistence.version>2.7.3</eclipse.persistence.version>
+        <eclipse.persistence.version>2.7.4</eclipse.persistence.version>
         <!-- Used by aaa -->
         <felix.dependencymanager.version>4.4.1</felix.dependencymanager.version>
         <!-- Used by lacp, netconf, ovsdb, sfc, toolkit; see also vtn -->
@@ -135,7 +135,7 @@
         <guava.version>25.1-jre</guava.version>
         <!-- Used by aaa, alto, netconf, ovsdb, sfc; see also affinity, defense4all,
             integration/distribution, snmp4sdn, toolkit, ttp -->
-        <jackson.version>2.9.8</jackson.version>
+        <jackson.version>2.9.10</jackson.version>
         <!-- Used by snmp4sdn, yangtools -->
         <javassist.version>3.24.1-GA</javassist.version>
 
@@ -157,7 +157,7 @@
         <!-- Used by nic, sfc, sxp, tsdr -->
         <mockito.version>1.10.19</mockito.version>
         <!-- Used by bgpcep, netconf, ovsdb, sxp; see also opendove, toolkit -->
-        <netty.version>4.1.34.Final</netty.version>
+        <netty.version>4.1.42.Final</netty.version>
         <!-- Used by openflowjava, persistence, sfc, snmp4sdn, sxp; see also affinity, toolkit -->
         <slf4j.version>1.7.25</slf4j.version>
         <!-- Used in integration/distribution; see also affinity, snmp4sdn, toolkit, tsdr, ttp -->
@@ -418,6 +418,40 @@
                                 </rules>
                             </configuration>
                         </execution>
+                        <execution>
+                            <id>enforce-maven</id>
+                            <goals>
+                            <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                            <rules>
+                                <requireJavaVersion>
+                                <version>8</version>
+                                </requireJavaVersion>
+                                <requireMavenVersion>
+                                <version>[3.5.0,)</version>
+                                </requireMavenVersion>
+                            </rules>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>enforce-banned-dependencies</id>
+                            <goals>
+                            <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                            <rules>
+                                <bannedDependencies>
+                                <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
+                                <excludes>
+                                    <exclude>org.mockito:mockito-all</exclude>
+                <!--                     <exclude>com.google.code.findbugs:annotations</exclude> -->
+                                </excludes>
+                                </bannedDependencies>
+                            </rules>
+                            <fail>true</fail>
+                            </configuration>
+                        </execution>
                     </executions>
                 </plugin>
                 <!-- https://mvnrepository.com/artifact/org.sonarsource.scanner.maven/sonar-maven-plugin -->
@@ -530,10 +564,6 @@
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-site-plugin</artifactId>
             </plugin>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-enforcer-plugin</artifactId>
-            </plugin>
             <!-- end of plugins from oparent version (parent of oparent) -->
 
             <!-- Plugins from oparent -->
@@ -713,6 +743,77 @@
                     </execution>
                 </executions>
             </plugin>
+            <plugin>
+                <artifactId>maven-enforcer-plugin</artifactId>
+                <version>3.0.0-M2</version>
+                <executions>
+                    <execution>
+                        <id>enforce-property</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireProperty>
+                                    <property>onap.nexus.url</property>
+                                    <message>You must set a onap.nexus.url property in your
+                                        ~/.m2/settings.xml. See oparent/settings.xml for an example.</message>
+                                </requireProperty>
+                            </rules>
+                            <fail>true</fail>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-no-snapshots</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireReleaseDeps>
+                                    <failWhenParentIsSnapshot>false</failWhenParentIsSnapshot>
+                                    <onlyWhenRelease>true</onlyWhenRelease>
+                                    <level>WARN</level>
+                                </requireReleaseDeps>
+                            </rules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-maven</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireJavaVersion>
+                                    <version>1.8.0</version>
+                                </requireJavaVersion>
+                                <requireMavenVersion>
+                                    <version>[3.5.0,)</version>
+                                </requireMavenVersion>
+                            </rules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-banned-dependencies</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <bannedDependencies>
+                                    <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
+                                    <excludes>
+                                        <exclude>org.mockito:mockito-all</exclude>
+<!--                                         <exclude>com.google.code.findbugs:annotations</exclude> -->
+                                    </excludes>
+                                </bannedDependencies>
+                            </rules>
+                            <fail>true</fail>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
         </plugins>
     </build>
 
@@ -726,19 +827,6 @@
                     <additionalparam>-Xdoclint:none</additionalparam>
                 </configuration>
             </plugin>
-            <plugin>
-                <groupId>org.jacoco</groupId>
-                <artifactId>jacoco-maven-plugin</artifactId>
-                <version>\${jacoco.version}</version>
-                <reportSets>
-                    <reportSet>
-                        <reports>
-                            <!-- select non-aggregate reports -->
-                            <report>report</report>
-                        </reports>
-                    </reportSet>
-                </reportSets>
-            </plugin>
         </plugins>
     </reporting>
 
@@ -1024,13 +1112,14 @@
                     <plugin>
                         <groupId>org.opendaylight.yangtools</groupId>
                         <artifactId>yang-maven-plugin</artifactId>
-                        <version>2.1.8</version>
+                        <version>3.0.11</version>
                         <dependencies>
                             <dependency>
                                 <groupId>org.opendaylight.mdsal</groupId>
                                 <artifactId>maven-sal-api-gen-plugin</artifactId>
                                 <version>\${odl.mdsal.model.version}</version>
                                 <type>jar</type>
+                                <scope>compile</scope>
                             </dependency>
                             <dependency>
                                 <groupId>org.opendaylight.netconf</groupId>
diff --git a/odlparent/single-feature-parent/pom.xml b/odlparent/single-feature-parent/pom.xml
index 9aec6ac..4109af7 100644
--- a/odlparent/single-feature-parent/pom.xml
+++ b/odlparent/single-feature-parent/pom.xml
@@ -8,7 +8,7 @@
     <parent>
         <groupId>org.opendaylight.odlparent</groupId>
         <artifactId>single-feature-parent</artifactId>
-        <version>4.0.10</version>
+        <version>5.0.7</version>
         <relativePath/>
     </parent>
 
@@ -53,8 +53,8 @@
         <jacoco.version>0.8.5</jacoco.version>
 
         <!-- properties from oparent -->
-        <maven.compiler.source>1.8</maven.compiler.source>
-        <maven.compiler.target>1.8</maven.compiler.target>
+        <maven.compiler.source>8</maven.compiler.source>
+        <maven.compiler.target>8</maven.compiler.target>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
         <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
         <onap.nexus.url>https://nexus.onap.org</onap.nexus.url>
@@ -83,8 +83,8 @@
         <opendaylight.nexus.snapshot-url>https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/</opendaylight.nexus.snapshot-url>
 
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-        <java.version.source>1.8</java.version.source>
-        <java.version.target>1.8</java.version.target>
+        <java.version.source>8</java.version.source>
+        <java.version.target>8</java.version.target>
         <bundle.plugin.version>2.5.0</bundle.plugin.version>
         <maven.compile.plugin.version>2.5.1</maven.compile.plugin.version>
         <features.file>features.xml</features.file>
@@ -110,15 +110,15 @@
         <sdnctl.slipluginutils.version>${ccsdk.sli.core.version}</sdnctl.slipluginutils.version>
 
         <!-- Support libraries used by OpenDaylight -->
-        <odl.controller.mdsal.version>1.9.1</odl.controller.mdsal.version>
-        <odl.mdsal.version>3.0.8</odl.mdsal.version>
-        <odl.mdsal.model.version>1.0.8</odl.mdsal.model.version>
-        <odl.netconf.restconf.version>1.9.1</odl.netconf.restconf.version>
-        <odl.netconf.netconf.version>1.6.1</odl.netconf.netconf.version>
-        <odl.netconf.sal.rest.docgen.version>1.9.1</odl.netconf.sal.rest.docgen.version>
+        <odl.controller.mdsal.version>1.10.3</odl.controller.mdsal.version>
+        <odl.mdsal.version>4.0.14</odl.mdsal.version>
+        <odl.mdsal.model.version>2.0.14</odl.mdsal.model.version>
+        <odl.netconf.restconf.version>1.10.3</odl.netconf.restconf.version>
+        <odl.netconf.netconf.version>1.7.3</odl.netconf.netconf.version>
+        <odl.netconf.sal.rest.docgen.version>1.10.3</odl.netconf.sal.rest.docgen.version>
 
         <!-- Used by aaa, vtn -->
-        <commons.codec.version>1.12</commons.codec.version>
+        <commons.codec.version>1.13</commons.codec.version>
         <!-- Used by netconf, ovsdb -->
         <commons.lang3.version>3.8.1</commons.lang3.version>
         <!-- Used by sfc, snmp4sdn; see also affinity, toolkit -->
@@ -126,7 +126,7 @@
         <!-- Used by neutron; see also controller, vtn -->
         <commons.net.version>3.6</commons.net.version>
         <!-- Used by neutron -->
-        <eclipse.persistence.version>2.7.3</eclipse.persistence.version>
+        <eclipse.persistence.version>2.7.4</eclipse.persistence.version>
         <!-- Used by aaa -->
         <felix.dependencymanager.version>4.4.1</felix.dependencymanager.version>
         <!-- Used by lacp, netconf, ovsdb, sfc, toolkit; see also vtn -->
@@ -135,7 +135,7 @@
         <guava.version>25.1-jre</guava.version>
         <!-- Used by aaa, alto, netconf, ovsdb, sfc; see also affinity, defense4all,
             integration/distribution, snmp4sdn, toolkit, ttp -->
-        <jackson.version>2.9.8</jackson.version>
+        <jackson.version>2.9.10</jackson.version>
         <!-- Used by snmp4sdn, yangtools -->
         <javassist.version>3.24.1-GA</javassist.version>
 
@@ -157,7 +157,7 @@
         <!-- Used by nic, sfc, sxp, tsdr -->
         <mockito.version>1.10.19</mockito.version>
         <!-- Used by bgpcep, netconf, ovsdb, sxp; see also opendove, toolkit -->
-        <netty.version>4.1.34.Final</netty.version>
+        <netty.version>4.1.42.Final</netty.version>
         <!-- Used by openflowjava, persistence, sfc, snmp4sdn, sxp; see also affinity, toolkit -->
         <slf4j.version>1.7.25</slf4j.version>
         <!-- Used in integration/distribution; see also affinity, snmp4sdn, toolkit, tsdr, ttp -->
@@ -418,6 +418,40 @@
                                 </rules>
                             </configuration>
                         </execution>
+                        <execution>
+                            <id>enforce-maven</id>
+                            <goals>
+                            <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                            <rules>
+                                <requireJavaVersion>
+                                <version>8</version>
+                                </requireJavaVersion>
+                                <requireMavenVersion>
+                                <version>[3.5.0,)</version>
+                                </requireMavenVersion>
+                            </rules>
+                            </configuration>
+                        </execution>
+                        <execution>
+                            <id>enforce-banned-dependencies</id>
+                            <goals>
+                            <goal>enforce</goal>
+                            </goals>
+                            <configuration>
+                            <rules>
+                                <bannedDependencies>
+                                <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
+                                <excludes>
+                                    <exclude>org.mockito:mockito-all</exclude>
+                <!--                     <exclude>com.google.code.findbugs:annotations</exclude> -->
+                                </excludes>
+                                </bannedDependencies>
+                            </rules>
+                            <fail>true</fail>
+                            </configuration>
+                        </execution>
                     </executions>
                 </plugin>
                 <!-- https://mvnrepository.com/artifact/org.sonarsource.scanner.maven/sonar-maven-plugin -->
@@ -530,10 +564,6 @@
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-site-plugin</artifactId>
             </plugin>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-enforcer-plugin</artifactId>
-            </plugin>
             <!-- end of plugins from oparent version (parent of oparent) -->
 
             <!-- Plugins from oparent -->
@@ -713,6 +743,77 @@
                     </execution>
                 </executions>
             </plugin>
+            <plugin>
+                <artifactId>maven-enforcer-plugin</artifactId>
+                <version>3.0.0-M2</version>
+                <executions>
+                    <execution>
+                        <id>enforce-property</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireProperty>
+                                    <property>onap.nexus.url</property>
+                                    <message>You must set a onap.nexus.url property in your
+                                        ~/.m2/settings.xml. See oparent/settings.xml for an example.</message>
+                                </requireProperty>
+                            </rules>
+                            <fail>true</fail>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-no-snapshots</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireReleaseDeps>
+                                    <failWhenParentIsSnapshot>false</failWhenParentIsSnapshot>
+                                    <onlyWhenRelease>true</onlyWhenRelease>
+                                    <level>WARN</level>
+                                </requireReleaseDeps>
+                            </rules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-maven</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <requireJavaVersion>
+                                    <version>1.8.0</version>
+                                </requireJavaVersion>
+                                <requireMavenVersion>
+                                    <version>[3.5.0,)</version>
+                                </requireMavenVersion>
+                            </rules>
+                        </configuration>
+                    </execution>
+                    <execution>
+                        <id>enforce-banned-dependencies</id>
+                        <goals>
+                            <goal>enforce</goal>
+                        </goals>
+                        <configuration>
+                            <rules>
+                                <bannedDependencies>
+                                    <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
+                                    <excludes>
+                                        <exclude>org.mockito:mockito-all</exclude>
+<!--                                         <exclude>com.google.code.findbugs:annotations</exclude> -->
+                                    </excludes>
+                                </bannedDependencies>
+                            </rules>
+                            <fail>true</fail>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
         </plugins>
     </build>
 
@@ -726,19 +827,6 @@
                     <additionalparam>-Xdoclint:none</additionalparam>
                 </configuration>
             </plugin>
-            <plugin>
-                <groupId>org.jacoco</groupId>
-                <artifactId>jacoco-maven-plugin</artifactId>
-                <version>${jacoco.version}</version>
-                <reportSets>
-                    <reportSet>
-                        <reports>
-                            <!-- select non-aggregate reports -->
-                            <report>report</report>
-                        </reports>
-                    </reportSet>
-                </reportSets>
-            </plugin>
         </plugins>
     </reporting>
 
@@ -1024,13 +1112,14 @@
                     <plugin>
                         <groupId>org.opendaylight.yangtools</groupId>
                         <artifactId>yang-maven-plugin</artifactId>
-                        <version>2.1.8</version>
+                        <version>3.0.11</version>
                         <dependencies>
                             <dependency>
                                 <groupId>org.opendaylight.mdsal</groupId>
                                 <artifactId>maven-sal-api-gen-plugin</artifactId>
                                 <version>${odl.mdsal.model.version}</version>
                                 <type>jar</type>
+                                <scope>compile</scope>
                             </dependency>
                             <dependency>
                                 <groupId>org.opendaylight.netconf</groupId>