[VOL-3584] Creating keywords for scale test
- "voltha scale test ATT"
- "voltha scale test TT"
- "voltha scale test DT"
- "test voltha scale" runs the job on the dev pod

Change-Id: Iae36e1427e080996ce4a820b0f65357e3911760d
diff --git a/jjb/voltha-scale.yaml b/jjb/voltha-scale.yaml
index 9dbef0f..8e1ea0b 100644
--- a/jjb/voltha-scale.yaml
+++ b/jjb/voltha-scale.yaml
@@ -24,8 +24,6 @@
           withEapol: false
           withDhcp: false
           withIgmp: false
-          onosReplicas: 3
-          atomixReplicas: 3
           openonuAdapterReplicas: 1
           openonuAdapterImg: voltha/voltha-openonu-adapter-go:master
           extraHelmFlags: '--set use_openonu_adapter_go=true'
@@ -43,8 +41,6 @@
           withEapol: true
           withDhcp: true
           withIgmp: false
-          onosReplicas: 3
-          atomixReplicas: 3
           openonuAdapterReplicas: 1
           openonuAdapterImg: voltha/voltha-openonu-adapter-go:master
           extraHelmFlags: '--set use_openonu_adapter_go=true'
@@ -65,9 +61,6 @@
           withEapol: true
           withDhcp: true
           withIgmp: false
-          openonuAdapterReplicas: 8
-          onosReplicas: 3
-          atomixReplicas: 3
           extraHelmFlags: '--set authRetry=true,dhcpRetry=true'
           withPcap: true
 
@@ -86,9 +79,6 @@
           withEapol: true
           withDhcp: true
           withIgmp: false
-          openonuAdapterReplicas: 8
-          onosReplicas: 3
-          atomixReplicas: 3
           extraHelmFlags: '--set authRetry=true,dhcpRetry=true'
 
       - 'voltha-scale-measurements':
@@ -105,9 +95,6 @@
           withEapol: false
           withDhcp: true
           withIgmp: true
-          openonuAdapterReplicas: 8
-          onosReplicas: 3
-          atomixReplicas: 3
           extraHelmFlags: '--set authRetry=true,dhcpRetry=true'
 
       - 'voltha-scale-measurements':
@@ -124,9 +111,6 @@
           withEapol: false
           withDhcp: false
           withIgmp: false
-          openonuAdapterReplicas: 8
-          onosReplicas: 3
-          atomixReplicas: 3
           extraHelmFlags: '--set authRetry=true,dhcpRetry=true'
 
       # jobs for 1024 ONUs with a 8 openonu-adapters and clustered ONOS (2 OLTs)
@@ -143,9 +127,6 @@
           withEapol: true
           withDhcp: true
           withIgmp: false
-          openonuAdapterReplicas: 8
-          onosReplicas: 3
-          atomixReplicas: 3
           extraHelmFlags: '--set authRetry=true,dhcpRetry=true'
           onosImg: matteoscandolo/voltha-onos:olt-log
 
@@ -163,9 +144,6 @@
           withEapol: false
           withDhcp: false
           withIgmp: false
-          openonuAdapterReplicas: 8
-          onosReplicas: 3
-          atomixReplicas: 3
           extraHelmFlags: '--set authRetry=true,dhcpRetry=true'
 
       - 'voltha-scale-measurements':
@@ -201,9 +179,6 @@
           withEapol: true
           withDhcp: true
           withIgmp: false
-          openonuAdapterReplicas: 8
-          onosReplicas: 3
-          atomixReplicas: 3
           extraHelmFlags: '--set defaults.rw_core.timeout=30s '
           release: voltha-2.5
           bbsimImg: ''
@@ -227,9 +202,6 @@
           withEapol: false
           withDhcp: false
           withIgmp: false
-          openonuAdapterReplicas: 8
-          onosReplicas: 3
-          atomixReplicas: 3
           extraHelmFlags: '--set defaults.rw_core.timeout=30s '
           release: voltha-2.5
           bbsimImg: ''
@@ -253,9 +225,6 @@
           withEapol: false
           withDhcp: true
           withIgmp: true
-          openonuAdapterReplicas: 8
-          onosReplicas: 3
-          atomixReplicas: 3
           extraHelmFlags: '--set defaults.rw_core.timeout=30s '
           release: voltha-2.5
           bbsimImg: ''
@@ -265,6 +234,51 @@
           openonuAdapterImg: ''
           onosImg: ''
 
+      # per patchset job
+      - 'voltha-scale-measurements':
+          name: 'voltha-scale-measurements-patchset-1-16-32-att-subscribers'
+          build-node: 'onf-pod1-head-node'
+          olts: 1
+          pons: 16
+          onus: 32
+          withFlows: true
+          provisionSubscribers: true
+          withEapol: true
+          withDhcp: true
+          withIgmp: false
+          withMonitoring: false
+          trigger-comment: "voltha scale test ATT"
+
+      - 'voltha-scale-measurements':
+          name: 'voltha-scale-measurements-patchset-1-16-32-tt-subscribers'
+          build-node: 'onf-pod1-head-node'
+          olts: 1
+          pons: 16
+          onus: 32
+          withFlows: true
+          provisionSubscribers: true
+          workflow: tt
+          withEapol: false
+          withDhcp: true
+          withIgmp: true
+          withMonitoring: false
+          trigger-comment: "voltha scale test TT"
+
+      - 'voltha-scale-measurements':
+          name: 'voltha-scale-measurements-patchset-1-16-32-dt-subscribers'
+          build-node: 'onf-pod1-head-node'
+          olts: 1
+          pons: 16
+          onus: 32
+          withFlows: true
+          provisionSubscribers: true
+          workflow: dt
+          withEapol: false
+          withDhcp: false
+          withIgmp: false
+          withMonitoring: false
+          trigger-comment: "voltha scale test DT"
+
       # development pipeline
       - 'voltha-scale-measurements-dev':
           name: 'voltha-scale-measurements-master-dev'
@@ -293,6 +307,11 @@
           description: 'Name of the Jenkins node to run the job on'
 
       - string:
+          name: dockerRegistry
+          default: '{dockerRegistry}'
+          description: 'Address of the docker registry to use if we are building custom images'
+
+      - string:
           name: logLevel
           default: '{logLevel}'
           description: 'Log level for all the components'
@@ -541,9 +560,9 @@
     withProfiling: false
     withPcap: false
     withRadius: yes
-    openonuAdapterReplicas: 1
-    onosReplicas: 1
-    atomixReplicas: 0
+    openonuAdapterReplicas: 8
+    onosReplicas: 3
+    atomixReplicas: 3
     kafkaReplicas: 3
     etcdReplicas: 3
     extraHelmFlags: ''
@@ -553,6 +572,9 @@
     inMemoryEtcdStorage: true
     karafHome: 'apache-karaf-4.2.9'
     logLevel: 'INFO'
+    dockerRegistry: 10.90.0.101:30500
+    trigger-comment: vv7CBoQQYYonvaN8xcru
+    time-trigger: 0 0 29 2 *
 
     <<: *voltha-scale-job-parameters
 
@@ -562,9 +584,28 @@
     dsl: !include-raw-escape: pipeline/{pipeline-script}
 
     triggers:
+      # periodic jobs will set this every 4 hours
+      # patchset jobs will set this to "0 0 29 2 *" (feb 29th, it's once every 4 years)
       - timed: |
                  TZ=America/Los_Angeles
                  {time-trigger}
+      # periodic jobs will set this to vv7CBoQQYYonvaN8xcru (hopefully no-one will comment with that)
+      # patchset jobs will set this to a meaningful comment
+      - gerrit:
+          server-name: '{gerrit-server-name}'
+          silent-start: false
+          successful-message: "PASSED scale test"
+          failure-message: "FAILED scale test"
+          unstable-message: "UNSTABLE scale test"
+          trigger-on:
+            - comment-added-contains-event:
+                comment-contains-value: '.*{trigger-comment}.*'
+          projects:
+            - project-compare-type: REG_EXP
+              project-pattern: '^(voltha-go|voltha-openolt-adapter|voltha-openonu-adapter|ofagent-go|voltha-onos|bbsim)$'
+              branches:
+                - branch-compare-type: REG_EXP
+                  branch-pattern: '{all-branches-regexp}'
 
 - job-template:
     id: 'voltha-scale-measurements-dev'
@@ -615,7 +656,7 @@
     withIgmp: false
     withLLDP: false
     withMibTemplate: true
-    withMonitoring: true
+    withMonitoring: false
     withProfiling: false
     withPcap: false
     withRadius: yes
@@ -631,6 +672,7 @@
     inMemoryEtcdStorage: true
     karafHome: 'apache-karaf-4.2.9'
     logLevel: 'INFO'
+    dockerRegistry: 10.90.0.69:30500
 
     <<: *voltha-scale-job-parameters
 
@@ -648,10 +690,10 @@
           unstable-message: "UNSTABLE scale test"
           trigger-on:
             - comment-added-contains-event:
-                comment-contains-value: '.*scale test.*'
+                comment-contains-value: '.*test voltha scale.*'
           projects:
             - project-compare-type: REG_EXP
-              project-pattern: '^(voltha-go|voltha-openolt-adapter|voltha-openonu-adapter|ofagent-go|voltha-onos)$'
+              project-pattern: '^(voltha-go|voltha-openolt-adapter|voltha-openonu-adapter|ofagent-go|voltha-onos|bbsim)$'
               branches:
                 - branch-compare-type: REG_EXP
                   branch-pattern: '{all-branches-regexp}'