| --- |
| # list of parameters for the VOLTHA Jobs, |
| # used as anchor so that can be shared across multiple jobs |
| # to use in a job: `parameters: *voltha-build-job-parameters` |
| - voltha-build-job-parameters: &voltha-build-job-parameters |
| name: voltha-build-job-parameters |
| |
| openoltAdapterChart: onf/voltha-adapter-openolt |
| |
| parameters: |
| - 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: logLevel |
| default: '{logLevel}' |
| description: 'Log level for all the components' |
| |
| - 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: helmRepoUrl |
| default: 'https://charts.opencord.org' |
| description: 'URL where helm-charts are published' |
| |
| - string: |
| name: branch |
| default: '{branch}' |
| |
| - string: |
| name: notificationEmail |
| default: 'you@opennetworking.org, suchitra@opennetworking.org' |
| description: '' |
| |
| - string: |
| name: workFlow |
| default: '{work-flow}' |
| description: 'Installs and uses the specified work flow on the POD' |
| |
| # openonu-go only supports a single replica, remove after 2.8 |
| - string: |
| name: NumOfOpenOnu |
| default: '{num-of-openonu}' |
| description: 'Installs the specified Number of OpenOnu Adapters' |
| |
| - string: |
| name: NumOfOnos |
| default: '{num-of-onos}' |
| description: 'Installs the specified Number of ONOS instances' |
| |
| - bool: |
| name: installBBSim |
| default: '{installBBSim}' |
| description: "Install the BBSim container" |
| |
| - string: |
| name: onuNumber |
| default: '{num-of-onus}' |
| description: "Onus per PonPort" |
| |
| - string: |
| name: ponNumber |
| default: '{num-of-ponports}' |
| description: "Number of PON Ports" |
| |
| - string: |
| name: NumOfAtomix |
| default: '{num-of-atomix}' |
| description: 'Installs the specified Number of Atomix Instances' |
| |
| - string: |
| name: NumOfKafka |
| default: '{num-of-kafka}' |
| description: 'Installs the specified Number of Kafka Instances' |
| |
| - string: |
| name: NumOfEtcd |
| default: '{num-of-etcd}' |
| description: 'Installs the specified Number of Etcd Instances' |
| |
| - bool: |
| name: configurePod |
| default: true |
| description: "Configure POD via TOSCA post build" |
| |
| - bool: |
| name: reinstallOlt |
| default: '{reinstall-olt}' |
| description: "Re-install olt software bringing up CORD" |
| |
| # withKind is not used in the master branch pipeline, remove after 2.8 |
| - bool: |
| name: withKind |
| default: '{with-kind}' |
| description: "The pods uses kind and a physical fabric thus port forward to the management is needed" |
| |
| - string: |
| name: VolthaEtcdPort |
| default: '{VolthaEtcdPort}' |
| description: 'Localhost port that is forwarded to VOLTHA etcd' |
| |
| - bool: |
| name: inBandManagement |
| default: '{in-band-management}' |
| description: 'Indicates whether POD is configured for in band management' |
| |
| - 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: volthaHelmChartsChange |
| default: '{volthaHelmChartsChange}' |
| description: 'Download a change for gerrit in the voltha-helm-charts repo, example value: "refs/changes/32/19132/1"' |
| |
| # kind-voltha is not used in the master branch pipeline, remove after 2.8 |
| - string: |
| name: kindVolthaChange |
| default: '{kindVolthaChange}' |
| description: 'Download a change for gerrit in the kind-voltha repo, example value: "refs/changes/32/19132/1"' |
| |
| # NOTE is this needed/used? |
| - string: |
| name: cordTesterChange |
| default: '{cordTesterChange}' |
| description: 'Download a change for gerrit in the kind-voltha repo, example value: "refs/changes/32/19132/1"' |
| |
| # this is used in the Adtran DT job |
| - string: |
| name: openoltAdapterChart |
| default: '{openoltAdapterChart}' |
| description: 'OpenOLT chart name (or location on file system)' |
| |
| # defualt properties for the VOLTHA scale jobs |
| - voltha-pipe-job-boiler-plate: &voltha-pipe-job-boiler-plate |
| name: voltha-pipe-job-boiler-plate |
| |
| project-type: pipeline |
| |
| sandbox: true |
| |
| properties: |
| - cord-infra-properties: |
| build-days-to-keep: '{big-build-days-to-keep}' |
| artifact-num-to-keep: '{big-artifact-num-to-keep}' |
| |
| # VOLTHA Build Jobs |
| - job-template: |
| name: 'build_{config-pod}_{profile}{name-extension}_voltha_{release}_manual' |
| id: build_voltha_pod_manual |
| 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 - suchitra@opennetworking.org ) <br /> |
| Copyright (c) 2018 Open Networking Foundation (ONF) |
| |
| <<: *voltha-pipe-job-boiler-plate |
| # default values |
| pipeline-script: 'voltha/master/physical-build.groovy' |
| VolthaEtcdPort: 2379 |
| num-of-openonu: 1 |
| num-of-onos: 1 |
| num-of-atomix: 0 |
| num-of-kafka: 1 |
| num-of-etcd: 1 |
| test-repo: 'voltha-system-tests' |
| release: 'master' |
| name-extension: '' |
| branch: 'master' |
| configurePod: true |
| volthaHelmChartsChange: '' |
| profile: 'Default' |
| logLevel: 'DEBUG' |
| installBBSim: false |
| num-of-onus: 0 |
| num-of-ponports: 0 |
| |
| <<: *voltha-build-job-parameters |
| |
| concurrent: true |
| project-type: pipeline |
| dsl: !include-raw-escape: ../pipeline/{pipeline-script} |
| |
| # VOLTHA Build Jobs |
| - job-template: |
| name: 'build_{config-pod}_{profile}{name-extension}_voltha_{release}' |
| id: build_voltha_pod_release_timer |
| 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 - suchitra@opennetworking.org ) <br /> |
| Copyright (c) 2018 Open Networking Foundation (ONF) |
| |
| <<: *voltha-pipe-job-boiler-plate |
| # default values |
| pipeline-script: 'voltha/master/physical-build.groovy' |
| VolthaEtcdPort: 2379 |
| num-of-openonu: 1 |
| num-of-onos: 3 |
| num-of-atomix: 3 |
| num-of-kafka: 3 |
| num-of-etcd: 3 |
| test-repo: 'voltha-system-tests' |
| release: 'master' |
| name-extension: '' |
| branch: 'master' |
| configurePod: true |
| volthaHelmChartsChange: '' |
| profile: 'Default' |
| logLevel: 'DEBUG' |
| installBBSim: false |
| num-of-onus: 0 |
| num-of-ponports: 0 |
| |
| <<: *voltha-build-job-parameters |
| |
| concurrent: true |
| project-type: pipeline |
| dsl: !include-raw-escape: ../pipeline/{pipeline-script} |
| |
| triggers: |
| - timed: | |
| TZ=America/Los_Angeles |
| H {time} * * * |
| |
| # this job template is defined to support VOLTHA-2.7 builds, remove after 2.8 |
| - job-template: |
| name: 'build_{config-pod}_{profile}{name-extension}_voltha_{release}' |
| id: build_voltha_pod_release_legacy |
| disabled: '{disable-job}' |
| description: | |
| Automatic Build on POD {config-pod}, using {Jenkinsfile} in {gerrit-server-url}/voltha-system-tests' <br /><br /> |
| Created from job-template {id} from ci-management/jjb/voltha-test/voltha-nightly-jobs.yaml <br /> |
| Created by QA (Suchitra Vemuri - suchitra@opennetworking.org ) <br /> |
| This job is triggered upon completion of a dependent _test job <br /> |
| Copyright (c) 2020 Open Networking Foundation (ONF) |
| |
| <<: *voltha-pipe-job-boiler-plate |
| VolthaEtcdPort: '2379' |
| release: '2.7' |
| branch: 'voltha-2.7' |
| volthaHelmChartsChange: '' # this is not supported in the VOLTHA-2.7 build, but the parameters are shared, ideally we should split them |
| logLevel: 'DEBUG' |
| installBBSim: false |
| num-of-onus: 0 |
| num-of-ponports: 0 |
| num-of-kafka: 1 |
| num-of-etcd: 1 |
| |
| <<: *voltha-build-job-parameters |
| |
| concurrent: true |
| |
| pipeline-scm: |
| script-path: '{Jenkinsfile}' |
| scm: |
| - git: |
| url: '{gerrit-server-url}/voltha-system-tests' |
| branches: |
| - '{branch}' |
| |
| triggers: |
| - timed: | |
| TZ=America/Los_Angeles |
| H {time} * * * |
| |
| # 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' |
| id: build_voltha_pod_test |
| disabled: '{disable-job}' |
| description: | |
| Post Tests on {config-pod} triggered by build_{config-pod}_{branch}, using {pipeline-script}<br /><br /> |
| Created from job-template {id} from ci-management/jjb/voltha-test/voltha-nightly-jobs.yaml <br /> |
| Created by Suchitra Vemuri, suchitra@opennetworking.org <br /> |
| Copyright (c) 2017 Open Networking Foundation (ONF) |
| |
| <<: *voltha-pipe-job-boiler-plate |
| pipeline-script: 'voltha-physical-functional-tests.groovy' |
| manifest-url: 'https://gerrit.opencord.org/voltha-test-manifest.git' |
| manifest-branch: 'master' |
| |
| oltAdapterAppLabel: 'adapter-open-olt' |
| |
| parameters: |
| - 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: powerSwitch |
| default: '{power-switch}' |
| description: "Indicate whether POD has power switch to reboot ONUs/OLT remotely" |
| |
| - 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 |
| - job-template: |
| name: 'build_{config-pod}_{profile}_voltha{name-extension}_{release}_test' |
| id: build_voltha_pod_soak_test |
| disabled: '{disable-job}' |
| description: | |
| Post Tests on {config-pod} triggered by build_{config-pod}_{branch}, using {pipeline-script}<br /><br /> |
| Created from job-template {id} from ci-management/jjb/voltha-test/voltha-nightly-jobs.yaml <br /> |
| Created by Suchitra Vemuri, suchitra@opennetworking.org <br /> |
| Copyright (c) 2017 Open Networking Foundation (ONF) |
| |
| <<: *voltha-pipe-job-boiler-plate |
| pipeline-script: 'voltha-physical-functional-tests.groovy' |
| manifest-url: 'https://gerrit.opencord.org/voltha-test-manifest.git' |
| manifest-branch: 'master' |
| |
| oltAdapterAppLabel: 'adapter-open-olt' |
| |
| parameters: |
| - 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: powerSwitch |
| default: '{power-switch}' |
| description: "Indicate whether POD has power switch to reboot ONUs/OLT remotely" |
| |
| - string: |
| name: oltAdapterAppLabel |
| default: '{oltAdapterAppLabel}' |
| description: 'OLT adapter pod name' |
| |
| - string: |
| name: testType |
| default: '{test-type}' |
| description: 'Passes the required test category to the groovy script' |
| |
| - 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: |
| - timed: | |
| TZ=America/Los_Angeles |
| {time-trigger} |