[VOL-3780] generalizing the periodic pipeline to support multiple testing scenarios
Change-Id: I18040a25155b347907161184fbeb247f38324924
diff --git a/jjb/voltha-e2e.yaml b/jjb/voltha-e2e.yaml
index 39e22c7..22b73c5 100755
--- a/jjb/voltha-e2e.yaml
+++ b/jjb/voltha-e2e.yaml
@@ -73,6 +73,28 @@
name: 'periodic-voltha-openonu-go-test-bbsim'
code-branch: 'master'
time-trigger: "H H/12 * * *"
+ testTargets: |
+ - target: openonu-go-adapter-test
+ workflow: att
+ flags: ""
+ - target: 1t4gem-openonu-go-adapter-test
+ workflow: att
+ flags: ""
+ - target: 1t8gem-openonu-go-adapter-test
+ workflow: att
+ flags: ""
+ - target: mib-upload-templating-openonu-go-adapter-test
+ workflow: att
+ flags: "--set pon=2,onu=2,controlledActivation=only-onu"
+ - target: reconcile-openonu-go-adapter-test
+ workflow: att
+ flags: ""
+ - target: reconcile-openonu-go-adapter-test-dt
+ workflow: dt
+ flags: ""
+ - target: reconcile-openonu-go-adapter-test-tt
+ workflow: tt
+ flags: ""
- 'voltha-periodic-test':
name: 'patchset-voltha-openonu-go-test-bbsim'
@@ -80,6 +102,28 @@
code-branch: '$GERRIT_BRANCH'
gerrit-project: '$GERRIT_PROJECT'
gerritRefspec: '$GERRIT_REFSPEC'
+ testTargets: |
+ - target: openonu-go-adapter-test
+ workflow: att
+ flags: ""
+ - target: 1t4gem-openonu-go-adapter-test
+ workflow: att
+ flags: ""
+ - target: 1t8gem-openonu-go-adapter-test
+ workflow: att
+ flags: ""
+ - target: mib-upload-templating-openonu-go-adapter-test
+ workflow: att
+ flags: "--set pon=2,onu=2,controlledActivation=only-onu"
+ - target: reconcile-openonu-go-adapter-test
+ workflow: att
+ flags: ""
+ - target: reconcile-openonu-go-adapter-test-dt
+ workflow: dt
+ flags: ""
+ - target: reconcile-openonu-go-adapter-test-tt
+ workflow: tt
+ flags: ""
- 'voltha-periodic-test-kind-voltha-based':
name: 'periodic-voltha-openonu-go-test-bbsim-2.7'
@@ -101,12 +145,25 @@
olts: 2
onus: 2
pons: 2
- make-target: openonu-go-adapter-multi-olt-test
- make-target-1t4gemtest: 1t4gem-openonu-go-adapter-multi-olt-test
- make-target-1t8gemtest: 1t8gem-openonu-go-adapter-multi-olt-test
- make-target-reconciletest: reconcile-openonu-go-adapter-multi-olt-test
- make-target-reconciledttest: reconcile-openonu-go-adapter-multi-olt-test-dt
- make-target-reconciletttest: reconcile-openonu-go-adapter-multi-olt-test-tt
+ testTargets: |
+ - target: openonu-go-adapter-multi-olt-test
+ workflow: att
+ flags: ""
+ - target: 1t4gem-openonu-go-adapter-multi-olt-test
+ workflow: att
+ flags: ""
+ - target: 1t8gem-openonu-go-adapter-multi-olt-test
+ workflow: att
+ flags: ""
+ - target: reconcile-openonu-go-adapter-multi-olt-test
+ workflow: att
+ flags: ""
+ - target: reconcile-openonu-go-adapter-multi-olt-test-dt
+ workflow: dt
+ flags: ""
+ - target: reconcile-openonu-go-adapter-multi-olt-test-tt
+ workflow: tt
+ flags: ""
time-trigger: "H H/12 * * *"
- 'voltha-periodic-test':
@@ -115,12 +172,25 @@
code-branch: '$GERRIT_BRANCH'
gerrit-project: '$GERRIT_PROJECT'
gerritRefspec: '$GERRIT_REFSPEC'
- make-target: openonu-go-adapter-multi-olt-test
- make-target-1t4gemtest: 1t4gem-openonu-go-adapter-multi-olt-test
- make-target-1t8gemtest: 1t8gem-openonu-go-adapter-multi-olt-test
- make-target-reconciletest: reconcile-openonu-go-adapter-multi-olt-test
- make-target-reconciledttest: reconcile-openonu-go-adapter-multi-olt-test-dt
- make-target-reconciletttest: reconcile-openonu-go-adapter-multi-olt-test-tt
+ testTargets: |
+ - target: openonu-go-adapter-multi-olt-test
+ workflow: att
+ flags: ""
+ - target: 1t4gem-openonu-go-adapter-multi-olt-test
+ workflow: att
+ flags: ""
+ - target: 1t8gem-openonu-go-adapter-multi-olt-test
+ workflow: att
+ flags: ""
+ - target: reconcile-openonu-go-adapter-multi-olt-test
+ workflow: att
+ flags: ""
+ - target: reconcile-openonu-go-adapter-multi-olt-test-dt
+ workflow: dt
+ flags: ""
+ - target: reconcile-openonu-go-adapter-multi-olt-test-tt
+ workflow: tt
+ flags: ""
olts: 2
onus: 2
pons: 2
@@ -296,12 +366,9 @@
default-test-args: '-i sanityORDeleteOLT -i PowerSwitch -X'
- job-template:
- # as of now this template is only used by the openonu-go periodic test,
- # in order to use for multiple pipelines we should change it so that
- # we can specify a list of make targets and iterate over that
id: 'voltha-periodic-test'
name: '{name}'
- pipeline-script: 'voltha/master/openonu-go-periodic-test-bbsim.groovy'
+ pipeline-script: 'voltha/master/periodic-bbsim-tests.groovy'
build-node: 'ubuntu18.04-basebuild-8c-15g'
test-runs: 1
robot-args: ''
@@ -313,12 +380,7 @@
extraHelmFlags: ''
sandbox: true
olts: 1
- make-target: openonu-go-adapter-test
- make-target-1t4gemtest: 1t4gem-openonu-go-adapter-test
- make-target-1t8gemtest: 1t8gem-openonu-go-adapter-test
- make-target-reconciletest: reconcile-openonu-go-adapter-test
- make-target-reconciledttest: reconcile-openonu-go-adapter-test-dt
- make-target-reconciletttest: reconcile-openonu-go-adapter-test-tt
+
trigger-comment: vv7CBoQQYYonvaN8xcru
time-trigger: 0 0 29 2 *
@@ -346,59 +408,20 @@
- string:
name: extraHelmFlags
default: '--set onu={onus},pon={pons},{extraHelmFlags}'
- description: 'Helm flags to pass to ./voltha up'
+ description: 'Helm flags (passed to each deployment)'
- # TODO is there a better way to manage the test targets?
- # maybe we can use a comma separated list?
- - string:
- name: makeTarget
- default: '{make-target}'
- description: 'Makefile target to invoke during test'
-
- - string:
- name: makeFailtestTarget
- default: '{make-target-failtest}'
- description: 'Makefile target to invoke during failure/based test'
-
- - string:
- name: makeMultiOltTarget
- default: '{make-target-multipleolt}'
- description: 'Makefile target to invoke during multiple olt test'
-
- - string:
- name: makeErrortestTarget
- default: '{make-target-errortest}'
- description: 'Makefile target to invoke during error test'
-
- - string:
- name: makeAlarmtestTarget
- default: '{make-target-alarmtest}'
- description: 'Makefile target to invoke during alarm test'
-
- - string:
- name: make1t4gemTestTarget
- default: '{make-target-1t4gemtest}'
- description: 'Makefile target to invoke during 1t4gem test'
-
- - string:
- name: make1t8gemTestTarget
- default: '{make-target-1t8gemtest}'
- description: 'Makefile target to invoke during 1t8gem test'
-
- - string:
- name: makeReconcileTestTarget
- default: '{make-target-reconciletest}'
- description: 'Makefile target to invoke during reconcile test'
-
- - string:
- name: makeReconcileDtTestTarget
- default: '{make-target-reconciledttest}'
- description: 'Makefile target to invoke during reconcile dt test'
-
- - string:
- name: makeReconcileTtTestTarget
- default: '{make-target-reconciletttest}'
- description: 'Makefile target to invoke during reconcile tt test'
+ # test configuration
+ # this is a parameter to drive the test execution, VOLTHA is redeployed each time with
+ # the provided configuration and then the make target is invoked,
+ # example value (has to be valid YAML):
+ # testTargets: |
+ # - target: openonu-go-adapter-test
+ # workflow: att
+ # flags: ""
+ - text:
+ name: testTargets
+ default: '{testTargets}'
+ description: 'Test configuration, see the ci-management job definition for more info'
- string:
name: branch