Merge "[VOL-4404] Adding device disable/delete test at scale"
diff --git a/jjb/pipeline/voltha/master/bbsim-tests.groovy b/jjb/pipeline/voltha/master/bbsim-tests.groovy
index 0650373..4b49728 100755
--- a/jjb/pipeline/voltha/master/bbsim-tests.groovy
+++ b/jjb/pipeline/voltha/master/bbsim-tests.groovy
@@ -123,6 +123,13 @@
     make -C $WORKSPACE/voltha-system-tests ${testTarget} || true
     """
     getPodsInfo("${logsDir}")
+    sh """
+      set +e
+      # collect logs collected in the Robot Framework StartLogging keyword
+      cd ${logsDir}
+      gzip *-combined.log || true
+      rm *-combined.log || true
+    """
   }
 }
 
diff --git a/jjb/pipeline/voltha/master/software-upgrades.groovy b/jjb/pipeline/voltha/master/software-upgrades.groovy
old mode 100644
new mode 100755
index 2724510..e80c8d5
--- a/jjb/pipeline/voltha/master/software-upgrades.groovy
+++ b/jjb/pipeline/voltha/master/software-upgrades.groovy
@@ -23,13 +23,14 @@
 def test_software_upgrade(name) {
   def infraNamespace = "infra"
   def volthaNamespace = "voltha"
+  def logsDir = "$WORKSPACE/${name}"
   stage('Deploy Voltha - '+ name) {
     timeout(10) {
       // start logging
       sh """
-      rm -rf $WORKSPACE/${name} || true
-      mkdir -p $WORKSPACE/${name}
-      _TAG=kail-${name} kail -n ${infraNamespace} -n ${volthaNamespace} > $WORKSPACE/${name}/onos-voltha-startup-combined.log &
+      rm -rf ${logsDir} || true
+      mkdir -p ${logsDir}
+      _TAG=kail-${name} kail -n ${infraNamespace} -n ${volthaNamespace} > ${logsDir}/onos-voltha-startup-combined.log &
       """
       def extraHelmFlags = extraHelmFlags.trim()
       extraHelmFlags = extraHelmFlags + " --set global.log_level=${logLevel.toUpperCase()},onu=1,pon=1 --set onos-classic.replicas=3,onos-classic.atomix.replicas=3 "
@@ -61,7 +62,7 @@
             kill -9 \$P_ID
           done
         fi
-        cd $WORKSPACE/${name}/
+        cd ${logsDir}
         gzip -k onos-voltha-startup-combined.log
         rm onos-voltha-startup-combined.log
       """
@@ -77,7 +78,7 @@
     }
   }
   stage('Test - '+ name) {
-    timeout(40) {
+    timeout(60) {
       sh """
         ROBOT_LOGS_DIR="$WORKSPACE/RobotLogs/${name}"
         mkdir -p \$ROBOT_LOGS_DIR
@@ -134,7 +135,7 @@
         fi
         export VOLTCONFIG=$HOME/.volt/config-minimal
         export KUBECONFIG=$HOME/.kube/kind-config-voltha-minimal
-        ROBOT_MISC_ARGS+=" -v ONOS_SSH_PORT:30115 -v ONOS_REST_PORT:30120 -v NAMESPACE:${volthaNamespace} -v INFRA_NAMESPACE:${infraNamespace} -v container_log_dir:$WORKSPACE/RobotLogs/${name} -v logging:\$testLogging"
+        ROBOT_MISC_ARGS+=" -v ONOS_SSH_PORT:30115 -v ONOS_REST_PORT:30120 -v NAMESPACE:${volthaNamespace} -v INFRA_NAMESPACE:${infraNamespace} -v container_log_dir:${logsDir} -v logging:\$testLogging"
         # Run the specified tests
         make -C $WORKSPACE/voltha-system-tests \$TARGET || true
       """
@@ -145,6 +146,13 @@
       """
       // collect pod details
       get_pods_info("$WORKSPACE/${name}")
+      sh """
+        set +e
+        # collect logs collected in the Robot Framework StartLogging keyword
+        cd ${logsDir}
+        gzip *-combined.log || true
+        rm *-combined.log || true
+      """
       helmTeardown(['infra', 'voltha'])
     }
   }
@@ -171,7 +179,7 @@
     label "${params.buildNode}"
   }
   options {
-    timeout(time: 90, unit: 'MINUTES')
+    timeout(time: 100, unit: 'MINUTES')
   }
   environment {
     PATH="$PATH:$WORKSPACE/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin"
diff --git a/jjb/pipeline/voltha/master/voltha-physical-functional-tests.groovy b/jjb/pipeline/voltha/master/voltha-physical-functional-tests.groovy
index f6e63f4..b931f34 100644
--- a/jjb/pipeline/voltha/master/voltha-physical-functional-tests.groovy
+++ b/jjb/pipeline/voltha/master/voltha-physical-functional-tests.groovy
@@ -57,6 +57,14 @@
             [$class: 'CloneOption', depth: 0, noTags: false, reference: '', shallow: false],
           ],
         ])
+        script {
+          sh(script:"""
+            if [ '${volthaSystemTestsChange}' != '' ] ; then
+              cd $WORKSPACE/voltha-system-tests;
+              git fetch https://gerrit.opencord.org/voltha-system-tests ${volthaSystemTestsChange} && git checkout FETCH_HEAD
+            fi
+            """)
+        }
       }
     }
     stage('Download All the VOLTHA repos') {
diff --git a/jjb/pipeline/voltha/voltha-2.8/bbsim-tests.groovy b/jjb/pipeline/voltha/voltha-2.8/bbsim-tests.groovy
index 24b2d82..85683db 100755
--- a/jjb/pipeline/voltha/voltha-2.8/bbsim-tests.groovy
+++ b/jjb/pipeline/voltha/voltha-2.8/bbsim-tests.groovy
@@ -117,6 +117,13 @@
     make -C $WORKSPACE/voltha-system-tests ${testTarget} || true
     """
     getPodsInfo("${logsDir}")
+    sh """
+      set +e
+      # collect logs collected in the Robot Framework StartLogging keyword
+      cd ${logsDir}
+      gzip *-combined.log || true
+      rm *-combined.log || true
+    """
   }
 }
 
diff --git a/jjb/pipeline/voltha/voltha-2.8/software-upgrades.groovy b/jjb/pipeline/voltha/voltha-2.8/software-upgrades.groovy
index 88fb129..8cae8d6 100644
--- a/jjb/pipeline/voltha/voltha-2.8/software-upgrades.groovy
+++ b/jjb/pipeline/voltha/voltha-2.8/software-upgrades.groovy
@@ -23,13 +23,14 @@
 def test_software_upgrade(name) {
   def infraNamespace = "infra"
   def volthaNamespace = "voltha"
+  def logsDir = "$WORKSPACE/${name}"
   stage('Deploy Voltha - '+ name) {
     timeout(10) {
       // start logging
       sh """
-      rm -rf $WORKSPACE/${name} || true
-      mkdir -p $WORKSPACE/${name}
-      _TAG=kail-${name} kail -n ${infraNamespace} -n ${volthaNamespace} > $WORKSPACE/${name}/onos-voltha-startup-combined.log &
+      rm -rf ${logsDir} || true
+      mkdir -p ${logsDir}
+      _TAG=kail-${name} kail -n ${infraNamespace} -n ${volthaNamespace} > ${logsDir}/onos-voltha-startup-combined.log &
       """
       def extraHelmFlags = extraHelmFlags.trim()
       extraHelmFlags = extraHelmFlags + " --set global.log_level=${logLevel.toUpperCase()},onu=1,pon=1 --set onos-classic.replicas=3,onos-classic.atomix.replicas=3 "
@@ -59,7 +60,7 @@
             kill -9 \$P_ID
           done
         fi
-        cd $WORKSPACE/${name}/
+        cd ${logsDir}
         gzip -k onos-voltha-startup-combined.log
         rm onos-voltha-startup-combined.log
       """
@@ -132,7 +133,7 @@
         fi
         export VOLTCONFIG=$HOME/.volt/config-minimal
         export KUBECONFIG=$HOME/.kube/kind-config-voltha-minimal
-        ROBOT_MISC_ARGS+=" -v ONOS_SSH_PORT:30115 -v ONOS_REST_PORT:30120 -v NAMESPACE:${volthaNamespace} -v INFRA_NAMESPACE:${infraNamespace} -v container_log_dir:$WORKSPACE/RobotLogs/${name} -v logging:\$testLogging"
+        ROBOT_MISC_ARGS+=" -v ONOS_SSH_PORT:30115 -v ONOS_REST_PORT:30120 -v NAMESPACE:${volthaNamespace} -v INFRA_NAMESPACE:${infraNamespace} -v container_log_dir:${logsDir} -v logging:\$testLogging"
         # Run the specified tests
         make -C $WORKSPACE/voltha-system-tests \$TARGET || true
       """
@@ -143,6 +144,13 @@
       """
       // collect pod details
       get_pods_info("$WORKSPACE/${name}")
+      sh """
+        set +e
+        # collect logs collected in the Robot Framework StartLogging keyword
+        cd ${logsDir}
+        gzip *-combined.log || true
+        rm *-combined.log || true
+      """
       helmTeardown(['infra', 'voltha'])
     }
   }
diff --git a/jjb/pipeline/voltha/voltha-2.8/voltha-scale-multi-stack.groovy b/jjb/pipeline/voltha/voltha-2.8/voltha-scale-multi-stack.groovy
index 3c02c4e..f7e82de 100644
--- a/jjb/pipeline/voltha/voltha-2.8/voltha-scale-multi-stack.groovy
+++ b/jjb/pipeline/voltha/voltha-2.8/voltha-scale-multi-stack.groovy
@@ -129,7 +129,7 @@
                 "--set global.log_level=${logLevel} " +
                 "--set radius.enabled=${withEapol} " +
                 "--set onos-classic.onosSshPort=30115 " +
-                "--set onos-classic.onosApiPort=30120 " + 
+                "--set onos-classic.onosApiPort=30120 " +
                 params.extraHelmFlags
 
             volthaInfraDeploy([
@@ -395,6 +395,7 @@
           extraHelmFlags: volthaHelmFlags,
           localCharts: localCharts,
           onosReplica: onosReplicas,
+          adaptersToWait: 0 // in 2.8 there's no need to wait for adapters
         ])
       }
     }
diff --git a/jjb/voltha-test/voltha-certification.yaml b/jjb/voltha-test/voltha-certification.yaml
index 994c543..910beb6 100644
--- a/jjb/voltha-test/voltha-certification.yaml
+++ b/jjb/voltha-test/voltha-certification.yaml
@@ -82,7 +82,7 @@
       - 'build_voltha_pod_release_timer':
           build-node: 'menlo-certification-pod'
           config-pod: 'menlo-certification-pod-radisys-3200g'
-          disable-job: false
+          disable-job: true
           reinstall-olt: false
           name-extension: '_DT'
           work-flow: 'DT'
@@ -92,10 +92,9 @@
 
       # Certification (Radisys) POD test job - master versions: uses 1T8GEM tech profile on voltha branch
       - 'build_voltha_pod_test':
-          timeout: 270
           build-node: 'menlo-certification-pod'
           config-pod: 'menlo-certification-pod-radisys-3200g'
-          disable-job: false
+          disable-job: true
           release: 'master'
           branch: 'master'
           name-extension: '_DT'
diff --git a/jjb/voltha-test/voltha-nightly-jobs.yaml b/jjb/voltha-test/voltha-nightly-jobs.yaml
index 1d11c4c..278c91b 100644
--- a/jjb/voltha-test/voltha-nightly-jobs.yaml
+++ b/jjb/voltha-test/voltha-nightly-jobs.yaml
@@ -304,7 +304,7 @@
 
     oltAdapterAppLabel: 'adapter-open-olt'
     enableMultiUni: false
-    timeout: 270
+    timeout: 300
 
     parameters:
       - string:
diff --git a/jjb/voltha-test/voltha.yaml b/jjb/voltha-test/voltha.yaml
index d42c198..d9da1aa 100644
--- a/jjb/voltha-test/voltha.yaml
+++ b/jjb/voltha-test/voltha.yaml
@@ -129,7 +129,7 @@
           pipeline-script: 'voltha/master/voltha-tt-physical-functional-tests.groovy'
           test-repo: 'voltha-system-tests'
           profile: 'TP'
-          timeout: 330
+          timeout: 360
 
     # flex OCP pod with olt/onu - Released versions Default tech profile and timer based job
       - 'build_voltha_pod_release_timer':
@@ -230,7 +230,7 @@
           VolthaEtcdPort: 9999
           in-band-management: true
           waitTimerForOltUp: 540
-          time: '4'
+          time: '6'
           extraHelmFlags: "--set onos-classic.image.repository=matteoscandolo/voltha-onos --set onos-classic.image.tag=oltapp"
 
       # Menlo pod test job - uses tech profile on voltha branch
@@ -260,7 +260,7 @@
           num-of-atomix: '3'
           VolthaEtcdPort: 9999
           in-band-management: true
-          time: '7'
+          time: '11'
           pipeline-script: 'voltha/voltha-2.8/physical-build.groovy'
           extraHelmFlags: "--set onos-classic.image.repository=matteoscandolo/voltha-onos --set onos-classic.image.tag=oltapp"
 
@@ -417,7 +417,7 @@
 
       # Berlin POD test job - master versions: uses tech profile on voltha branch
       - 'build_voltha_pod_test':
-          timeout: 300
+          timeout: 360
           build-node: 'dt-berlin-community-pod'
           config-pod: 'dt-berlin-pod-multi-olt'
           release: 'master'