---
# 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

    oltAdapterReleaseName: open-olt

    waitTimerForOltUp: 360

    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: workFlow
          default: '{work-flow}'
          description: 'Installs and uses the specified work flow on the POD'

      - string:
          name: extraHelmFlags
          default: '{extraHelmFlags}'
          description: 'Helm flags (passed to each deployment)'

      # 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: enableMultiUni
          default: '{enableMultiUni}'
          description: "Enables the Multi UNI feature"

      - bool:
          name: withFttb
          default: '{withFttb}'
          description: "Deploy with FTTB"

      - string:
          name: uniPortMask
          default: '{uniPortMask}'
          description: 'Open ONU adapter uni_port_mask, used when enableMultiUni is set to True, values: 0x0001-0x00FF'

      - string:
          name: bbsimReplicas
          default: '{bbsimReplicas}'
          description: 'Installs the specified Number of BBSim Instances'

      - 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"

      - 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 delta from gerrit:voltha-system-tests, example value: "refs/changes/79/18779/13"'

      - string:
          name: volthaHelmChartsChange
          default: '{volthaHelmChartsChange}'
          description: 'Download delta from gerrit:voltha-helm-charts, 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: 'Olt adapter chart name (or location on file system)'

      # this is used in the Adtran DT job
      - string:
          name: oltAdapterReleaseName
          default: '{oltAdapterReleaseName}'
          description: 'Olt adapter release name'

      - string:
          name: waitTimerForOltUp
          default: '{waitTimerForOltUp}'
          description: 'Wait timer for the OLT to come up after reboot'

      - bool:
          name: DebugMode
          default: false
          description: "Enable script debugging (unused)"

# -----------------------------------------------------------------------
# default 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:
      - onf-infra-volthadevs-permissions
      - 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) <br />
                  Copyright 2018-2023 Open Networking Foundation (ONF) and the ONF Contributors

    <<: *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'
    enableMultiUni: false
    withFttb: false
    uniPortMask: '0x0001'
    bbsimReplicas: 0
    num-of-onus: 0
    num-of-ponports: 0
    extraHelmFlags: ''

    <<: *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) <br />
                  Copyright 2018-2023 Open Networking Foundation (ONF) and the ONF Contributors

    <<: *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'
    enableMultiUni: false
    withFttb: false
    uniPortMask: '0x0001'
    bbsimReplicas: 0
    num-of-onus: 0
    num-of-ponports: 0
    extraHelmFlags: ''

    <<: *voltha-build-job-parameters

    concurrent: true
    project-type: pipeline
    dsl: !include-raw-escape: ../pipeline/{pipeline-script}

    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) <br />
                  Copyright 2017-2023 Open Networking Foundation (ONF) and the ONF Contributors

    <<: *voltha-pipe-job-boiler-plate
    pipeline-script: 'voltha/master/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
# -----------------------------------------------------------------------
- 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) <br />
                  Copyright 2017-2023 Open Networking Foundation (ONF) and the ONF Contributors

    <<: *voltha-pipe-job-boiler-plate
    pipeline-script: 'voltha/master/voltha-physical-functional-tests.groovy'
    manifest-url: 'https://gerrit.opencord.org/voltha-test-manifest.git'
    manifest-branch: 'master'

    oltAdapterAppLabel: 'adapter-open-olt'
    timeout: 240

    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: 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: 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}

# -----------------------------------------------------------------------
# VOLTHA Manual Test Job
# This job is triggered manually
# -----------------------------------------------------------------------
- job-template:
    name: 'build_{config-pod}_{profile}{name-extension}_voltha_{release}_manual_test'
    id: build_voltha_pod_manual_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) <br />
                  Copyright 2017-2023 Open Networking Foundation (ONF) and the ONF Contributors

    <<: *voltha-pipe-job-boiler-plate
    pipeline-script: 'voltha/master/voltha-physical-functional-tests.groovy'
    manifest-url: 'https://gerrit.opencord.org/voltha-test-manifest.git'
    manifest-branch: 'master'

    oltAdapterAppLabel: 'adapter-open-olt'
    enableMultiUni: false
    timeout: 240

    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: 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"

      - bool:
          name: enableMultiUni
          default: '{enableMultiUni}'
          description: "Enables the Multi UNI feature"

      - 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}

# -----------------------------------------------------------------------
# VOLTHA DMI Test Job
# This job is triggered by a timer defined in the job
# -----------------------------------------------------------------------
- job-template:
    name: 'verify_{config-pod}_{profile}{name-extension}_voltha_{release}_dmi'
    id: verify_voltha_pod_dmi_test
    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 />
                  Copyright 2018-2023 Open Networking Foundation (ONF) and the ONF Contributors

    <<: *voltha-pipe-job-boiler-plate
    # default values
    pipeline-script: 'voltha/master/dmi-build-and-test.groovy'
    installVolthaInfra: true
    installVolthaStack: true
    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'
    enableMultiUni: false
    uniPortMask: '0x0001'
    bbsimReplicas: 0
    num-of-onus: 0
    num-of-ponports: 0
    extraHelmFlags: ''
    dmiChart: ''
    OltDevMgr: ''
    openoltAdapterChart: onf/voltha-adapter-openolt
    oltAdapterReleaseName: open-olt
    waitTimerForOltUp: 360

    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: workFlow
          default: '{work-flow}'
          description: 'Installs and uses the specified work flow on the POD'

      - bool:
          name: installVolthaInfra
          default: '{installVolthaInfra}'
          description: "Whether to install VOLTHA Infra"

      - bool:
          name: installVolthaStack
          default: '{installVolthaStack}'
          description: "Whether to install VOLTHA Stack"

      - string:
          name: extraHelmFlags
          default: '{extraHelmFlags}'
          description: 'Helm flags (passed to each deployment)'

      - string:
          name: dmiChart
          default: '{dmiChart}'
          description: 'Device Management Interface Helm Chart'

      - string:
          name: OltDevMgr
          default: '{OltDevMgr}'
          description: 'OLT Device Manager App Name'

      # 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: enableMultiUni
          default: '{enableMultiUni}'
          description: "Enables the Multi UNI feature"

      - string:
          name: uniPortMask
          default: '{uniPortMask}'
          description: 'Open ONU adapter uni_port_mask, used when enableMultiUni is set to True, values: 0x0001-0x00FF'

      - string:
          name: bbsimReplicas
          default: '{bbsimReplicas}'
          description: 'Installs the specified Number of BBSim Instances'

      - 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"

      - bool:
          name: restartOlt
          default: '{restart-olt}'
          description: "Re-install olt software bringing up CORD"

      - 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"'

      # this is used in the Adtran DT job
      - string:
          name: openoltAdapterChart
          default: '{openoltAdapterChart}'
          description: 'Olt adapter chart name (or location on file system)'

      # this is used in the Adtran DT job
      - string:
          name: oltAdapterReleaseName
          default: '{oltAdapterReleaseName}'
          description: 'Olt adapter release name'

      - string:
          name: waitTimerForOltUp
          default: '{waitTimerForOltUp}'
          description: 'Wait timer for the OLT to come up after reboot'

    concurrent: true
    project-type: pipeline
    dsl: !include-raw-escape: ../pipeline/{pipeline-script}

    triggers:
      - timed: |
                 TZ=America/Los_Angeles
                 H {time} * * *
# [EOF]
