Merge "[COMAC-371]: Adding Jenkins Jobs for the Nucleus OMEC repo"
diff --git a/jjb/cord-test/att-workflow.yaml b/jjb/cord-test/att-workflow.yaml
index cca01c2..f4d304c 100644
--- a/jjb/cord-test/att-workflow.yaml
+++ b/jjb/cord-test/att-workflow.yaml
@@ -11,7 +11,7 @@
jobs:
# onlab pod1 build
- 'build_pod_manual':
- testvm: 'onf-build'
+ build-node: 'onf-build'
config-pod: 'onlab-pod1'
profile: 'att-workflow'
branch: 'master'
@@ -22,7 +22,7 @@
# onlab pod1 build - cord6.1(voltha 1.6) - seba1.0
- 'build_pod_manual':
- testvm: 'onf-build'
+ build-node: 'onf-build'
config-pod: 'onlab-pod1-voltha16'
profile: 'att-workflow'
branch: 'cord-6.1'
@@ -33,7 +33,7 @@
# flex pod1 test job - using voltha-master branch
- 'build_pod_test':
- testvm: 'onf-build'
+ build-node: 'onf-build'
config-pod: 'onlab-pod1-qa'
profile: 'att-workflow'
branch: 'master'
@@ -42,7 +42,7 @@
# onlab pod2 build
- 'build_pod_manual':
- testvm: 'onf-build'
+ build-node: 'onf-build'
config-pod: 'onlab-pod2'
profile: 'att-workflow'
branch: 'master'
@@ -53,7 +53,7 @@
# flex OCP pod with olt/onu : using voltha latest(master)
# - 'build_pod_timer':
- # testvm: 'qa-testvm-pod'
+ # build-node: 'qa-testvm-pod'
# config-pod: 'flex-ocp-cord-voltha-master'
# profile: 'att-workflow'
# branch: 'master'
@@ -65,7 +65,7 @@
# flex OCP pod with olt/onu - seba-1.0/cord-6.1 release
# - 'build_pod_timer':
- # testvm: 'qa-testvm-pod'
+ # build-node: 'qa-testvm-pod'
# config-pod: 'flex-ocp-cord-voltha16'
# profile: 'att-workflow'
# branch: 'cord-6.1'
@@ -77,7 +77,7 @@
# flex OCP test job - using voltha-master branch
- 'build_pod_test':
- testvm: 'qa-testvm-pod'
+ build-node: 'qa-testvm-pod'
config-pod: 'flex-ocp-cord-voltha-master'
profile: 'att-workflow'
branch: 'master'
@@ -86,7 +86,7 @@
# flex ocp pod test job - seba-1.0/cord-6.1 release
- 'build_pod_test':
- testvm: 'qa-testvm-pod'
+ build-node: 'qa-testvm-pod'
config-pod: 'flex-ocp-cord-voltha16'
profile: 'att-workflow'
branch: 'cord-6.1'
diff --git a/jjb/cord-test/mcord.yaml b/jjb/cord-test/mcord.yaml
index 917d927..6e9fdd1 100644
--- a/jjb/cord-test/mcord.yaml
+++ b/jjb/cord-test/mcord.yaml
@@ -11,14 +11,14 @@
jobs:
# onlab mcord-pod1 build
- 'build_mcord_pod_manual':
- testvm: 'onf-build'
+ build-node: 'onf-build'
config-pod: 'onf-mcord-pod1'
profile: 'mcord'
branch: 'master'
Jenkinsfile: 'Jenkinsfile-mcord-local-build'
- 'build_mcord_pod_manual':
- testvm: 'onf-build'
+ build-node: 'onf-build'
config-pod: 'onf-mcord-pod2'
profile: 'mcord'
branch: 'master'
@@ -26,7 +26,7 @@
Jenkinsfile: 'Jenkinsfile-mcord-remote-build'
- 'build_mcord_pod_manual':
- testvm: 'mcord-dt'
+ build-node: 'mcord-dt'
config-pod: 'mcord-barcellona-remote-dt'
profile: 'mcord'
branch: 'master'
diff --git a/jjb/cord-test/nightly-build-pipeline.yaml b/jjb/cord-test/nightly-build-pipeline.yaml
index b8cff5d..ac9258d 100644
--- a/jjb/cord-test/nightly-build-pipeline.yaml
+++ b/jjb/cord-test/nightly-build-pipeline.yaml
@@ -28,9 +28,14 @@
parameters:
- string:
+ name: buildNode
+ default: '{build-node}'
+ description: 'Name of the Jenkins executor node to run the job on'
+
+ - string:
name: TestNodeName
- default: '{testvm}'
- description: 'Jenkins node name of TestVM Node'
+ default: '{build-node}'
+ description: 'DEPRECATED - use buildNode instead'
- string:
name: cordRepoUrl
@@ -136,9 +141,14 @@
parameters:
- string:
+ name: buildNode
+ default: '{build-node}'
+ description: 'Name of the Jenkins executor node to run the job on'
+
+ - string:
name: TestNodeName
- default: '{testvm}'
- description: 'Jenkins node name of TestVM Node'
+ default: '{build-node}'
+ description: 'DEPRECATED - use buildNode instead'
- string:
name: cordRepoUrl
@@ -243,9 +253,14 @@
parameters:
- string:
+ name: buildNode
+ default: '{build-node}'
+ description: 'Name of the Jenkins executor node to run the job on'
+
+ - string:
name: TestNodeName
- default: '{testvm}'
- description: 'Jenkins node name of TestVM Node'
+ default: '{build-node}'
+ description: 'DEPRECATED - use buildNode instead'
- string:
name: cordRepoUrl
@@ -315,9 +330,14 @@
parameters:
- string:
+ name: buildNode
+ default: '{build-node}'
+ description: 'Name of the Jenkins executor node to run the job on'
+
+ - string:
name: TestNodeName
- default: '{testvm}'
- description: 'Jenkins node name of TestVM Node'
+ default: '{build-node}'
+ description: 'DEPRECATED - use buildNode instead'
- string:
name: cordRepoUrl
@@ -382,9 +402,14 @@
parameters:
- string:
+ name: buildNode
+ default: '{build-node}'
+ description: 'Name of the Jenkins executor node to run the job on'
+
+ - string:
name: TestNodeName
- default: '{testvm}'
- description: 'Jenkins node name of TestVM Node'
+ default: '{build-node}'
+ description: 'DEPRECATED - use buildNode instead'
- string:
name: cordRepoUrl
@@ -474,9 +499,14 @@
parameters:
- string:
+ name: buildNode
+ default: '{build-node}'
+ description: 'Name of the Jenkins executor node to run the job on'
+
+ - string:
name: TestNodeName
- default: '{testvm}'
- description: 'Jenkins node name of TestVM Node'
+ default: '{build-node}'
+ description: 'DEPRECATED - use buildNode instead'
- string:
name: cordRepoUrl
@@ -576,9 +606,14 @@
parameters:
- string:
+ name: buildNode
+ default: '{build-node}'
+ description: 'Name of the Jenkins executor node to run the job on'
+
+ - string:
name: TestNodeName
- default: '{testvm}'
- description: 'Jenkins node name of TestVM Node'
+ default: '{build-node}'
+ description: 'DEPRECATED - use buildNode instead'
- string:
name: cordRepoUrl
@@ -649,9 +684,14 @@
parameters:
- string:
+ name: buildNode
+ default: '{build-node}'
+ description: 'Name of the Jenkins executor node to run the job on'
+
+ - string:
name: TestNodeName
- default: '{testvm}'
- description: 'Jenkins node name of TestVM Node'
+ default: '{build-node}'
+ description: 'DEPRECATED - use buildNode instead'
- string:
name: cordRepoUrl
@@ -722,9 +762,14 @@
parameters:
- string:
+ name: buildNode
+ default: '{build-node}'
+ description: 'Name of the Jenkins executor node to run the job on'
+
+ - string:
name: TestNodeName
- default: '{testvm}'
- description: 'Jenkins node name of TestVM Node'
+ default: '{build-node}'
+ description: 'DEPRECATED - use buildNode instead'
- string:
name: cordRepoUrl
@@ -791,7 +836,7 @@
- '{branch}'
- job-template:
- name: 'build_{config-pod}_{profile}_voltha_{release}'
+ name: 'build_{config-pod}_{profile}{name-extension}_voltha_{release}'
id: build_voltha_pod_release
description: |
<!-- Managed by Jenkins Job Builder -->
@@ -804,9 +849,14 @@
parameters:
- string:
+ name: buildNode
+ default: '{build-node}'
+ description: 'Name of the Jenkins executor node to run the job on'
+
+ - string:
name: TestNodeName
- default: '{testvm}'
- description: 'Jenkins node name of TestVM Node'
+ default: '{build-node}'
+ description: 'DEPRECATED - use buildNode instead'
- string:
name: cordRepoUrl
@@ -888,6 +938,11 @@
default: '{with-kind}'
description: "The pods uses kind and a physical fabric thus port forward to the management is needed"
+ - bool:
+ name: ofagentGo
+ default: '{use-ofagent-go}'
+ description: "Installs POD with go version when true"
+
concurrent: true
pipeline-scm:
@@ -904,7 +959,7 @@
H {time} * * *
- job-template:
- name: 'build_{config-pod}_{profile}_voltha_{release}_test'
+ name: 'build_{config-pod}_{profile}_voltha{name-extension}_{release}_test'
id: build_voltha_pod_test
description: |
<!-- Managed by Jenkins Job Builder -->
@@ -921,8 +976,13 @@
parameters:
- string:
name: buildNode
- default: '{testvm}'
- description: 'Jenkins node name of TestVM Node'
+ 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
diff --git a/jjb/cord-test/seba-release.yaml b/jjb/cord-test/seba-release.yaml
index b572d6b..a5f6021 100644
--- a/jjb/cord-test/seba-release.yaml
+++ b/jjb/cord-test/seba-release.yaml
@@ -11,7 +11,7 @@
jobs:
# onlab pod1 build 1.0
- 'build_pod_manual_release':
- testvm: 'onf-build'
+ build-node: 'onf-build'
config-pod: 'onlab-pod1-voltha16'
release: '1.0'
branch: 'cord-6.1'
@@ -20,7 +20,7 @@
# onlab pod1 build 2.0
- 'build_pod_manual_release':
- testvm: 'onf-build'
+ build-node: 'onf-build'
config-pod: 'onlab-pod1'
release: '2.0'
branch: 'master'
@@ -29,7 +29,7 @@
# onlab pod1 test job - release 2.0 test job
- 'build_pod_release_test':
- testvm: 'onf-build'
+ build-node: 'onf-build'
config-pod: 'onlab-pod1'
release: '2.0'
branch: 'master'
@@ -37,7 +37,7 @@
# onlab pod2 build
- 'build_pod_manual_release':
- testvm: 'onf-build'
+ build-node: 'onf-build'
config-pod: 'onlab-pod2'
release: '1.0'
branch: 'cord-6.1'
@@ -46,7 +46,7 @@
# onlab pod2 build 2.0
- 'build_pod_manual_release':
- testvm: 'onf-build'
+ build-node: 'onf-build'
config-pod: 'onlab-pod2'
release: '2.0'
branch: 'master'
@@ -55,7 +55,7 @@
# Flex POD build 2.0
- 'build_pod_manual_release':
- testvm: 'qa-testvm-pod'
+ build-node: 'qa-testvm-pod'
config-pod: 'flex-ocp-cord'
release: '2.0'
branch: 'master'
@@ -64,7 +64,7 @@
# # flex OCP pod with olt/onu - release 2.0 build job
# - 'build_pod_release':
- # testvm: 'qa-testvm-pod'
+ # build-node: 'qa-testvm-pod'
# config-pod: 'flex-ocp-cord'
# release: '1.0'
# branch: 'cord-6.1'
@@ -74,7 +74,7 @@
# # flex OCP pod with olt/onu - release 2.0 build job
# - 'build_pod_release':
- # testvm: 'qa-testvm-pod'
+ # build-node: 'qa-testvm-pod'
# config-pod: 'flex-ocp-cord'
# release: '2.0'
# branch: 'master'
@@ -84,7 +84,7 @@
#
# # flex OCP POD with olt/onu - release 1.0 test job
# - 'build_pod_release_test':
- # testvm: 'qa-testvm-pod'
+ # build-node: 'qa-testvm-pod'
# config-pod: 'flex-ocp-cord'
# release: '1.0'
# branch: 'cord-6.1'
@@ -92,7 +92,7 @@
#
# # flex OCP POD with olt/onu - release 2.0 test job
# - 'build_pod_release_test':
- # testvm: 'qa-testvm-pod'
+ # build-node: 'qa-testvm-pod'
# config-pod: 'flex-ocp-cord'
# release: '2.0'
# branch: 'master'
@@ -100,7 +100,7 @@
#
# # flex OCP pod with olt/onu : using voltha latest(master)
# - 'build_pod_release':
- # testvm: 'qa-testvm-pod'
+ # build-node: 'qa-testvm-pod'
# config-pod: 'flex-ocp-cord'
# release: '2.0-microcharts'
# branch: 'master'
@@ -110,7 +110,7 @@
#
# # flex OCP test job - release 2.0 test job
# - 'build_pod_release_test':
- # testvm: 'qa-testvm-pod'
+ # build-node: 'qa-testvm-pod'
# config-pod: 'flex-ocp-cord'
# release: '2.0-microcharts'
# branch: 'master'
diff --git a/jjb/cord-test/voltha.yaml b/jjb/cord-test/voltha.yaml
index d85577d..2526400 100644
--- a/jjb/cord-test/voltha.yaml
+++ b/jjb/cord-test/voltha.yaml
@@ -9,13 +9,14 @@
build-timeout: '300'
with-kind: false
+ use-ofagent-go: false
onos-version: '2.2'
power-switch: False
jobs:
# flex OCP pod with olt/onu - manual test job, voltha master build job
- 'build_pod_manual':
- testvm: 'qa-testvm-pod'
+ build-node: 'qa-testvm-pod'
config-pod: 'flex-ocp-cord'
release: 'master'
branch: 'master'
@@ -26,7 +27,7 @@
# flex pod1 test job - using voltha branch
- 'build_pod_test':
- testvm: 'qa-testvm-pod'
+ build-node: 'qa-testvm-pod'
config-pod: 'flex-ocp-cord'
profile: '1T4GEM-bal31'
branch: 'master'
@@ -35,7 +36,7 @@
# onlab pod1 OCP pod with olt/onu - Manual testing BAL3.1 release voltha master build job
- 'build_pod_manual':
- testvm: 'onf-build'
+ build-node: 'onf-build'
config-pod: 'onlab-pod1'
release: 'master'
branch: 'master'
@@ -46,7 +47,7 @@
# onlab pod1 test job - BAL3.1 tests using voltha branch
- 'build_pod_test':
- testvm: 'onf-build'
+ build-node: 'onf-build'
config-pod: 'onlab-pod1'
profile: '1T4GEM'
branch: 'master'
@@ -55,7 +56,7 @@
# flex OCP pod with olt/onu - Default tech profile and timer based job
- 'build_voltha_pod_release':
- testvm: 'qa-testvm-pod'
+ build-node: 'qa-testvm-pod'
config-pod: 'flex-ocp-cord'
release: 'master'
branch: 'master'
@@ -69,7 +70,7 @@
# flex pod1 test job - uses tech profile on voltha branch
- 'build_voltha_pod_test':
- testvm: 'qa-testvm-pod'
+ build-node: 'qa-testvm-pod'
config-pod: 'flex-ocp-cord'
release: 'master'
branch: 'master'
@@ -80,7 +81,7 @@
# flex OCP pod with olt/onu - uses 1TCONT/4GEMs tech profile on voltha - timer based job
- 'build_voltha_pod_release':
- testvm: 'qa-testvm-pod'
+ build-node: 'qa-testvm-pod'
config-pod: 'flex-ocp-cord'
release: 'master'
branch: 'master'
@@ -94,7 +95,7 @@
# flex pod1 test job - test job uses 1TCONT/4GEMs tech profile - using voltha branch
- 'build_voltha_pod_test':
- testvm: 'qa-testvm-pod'
+ build-node: 'qa-testvm-pod'
config-pod: 'flex-ocp-cord'
release: 'master'
branch: 'master'
@@ -105,7 +106,7 @@
# flex OCP pod with olt/onu - Released versions Default tech profile and timer based job
- 'build_voltha_pod_release':
- testvm: 'qa-testvm-pod'
+ build-node: 'qa-testvm-pod'
config-pod: 'flex-ocp-cord'
release: 'release'
branch: 'master'
@@ -119,7 +120,7 @@
# flex pod1 test job - released versions: uses tech profile on voltha branch
- 'build_voltha_pod_test':
- testvm: 'qa-testvm-pod'
+ build-node: 'qa-testvm-pod'
config-pod: 'flex-ocp-cord'
release: 'release'
branch: 'master'
@@ -129,7 +130,7 @@
# Menlo pod with olt/onu - Default tech profile and timer based job
- 'build_voltha_pod_release':
- testvm: 'menlo-demo-pod'
+ build-node: 'menlo-demo-pod'
config-pod: 'onf-demo-pod'
release: 'master'
branch: 'master'
@@ -143,7 +144,7 @@
# Menlo pod test job - uses tech profile on voltha branch
- 'build_voltha_pod_test':
- testvm: 'menlo-demo-pod'
+ build-node: 'menlo-demo-pod'
config-pod: 'onf-demo-pod'
release: 'master'
branch: 'master'
@@ -153,7 +154,7 @@
# Menlo pod with olt/onu - Default tech profile and timer based job
- 'build_voltha_pod_release':
- testvm: 'menlo-demo-pod'
+ build-node: 'menlo-demo-pod'
config-pod: 'onf-demo-pod'
release: 'release'
branch: 'master'
@@ -167,7 +168,7 @@
# Menlo pod test job - uses tech profile on voltha branch
- 'build_voltha_pod_test':
- testvm: 'menlo-demo-pod'
+ build-node: 'menlo-demo-pod'
config-pod: 'onf-demo-pod'
release: 'release'
branch: 'master'
@@ -177,7 +178,7 @@
# Menlo pod with olt/onu - 1T4GEM tech profile and timer based job
- 'build_voltha_pod_release':
- testvm: 'menlo-demo-pod'
+ build-node: 'menlo-demo-pod'
config-pod: 'onf-demo-pod'
release: 'master'
branch: 'master'
@@ -189,9 +190,9 @@
profile: '1T4GEM-bal31'
time: '4'
- # Menlo pod test job - uses tech profile on voltha branch
+ # Menlo pod test job - master test job uses tech profile on voltha branch
- 'build_voltha_pod_test':
- testvm: 'menlo-demo-pod'
+ build-node: 'menlo-demo-pod'
config-pod: 'onf-demo-pod'
release: 'master'
branch: 'master'
@@ -199,9 +200,63 @@
test-repo: 'voltha-system-tests'
profile: '1T4GEM-bal31'
+ # Menlo pod with olt/onu - Uses GO Version - Default tech profile and timer based job
+ - 'build_voltha_pod_release':
+ build-node: 'menlo-demo-pod'
+ config-pod: 'onf-demo-pod'
+ release: 'master'
+ branch: 'master'
+ name-extension: '_GO'
+ use-ofagent-go: true
+ released: false
+ test-repo: 'voltha-system-tests'
+ Jenkinsfile: 'Jenkinsfile-voltha-bal31-build'
+ oltDebVersion: 'openolt_asfvolt16_bal3.2.deb'
+ configurePod: true
+ profile: 'Default'
+ time: '6'
+
+ # Menlo pod test job - uses tech profile on voltha branch
+ - 'build_voltha_pod_test':
+ build-node: 'menlo-demo-pod'
+ config-pod: 'onf-demo-pod'
+ release: 'master'
+ branch: 'master'
+ name-extension: '_GO'
+ released: false
+ test-repo: 'voltha-system-tests'
+ profile: 'Default'
+
+ # Menlo pod with olt/onu - Uses GO Version - Default tech profile and timer based job
+ - 'build_voltha_pod_release':
+ build-node: 'menlo-demo-pod'
+ config-pod: 'onf-demo-pod'
+ release: 'master'
+ branch: 'master'
+ name-extension: '_GO'
+ use-ofagent-go: true
+ released: false
+ test-repo: 'voltha-system-tests'
+ Jenkinsfile: 'Jenkinsfile-voltha-bal31-build'
+ oltDebVersion: 'openolt_asfvolt16_bal3.2.deb'
+ configurePod: true
+ profile: '1T4GEM-bal31'
+ time: '8'
+
+ # Menlo pod test job - uses tech profile on voltha branch
+ - 'build_voltha_pod_test':
+ build-node: 'menlo-demo-pod'
+ config-pod: 'onf-demo-pod'
+ release: 'master'
+ branch: 'master'
+ name-extension: '_GO'
+ released: false
+ test-repo: 'voltha-system-tests'
+ profile: '1T4GEM-bal31'
+
# Menlo DEMO-POD - 1 1TCONT 4 4GEMs TechProfile - Manual build and test job
- 'build_pod_manual':
- testvm: 'menlo-demo-pod'
+ build-node: 'menlo-demo-pod'
config-pod: 'onf-demo-pod'
release: 'master'
branch: 'master'
@@ -211,7 +266,7 @@
configurePod: true
profile: '1T4GEM-bal31'
- 'build_pod_test':
- testvm: 'menlo-demo-pod'
+ build-node: 'menlo-demo-pod'
config-pod: 'onf-demo-pod'
branch: 'master'
test-repo: 'voltha-system-tests'
@@ -220,7 +275,7 @@
# Menlo DEMO-POD - Default TechProfile - manual build job
- 'build_pod_manual':
- testvm: 'menlo-demo-pod'
+ build-node: 'menlo-demo-pod'
config-pod: 'onf-demo-pod'
release: 'master'
branch: 'master'
@@ -232,7 +287,7 @@
# ONF DEMO OCP test job - voltha-master branch
- 'build_pod_test':
- testvm: 'menlo-demo-pod'
+ build-node: 'menlo-demo-pod'
config-pod: 'onf-demo-pod'
profile: 'Default'
branch: 'master'
@@ -241,7 +296,7 @@
# Infosys pod with olt/onu - Default tech profile and timer based job
- 'build_voltha_pod_release':
- testvm: 'infosys-test-pod'
+ build-node: 'infosys-test-pod'
config-pod: 'infosys-pod'
release: 'master'
branch: 'master'
@@ -255,7 +310,7 @@
# infosys test job - uses Default tech profile on voltha branch
- 'build_voltha_pod_test':
- testvm: 'infosys-test-pod'
+ build-node: 'infosys-test-pod'
config-pod: 'infosys-pod'
release: 'master'
branch: 'master'
@@ -264,29 +319,29 @@
profile: 'Default'
- # Berlin pod with olt/onu - Released versions Default tech profile and timer based job
+ # Berlin pod with olt/onu - master versions Default tech profile and timer based job
- 'build_voltha_pod_release':
- testvm: 'dt-berlin-community-pod'
+ build-node: 'dt-berlin-community-pod'
config-pod: 'dt-berlin-pod'
- release: 'release'
+ release: 'master'
branch: 'master'
onos-version: '2.2'
test-repo: 'voltha-system-tests'
Jenkinsfile: 'Jenkinsfile-voltha-bal31-build'
oltDebVersion: 'openolt_asfvolt16_bal3.2.deb'
configurePod: true
- released: true
+ released: false
profile: 'Default'
with-kind: true
time: '9'
- # Berlin POD test job - released versions: uses tech profile on voltha branch
+ # Berlin POD test job - master versions: uses tech profile on voltha branch
- 'build_voltha_pod_test':
- testvm: 'dt-berlin-community-pod'
+ build-node: 'dt-berlin-community-pod'
config-pod: 'dt-berlin-pod'
- release: 'release'
+ release: 'master'
branch: 'master'
- released: true
+ released: false
test-repo: 'voltha-system-tests'
profile: 'Default'
diff --git a/jjb/pipeline/siab-test.groovy b/jjb/pipeline/siab-test.groovy
index b13ca11..1ab109e 100644
--- a/jjb/pipeline/siab-test.groovy
+++ b/jjb/pipeline/siab-test.groovy
@@ -47,18 +47,6 @@
}
}
- // FIXME: remove once Zack completes cord-tester refactoring, as master is
- // currently broken for siab tests.
- stage('Cord-tester fix') {
- steps {
- sh """
- pushd $WORKSPACE/cord/test/cord-tester
- git checkout -b foo 7b3f901659a22c09e4759e343ad693b80125e06b
- popd
- """
- }
- }
-
stage ('Reset Kubeadm') {
steps {
sh """
diff --git a/jjb/pipeline/voltha-go-tests.groovy b/jjb/pipeline/voltha-go-tests.groovy
index 33da214..5e519c2 100644
--- a/jjb/pipeline/voltha-go-tests.groovy
+++ b/jjb/pipeline/voltha-go-tests.groovy
@@ -108,6 +108,27 @@
sleep 60 # Wait for log-collector and log-combine to complete
+ ## Pull out errors from log files
+ extract_errors_go() {
+ echo
+ echo "Error summary for $1:"
+ grep '"level":"error"' $WORKSPACE/kind-voltha/scripts/logger/combined/$1*
+ echo
+ }
+
+ extract_errors_python() {
+ echo
+ echo "Error summary for $1:"
+ grep 'ERROR' $WORKSPACE/kind-voltha/scripts/logger/combined/$1*
+ echo
+ }
+
+ extract_errors_go voltha-rw-core > $WORKSPACE/error-report.log
+ extract_errors_go adapter-open-olt >> $WORKSPACE/error-report.log
+ extract_errors_python adapter-open-onu >> $WORKSPACE/error-report.log
+ extract_errors_go voltha-ofagent >> $WORKSPACE/error-report.log
+ extract_errors_python onos >> $WORKSPACE/error-report.log
+
cd $WORKSPACE/kind-voltha/scripts/logger/combined/
tar czf $WORKSPACE/container-logs.tgz *
diff --git a/jjb/pipeline/voltha-physical-functional-tests.groovy b/jjb/pipeline/voltha-physical-functional-tests.groovy
index 51eb413..23b01c9 100644
--- a/jjb/pipeline/voltha-physical-functional-tests.groovy
+++ b/jjb/pipeline/voltha-physical-functional-tests.groovy
@@ -137,6 +137,30 @@
sleep 60 # Wait for log-collector and log-combine to complete
+ # Clean up "announcer" pod used by the tests if present
+ kubectl delete pod announcer || true
+
+ ## Pull out errors from log files
+ extract_errors_go() {
+ echo
+ echo "Error summary for $1:"
+ grep '"level":"error"' $WORKSPACE/kind-voltha/scripts/logger/combined/$1*
+ echo
+ }
+
+ extract_errors_python() {
+ echo
+ echo "Error summary for $1:"
+ grep 'ERROR' $WORKSPACE/kind-voltha/scripts/logger/combined/$1*
+ echo
+ }
+
+ extract_errors_go voltha-rw-core > $WORKSPACE/error-report.log
+ extract_errors_go adapter-open-olt >> $WORKSPACE/error-report.log
+ extract_errors_python adapter-open-onu >> $WORKSPACE/error-report.log
+ extract_errors_python voltha-ofagent >> $WORKSPACE/error-report.log
+ extract_errors_python onos >> $WORKSPACE/error-report.log
+
cd $WORKSPACE/kind-voltha/scripts/logger/combined/
tar czf $WORKSPACE/container-logs.tgz *
diff --git a/jjb/pipeline/voltha-scale-measurements.groovy b/jjb/pipeline/voltha-scale-measurements.groovy
index 0c59b53..ae01f94 100644
--- a/jjb/pipeline/voltha-scale-measurements.groovy
+++ b/jjb/pipeline/voltha-scale-measurements.groovy
@@ -25,14 +25,19 @@
stage('set-description') {
steps {
script {
- currentBuild.description = "${onuPerPon} ONU x ${ponPorts} PON - BBSIM Delay ${BBSIMdelay}"
+ currentBuild.description = "$BUILD_TIMESTAMP"
}
}
}
stage('cleanup') {
steps {
sh '''
- helm del --purge onos voltha openolt openonu bbsim radius
+ rm -rf voltha-devices.txt onos-ports.txt total-time.txt onu-activation.txt
+ for hchart in \$(helm list -q | grep -E -v 'docker-registry|cord-kafka|etcd-operator');
+ do
+ echo "Purging chart: \${hchart}"
+ helm delete --purge "\${hchart}"
+ done
bash /home/cord/voltha-scale/wait_for_pods.sh
bash /home/cord/voltha-scale/stop_port_forward.sh
'''
@@ -50,11 +55,18 @@
steps {
sh '''
helm install -n onos onf/onos --set images.onos.repository=voltha/voltha-onos --set images.onos.tag=4.0.1
- helm install -n voltha onf/voltha -f /home/cord/voltha-scale/voltha-values.yaml
- helm install -n openolt onf/voltha-adapter-openolt -f /home/cord/voltha-scale/voltha-values.yaml
- helm install -n openonu onf/voltha-adapter-openonu -f /home/cord/voltha-scale/voltha-values.yaml
- helm install -n bbsim onf/bbsim --set pon=${ponPorts},onu=${onuPerPon},auth=${bbsimAuth},dhcp=${bbsimDhcp},delay=${BBSIMdelay}
+ IFS=: read -r volthaRepo volthaTag <<< ${volthaImg}
+ helm install -n voltha onf/voltha -f /home/cord/voltha-scale/voltha-values.yaml --set images.voltha.repository=${volthaRepo},images.voltha.tag=${volthaTag}
+
+ IFS=: read -r openoltAdapterRepo openoltAdapterTag <<< ${openoltAdapterImg}
+ helm install -n openolt onf/voltha-adapter-openolt -f /home/cord/voltha-scale/voltha-values.yaml --set images.adapter_open_olt.repository=${openoltAdapterRepo},images.adapter_open_olt.tag=${openoltAdapterTag}
+
+ IFS=: read -r openonuAdapterRepo openonuAdapterTag <<< ${openonuAdapterImg}
+ helm install -n openonu onf/voltha-adapter-openonu -f /home/cord/voltha-scale/voltha-values.yaml --set images.adapter_open_olt.repository=${openonuAdapterRepo},images.adapter_open_olt.tag=${openonuAdapterTag}
+
+ IFS=: read -r bbsimRepo bbsimTag <<< ${bbsimImg}
+ helm install -n bbsim onf/bbsim --set pon=${ponPorts},onu=${onuPerPon},auth=${bbsimAuth},dhcp=${bbsimDhcp},delay=${BBSIMdelay},images.bbsim.repository=${bbsimRepo},images.bbsim.tag=${bbsimTag}
helm install -n radius onf/freeradius
if [ ! -z ${bbsimImg} ];
@@ -137,7 +149,7 @@
i=$(voltctl device list | grep -v OLT | grep ACTIVE | wc -l)
done
echo "${expectedOnus} ONUs Activated in $SECONDS seconds (time: $SECONDS)"
- echo $SECONDS > activation-time.txt
+ echo $SECONDS > voltha-devices.txt
'''
}
}
@@ -153,11 +165,11 @@
z=$(sshpass -e ssh -q -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -p 30115 karaf@localhost ports -e | grep BBSM | wc -l)
done
echo "${expectedOnus} ports enabled in $SECONDS seconds (time: $SECONDS)"
- echo $SECONDS > port-recognition.txt
+ echo $SECONDS > onos-ports.txt
echo "ONOS-Duration(s)" > total-time.txt
echo "VOLTHA-Duration(s)" > onu-activation.txt
- cat activation-time.txt >> onu-activation.txt
- paste activation-time.txt port-recognition.txt | awk '{print ($1 + $2)}' >> total-time.txt
+ cat voltha-devices.txt >> onu-activation.txt
+ paste voltha-devices.txt onos-ports.txt | awk '{print ($1 + $2)}' >> total-time.txt
'''
}
}
@@ -169,23 +181,23 @@
plot([
csvFileName: 'plot-onu-activation.csv',
csvSeries: [[displayTableFlag: false, exclusionValues: '', file: 'onu-activation.txt', inclusionFlag: 'OFF', url: ''], [displayTableFlag: false, exclusionValues: '', file: 'total-time.txt', inclusionFlag: 'OFF', url: '']],
- group: 'Voltha-Scale-Numbers', numBuilds: '100', style: 'line', title: 'Time (200ms Delay)', useDescr: true, yaxis: 'Time (s)'
+ group: 'Voltha-Scale-Numbers', numBuilds: '100', style: 'line', title: "Time (${BBSIMdelay}s Delay)", yaxis: 'Time (s)', useDescr: true
])
- archiveArtifacts artifacts: '*.log,*.txt'
script {
sh '''
kubectl get pods --all-namespaces -o jsonpath="{range .items[*].status.containerStatuses[*]}{.image}{'\\t'}{.imageID}{'\\n'}" | sort | uniq -c
+ voltctl device list -o json > device-list.json
+ python -m json.tool device-list.json > volt-device-list.json
+ rm device-list.json
+ sshpass -e ssh -q -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -p 30115 karaf@localhost ports > onos-ports-list.txt
'''
}
+ archiveArtifacts artifacts: '*.log,*.json,*txt'
}
success {
sh '''
#!/usr/bin/env bash
set +e
- rm onu-activation.txt
- rm total-time.txt
- rm port-recognition.txt
- rm activation-time.txt
'''
}
}
diff --git a/jjb/siab.yaml b/jjb/siab.yaml
index 3d12c2c..0dc5d9d 100644
--- a/jjb/siab.yaml
+++ b/jjb/siab.yaml
@@ -18,7 +18,7 @@
description: |
<!-- Managed by Jenkins Job Builder -->
- Created by {id} job-template from ci-management/jjb/siba.yaml <br /><br />
+ Created by {id} job-template from ci-management/jjb/siab.yaml <br /><br />
E2E Validation for Seba-in-a-Box
properties:
@@ -68,7 +68,7 @@
description: |
<!-- Managed by Jenkins Job Builder -->
- Created by {id} job-template from ci-management/jjb/siba.yaml <br /><br />
+ Created by {id} job-template from ci-management/jjb/siab.yaml, with pipleine: siab.groovy <br /><br />
E2E Validation for Seba-in-a-Box
properties:
@@ -118,7 +118,7 @@
description: |
<!-- Managed by Jenkins Job Builder -->
- Created by {id} job-template from ci-management/jjb/siba.yaml <br /><br />
+ Created by {id} job-template from ci-management/jjb/siab.yaml, with pipleine: siab.groovy <br /><br />
E2E Validation for Seba-in-a-Box
properties:
@@ -169,7 +169,7 @@
description: |
<!-- Managed by Jenkins Job Builder -->
- Created by {id} job-template from ci-management/jjb/siba.yaml <br /><br />
+ Created by {id} job-template from ci-management/jjb/siab.yaml, with pipleine: siab-test.groovy <br /><br />
E2E Validation for Seba-in-a-Box
properties:
diff --git a/jjb/voltha-e2e.yaml b/jjb/voltha-e2e.yaml
index f898a90..df7e573 100644
--- a/jjb/voltha-e2e.yaml
+++ b/jjb/voltha-e2e.yaml
@@ -60,10 +60,20 @@
pons: 8
time-trigger: "H H/3 * * *"
+ - 'voltha-periodic-test':
+ name: 'periodic-voltha-alarm-test'
+ build-node: 'qct-pod4-node2'
+ default-image-tag: 'master'
+ code-branch: 'master'
+ make-target: bbsim-alarms-kind
+ onus: 1
+ pons: 1
+ time-trigger: "H H/3 * * *"
+
# Per-patchset Pod builds on Tucson pod
- 'verify_physical_voltha_patchset_auto':
name: 'verify_physical_voltha_patchset_auto'
- testvm: 'tucson-pod'
+ build-node: 'tucson-pod'
config-pod: 'tucson-pod'
branch: 'master'
oltDebVersion: 'openolt_asfvolt16.deb'
@@ -73,7 +83,7 @@
# Per-patchset Pod builds on Tucson pod
- 'verify_physical_voltha_patchset_manual':
name: 'verify_physical_voltha_patchset_manual'
- testvm: 'tucson-pod'
+ build-node: 'tucson-pod'
config-pod: 'tucson-pod'
branch: 'master'
oltDebVersion: 'openolt_asfvolt16.deb'
@@ -84,7 +94,7 @@
# Allow local testing without disrupting above job
- 'build_physical_voltha_manual':
name: 'build_tucson-pod_manual'
- testvm: 'tucson-pod'
+ build-node: 'tucson-pod'
config-pod: 'tucson-pod'
branch: 'master'
oltDebVersion: 'openolt_asfvolt16.deb'
@@ -272,7 +282,7 @@
parameters:
- string:
name: buildNode
- default: '{testvm}'
+ default: '{build-node}'
description: 'Pod management node'
- string:
@@ -413,7 +423,7 @@
parameters:
- string:
name: buildNode
- default: '{testvm}'
+ default: '{build-node}'
description: 'Pod management node'
- string:
@@ -555,7 +565,7 @@
parameters:
- string:
name: buildNode
- default: '{testvm}'
+ default: '{build-node}'
description: 'Pod management node'
- string:
diff --git a/jjb/voltha-scale.yaml b/jjb/voltha-scale.yaml
index ce9308a..687c5fb 100644
--- a/jjb/voltha-scale.yaml
+++ b/jjb/voltha-scale.yaml
@@ -8,15 +8,124 @@
jobs:
- 'voltha-scale-measurements-periodic':
- name: 'voltha-scale-measurements-manual'
+ name: 'voltha-scale-measurements-periodic-8-32-200ms'
build-node: 'onf-pod1-head-node'
- time-trigger: "H * * * *"
+ time-trigger: "H H/3 * * *"
onuPerPon: 32
ponPorts: 8
expectedOnus: 256
+ BBSIMdelay: 200
+ - 'voltha-scale-measurements-periodic':
+ name: 'voltha-scale-measurements-periodic-8-32-1000ms'
+ build-node: 'onf-pod1-head-node'
+ time-trigger: "H H/3 * * *"
+ onuPerPon: 32
+ ponPorts: 8
+ expectedOnus: 256
+ BBSIMdelay: 1000
+ - 'voltha-scale-measurements-periodic':
+ name: 'voltha-scale-measurements-periodic-4-32-200ms'
+ build-node: 'onf-pod1-head-node'
+ time-trigger: "H H/3 * * *"
+ onuPerPon: 32
+ ponPorts: 4
+ expectedOnus: 128
+ BBSIMdelay: 200
+ - 'voltha-scale-measurements-periodic':
+ name: 'voltha-scale-measurements-periodic-4-32-1000ms'
+ build-node: 'onf-pod1-head-node'
+ time-trigger: "H H/3 * * *"
+ onuPerPon: 32
+ ponPorts: 4
+ expectedOnus: 128
+ BBSIMdelay: 1000
+ - 'voltha-scale-measurements-periodic':
+ name: 'voltha-scale-measurements-periodic-16-32-200ms'
+ build-node: 'onf-pod1-head-node'
+ time-trigger: "H H/3 * * *"
+ onuPerPon: 32
+ ponPorts: 16
+ expectedOnus: 512
+ BBSIMdelay: 200
+ - 'voltha-scale-measurements-periodic':
+ name: 'voltha-scale-measurements-periodic-16-32-1000ms'
+ build-node: 'onf-pod1-head-node'
+ time-trigger: "H H/3 * * *"
+ onuPerPon: 32
+ ponPorts: 16
+ expectedOnus: 512
+ BBSIMdelay: 1000
+ - 'voltha-scale-measurements-periodic':
+ name: 'voltha-scale-measurements-periodic-4-64-200ms'
+ build-node: 'onf-pod1-head-node'
+ time-trigger: "H H/3 * * *"
+ onuPerPon: 64
+ ponPorts: 4
+ expectedOnus: 256
+ BBSIMdelay: 200
+ - 'voltha-scale-measurements-periodic':
+ name: 'voltha-scale-measurements-periodic-4-64-1000ms'
+ build-node: 'onf-pod1-head-node'
+ time-trigger: "H H/3 * * *"
+ onuPerPon: 64
+ ponPorts: 4
+ expectedOnus: 256
+ BBSIMdelay: 1000
+ - 'voltha-scale-measurements-periodic':
+ name: 'voltha-scale-measurements-periodic-4-128-200ms'
+ build-node: 'onf-pod1-head-node'
+ time-trigger: "H H/3 * * *"
+ onuPerPon: 128
+ ponPorts: 4
+ expectedOnus: 512
+ BBSIMdelay: 200
+ - 'voltha-scale-measurements-periodic':
+ name: 'voltha-scale-measurements-periodic-4-128-1000ms'
+ build-node: 'onf-pod1-head-node'
+ time-trigger: "H H/3 * * *"
+ onuPerPon: 128
+ ponPorts: 4
+ expectedOnus: 512
+ BBSIMdelay: 1000
+ - 'voltha-scale-measurements-periodic':
+ name: 'voltha-scale-measurements-periodic-1-128-200ms'
+ build-node: 'onf-pod1-head-node'
+ time-trigger: "H H/3 * * *"
+ onuPerPon: 128
+ ponPorts: 1
+ expectedOnus: 128
+ BBSIMdelay: 200
+ - 'voltha-scale-measurements-periodic':
+ name: 'voltha-scale-measurements-periodic-1-128-1000ms'
+ build-node: 'onf-pod1-head-node'
+ time-trigger: "H H/3 * * *"
+ onuPerPon: 128
+ ponPorts: 1
+ expectedOnus: 128
+ BBSIMdelay: 1000
+ - 'voltha-scale-measurements-periodic':
+ name: 'voltha-scale-measurements-periodic-1-64-200ms'
+ build-node: 'onf-pod1-head-node'
+ time-trigger: "H H/3 * * *"
+ onuPerPon: 64
+ ponPorts: 1
+ expectedOnus: 64
+ BBSIMdelay: 200
+ - 'voltha-scale-measurements-periodic':
+ name: 'voltha-scale-measurements-periodic-1-64-1000ms'
+ build-node: 'onf-pod1-head-node'
+ time-trigger: "H H/3 * * *"
+ onuPerPon: 64
+ ponPorts: 1
+ expectedOnus: 64
+ BBSIMdelay: 1000
- 'voltha-scale-measurements':
name: 'voltha-scale-measurements-dev'
build-node: 'voltha-scale-dev'
+ onuPerPon: 16
+ ponPorts: 1
+ expectedOnus: 16
+ BBSIMdelay: 200
- job-template:
id: 'voltha-scale-measurements-periodic'
@@ -47,17 +156,17 @@
- string:
name: onuPerPon
- default: 1
+ default: '{onuPerPon}'
description: 'Number of ONUs to provision'
- string:
name: ponPorts
- default: 1
+ default: '{ponPorts}'
description: 'Number of PONs to provision'
- string:
name: expectedOnus
- default: 1
+ default: '{expectedOnus}'
description: 'Expected number of activated ONUs'
- string:
@@ -82,7 +191,7 @@
- string:
name: BBSIMdelay
- default: 200
+ default: '{BBSIMdelay}'
description: 'BBSIM Delay, milliseconds'
- string:
@@ -107,14 +216,24 @@
- string:
name: bbsimImg
- default:
+ default: 'voltha/bbsim:master'
description: 'Custom image selection for BBSIM (repo:tag)'
- string:
name: volthaImg
- default:
+ default: 'voltha/voltha-rw-core:master'
description: 'Custom image selection for VOLTHA (repo:tag)'
+ - string:
+ name: openoltAdapterImg
+ default: voltha/voltha-openolt-adapter:master
+ description: 'Custom image selection for Openolt Adapter (repo:tag)'
+
+ - string:
+ name: openonuAdapterImg
+ default: voltha/voltha-openonu-adapter:master
+ description: 'Custom image selection for Openonu Adapter (repo:tag)'
+
project-type: pipeline
concurrent: false
@@ -214,14 +333,24 @@
- string:
name: bbsimImg
- default:
+ default: voltha/bbsim:master
description: 'Custom image selection for BBSIM (repo:tag)'
- string:
name: volthaImg
- default:
+ default: voltha/voltha-rw-core:master
description: 'Custom image selection for VOLTHA (repo:tag)'
+ - string:
+ name: openoltAdapterImg
+ default: voltha/voltha-openolt-adapter:master
+ description: 'Custom image selection for Openolt Adapter (repo:tag)'
+
+ - string:
+ name: openonuAdapterImg
+ default: voltha/voltha-openonu-adapter:master
+ description: 'Custom image selection for Openonu Adapter (repo:tag)'
+
project-type: pipeline
concurrent: false