[CORD-3256] -

jjb/voltha-test/voltha-nightly-jobs.yaml
jjb/voltha-test/voltha.yaml b/jjb/voltha-test/voltha.yaml
---------------------------------------------------------
  o Add new TT/TP/gpon jobs now that the JJB config is known.
  o Define config to run the playground job when a commit is made.

Change-Id: I08a4f7c01a29a82654a15d4a3dd3a34a9abe9e75
diff --git a/jjb/voltha-test/voltha-nightly-jobs.yaml b/jjb/voltha-test/voltha-nightly-jobs.yaml
index e99e3ba..5784456 100644
--- a/jjb/voltha-test/voltha-nightly-jobs.yaml
+++ b/jjb/voltha-test/voltha-nightly-jobs.yaml
@@ -306,15 +306,15 @@
 
 # -----------------------------------------------------------------------
 # VOLTHA Build Jobs (periodic: playground
+# [CORD_3256]
 # -----------------------------------------------------------------------
 - job-template:
-    name: 'build_{config-pod}_{profile}{name-extension}_voltha_{release}-debug'
+    name: 'build_{config-pod}_{profile}{name-extension}_voltha_{release}-playground'
     id: build_voltha_pod_release_timer_playground
     disabled: '{disable-job}'
     description: |
-                  Manual Build on POD {config-pod}, using pipeline/{pipeline-script} in {gerrit-server-url}/ci-management' <br /><br />
-                  Created from job-template {id} from ci-management/jjb/voltha-test/voltha-nightly-jobs.yaml <br />
-                  Created by QA (Suchitra Vemuri) <br />
+                  Manual Build on POD {config-pod}, using pipeline/{pipeline-script} in {gerrit-server-url}/ci-management'
+                  Created from job-template {id} from repo::ci-management/jjb/voltha-test/voltha-nightly-jobs.yaml
                   Copyright 2018-2023 Open Networking Foundation (ONF) and the ONF Contributors
 
     <<: *voltha-pipe-job-boiler-plate
@@ -499,6 +499,150 @@
           result: 'success'
 
 # -----------------------------------------------------------------------
+# VOLTHA Test Job
+# This job is automatically triggered after a build job has successfully completed
+# -----------------------------------------------------------------------
+- job-template:
+    name: 'build_{config-pod}_{profile}_voltha{name-extension}_{release}_test-playground'
+    id: build_voltha_pod_test_playground
+    disabled: '{disable-job}'
+    description: |
+                  Post Tests on {config-pod} triggered by build_{config-pod}_{branch}, using {pipeline-script}
+                  Created from job-template {id} from ci-management/jjb/voltha-test/voltha-nightly-jobs.yaml
+                  Copyright 2017-2023 Open Networking Foundation (ONF) and the ONF Contributors
+
+    <<: *voltha-pipe-job-boiler-plate
+    pipeline-script: 'voltha/playground/voltha-physical-functional-tests.groovy'
+    manifest-url: 'https://gerrit.opencord.org/voltha-test-manifest.git'
+    manifest-branch: 'master'
+
+    oltAdapterAppLabel: 'adapter-open-olt'
+    enableMultiUni: false
+    withFttb: false
+    timeout: 300
+
+    parameters:
+      - string:
+          name: timeout
+          default: '{timeout}'
+          description: 'Job pipeline timeout value [minutes]'
+
+      - string:
+          name: buildNode
+          default: '{build-node}'
+          description: 'Name of the Jenkins executor node to run the job on'
+
+      - string:
+          name: TestNodeName
+          default: '{build-node}'
+          description: 'DEPRECATED - use buildNode instead'
+
+      - string:
+          name: cordRepoUrl
+          default: '{gerrit-server-url}'
+          description: 'The URL of the CORD Project repository'
+
+      - string:
+          name: configBaseDir
+          default: 'pod-configs'
+          description: 'The directory inside the POD configs repository'
+
+      - string:
+          name: configDeploymentDir
+          default: 'deployment-configs'
+          description: 'The deployment configs folder'
+
+      - string:
+          name: configKubernetesDir
+          default: 'kubernetes-configs'
+          description: 'The kubernetes config folder'
+
+      - string:
+          name: configToscaDir
+          default: 'tosca-configs'
+          description: 'The tosca config folder'
+
+      - string:
+          name: configFileName
+          default: '{config-pod}'
+          description: 'The config file'
+
+      - string:
+          name: profile
+          default: '{profile}'
+          description: 'Technology Profile pushed to the ETCD'
+
+      - string:
+          name: branch
+          default: '{branch}'
+          description: 'Branch of the test libraries to check out'
+
+      - string:
+          name: manifestUrl
+          default: '{manifest-url}'
+          description: 'Repo manifest URL for code checkout (so we can display changes in Jenkins)'
+
+      - string:
+          name: manifestBranch
+          default: '{manifest-branch}'
+          description: 'Repo manifest branch for code checkout (so we can display changes in Jenkins)'
+
+      - string:
+          name: workFlow
+          default: '{work-flow}'
+          description: 'Installs and uses the specified work flow on the POD'
+
+      - bool:
+          name: enableMultiUni
+          default: '{enableMultiUni}'
+          description: "Enables the Multi UNI feature"
+
+      - bool:
+          name: withFttb
+          default: '{withFttb}'
+          description: "Test with FTTB enabled"
+
+      - bool:
+          name: powerSwitch
+          default: '{power-switch}'
+          description: "Indicate whether POD has power switch to reboot ONUs/OLT remotely"
+
+      - bool:
+          name: powerCycleOlt
+          default: '{power-cycle-olt}'
+          description: "Indicate whether to reboot OLT through power switch"
+
+      - string:
+          name: oltAdapterAppLabel
+          default: '{oltAdapterAppLabel}'
+          description: 'OLT adapter pod name'
+
+      - string:
+          name: volthaSystemTestsChange
+          default: '{volthaSystemTestsChange}'
+          description: 'Download a change for gerrit in the voltha-system-tests repo, example value: "refs/changes/79/18779/13"'
+
+      - string:
+          name: kindVolthaChange
+          default: '{kindVolthaChange}'
+          description: 'Download a change for gerrit in the kind-voltha repo, example value: "refs/changes/32/19132/1"'
+
+      - string:
+          name: cordTesterChange
+          default: '{cordTesterChange}'
+          description: 'Download a change for gerrit in the kind-voltha repo, example value: "refs/changes/32/19132/1"'
+
+    concurrent: true
+
+    project-type: pipeline
+    dsl: !include-raw-escape: ../pipeline/{pipeline-script}
+
+    triggers:
+      - reverse:
+          jobs: 'build_{config-pod}_{profile}{name-extension}_voltha_{release}'
+          result: 'success'
+
+# -----------------------------------------------------------------------
 # VOLTHA Soak Test Job
 # This job is triggered by a timer defined in the job
 # -----------------------------------------------------------------------
diff --git a/jjb/voltha-test/voltha.yaml b/jjb/voltha-test/voltha.yaml
index 5106546..6c9bf1b 100644
--- a/jjb/voltha-test/voltha.yaml
+++ b/jjb/voltha-test/voltha.yaml
@@ -220,7 +220,7 @@
           test-repo: 'voltha-system-tests'
           profile: 'TP'
 
-          # flex OCP pod with olt/onu - Released versions Default tech profile and timer based job
+      # flex OCP pod with olt/onu - Released versions Default tech profile and timer based job
       - 'build_voltha_pod_release_timer':
           disable-job: false
           build-node: 'qa-testvm-pod'
@@ -761,7 +761,7 @@
           power-switch: true
           pipeline-script: 'voltha/master/voltha-dt-physical-functional-tests.groovy'
 
-          # Berlin pod with zyxel gpon olt/onu - master 1T8GEM tech profile and timer based job
+      # Berlin pod with zyxel gpon olt/onu - master 1T8GEM tech profile and timer based job
       - 'build_voltha_pod_release_timer':
           build-node: 'berlin-community-pod-2'
           config-pod: 'berlin-community-pod-2-gpon-zyxel'
@@ -779,7 +779,7 @@
           waitTimerForOltUp: 360
           time: '1'
 
-          # Berlin POD test job - zyxel gpon master versions: uses tech profile on voltha branch
+      # Berlin POD test job - zyxel gpon master versions: uses tech profile on voltha branch
       - 'build_voltha_pod_test':
           build-node: 'berlin-community-pod-2'
           config-pod: 'berlin-community-pod-2-gpon-zyxel'
@@ -792,7 +792,7 @@
           power-switch: true
           pipeline-script: 'voltha/master/voltha-dt-physical-functional-tests.groovy'
 
-          # Berlin pod with zyxel xgspon olt/onu - master 1T8GEM tech profile and timer based job
+      # Berlin pod with zyxel xgspon olt/onu - master 1T8GEM tech profile and timer based job
       - 'build_voltha_pod_release_timer':
           build-node: 'berlin-community-pod-2'
           config-pod: 'berlin-community-pod-2-xgspon-zyxel'
@@ -810,7 +810,7 @@
           profile: '1T8GEM'
           time: '5'
 
-          # Berlin POD test job - zyxel xgsgpon master versions: uses tech profile on voltha branch
+      # Berlin POD test job - zyxel xgsgpon master versions: uses tech profile on voltha branch
       - 'build_voltha_pod_test':
           build-node: 'berlin-community-pod-2'
           config-pod: 'berlin-community-pod-2-xgspon-zyxel'
@@ -854,11 +854,11 @@
           profile: 'TP'
           timeout: 360
 
-      # TT workflow on Zyxel XGSPON OLT at Berlin pod - build job
-      - 'build_voltha_pod_release_timer_playground':
+      # [CORD-3256] TT workflow on XGSPON OLT at Berlin pod - build job
+      - 'build_voltha_pod_release_timer':
           disable-job: false
-          build-node: 'berlin-community-pod-2'
-          config-pod: 'berlin-community-pod-2-xgspon-zyxel'
+          build-node: 'berlin-community-pod-1'
+          config-pod: 'berlin-community-pod-1-gpon'
           release: 'master'
           branch: 'master'
           name-extension: '_TT'
@@ -869,22 +869,52 @@
           num-of-onos: '3'
           num-of-atomix: '3'
 
-      ## NOT NEEDED (?) configured job used default=physical-build.groovy
-      # TT workflow on Zyxel XGSPON OLT at Berlin pod - test job
-#      - 'build_voltha_pod_test_playground':
-#          disable-job: false
-#          build-node: 'berlin-community-pod-2'
-#          config-pod: 'berlin-community-pod-2-xgspon-zyxel'
-#          release: 'master'
-#          branch: 'master'
-#          name-extension: '_TT'
-#          work-flow: 'TT'
-#          power-switch: true
-#          power-cycle-olt: true
-#          pipeline-script: 'voltha/master/voltha-tt-physical-functional-tests.groovy'
-#          test-repo: 'voltha-system-tests'
-#          profile: 'TP'
-#          timeout: 360
+      # [CORD-3256] TT workflow on GPON OLT at Berlin pod - test job
+      - 'build_voltha_pod_test':
+          disable-job: false
+          build-node: 'berlin-community-pod-1'
+          config-pod: 'berlin-community-pod-1-gpon'
+          release: 'master'
+          branch: 'master'
+          name-extension: '_TT'
+          work-flow: 'TT'
+          power-switch: true
+          power-cycle-olt: true
+          pipeline-script: 'voltha/master/voltha-tt-physical-functional-tests.groovy'
+          test-repo: 'voltha-system-tests'
+          profile: 'TP'
+          timeout: 360
+
+      # TT workflow on Zyxel GPON OLT at Berlin pod - build job (playground)
+      - 'build_voltha_pod_release_timer_playground':
+          disable-job: false
+          build-node: 'berlin-community-pod-1'
+          config-pod: 'berlin-community-pod-1-gpon'
+          release: 'master3'
+          branch: 'master'
+          name-extension: '_TT'
+          work-flow: 'TT'
+          profile: 'TP'
+          time: '10'
+          VolthaEtcdPort: 9999
+          num-of-onos: '3'
+          num-of-atomix: '3'
+
+      # TT workflow on Zyxel XGSPON OLT at Berlin pod - test job (playground)
+      - 'build_voltha_pod_test_playground':
+          disable-job: false
+          build-node: 'berlin-community-pod-1'
+          config-pod: 'berlin-community-pod-1-gpon'
+          release: 'master'
+          branch: 'master'
+          name-extension: '_TT'
+          work-flow: 'TT'
+          power-switch: true
+          power-cycle-olt: true
+          pipeline-script: 'voltha/playground/voltha-tt-physical-functional-tests.groovy'
+          test-repo: 'voltha-system-tests'
+          profile: 'TP'
+          timeout: 360
 
       # Berlin pod with adtran gpon olt/onu - 2.8 1T8GEM tech profile and timer based job
       - 'build_voltha_pod_release_timer':