---
# VOLTHA 2.x scale measurements

- project:
    name: voltha-scale

    project-name: '{name}'

    jobs:
      # name format is <job-template>-<olts>-<pon>-<onus>-<setup>
      # needed for comparison with the openonu-go adapter
      # - 'voltha-scale-measurements':
      #     name: 'voltha-scale-measurements-1-2-32-activation-no-mib'
      #     build-node: 'onf-pod1-head-node'
      #     time-trigger: "H H/4 * * *"
      #     olts: 1
      #     pons: 2
      #     onus: 32
      #     withFlows: false
      #     provisionSubscribers: false
      #     withEapol: false
      #     withDhcp: false
      #     withIgmp: false
      #     withMibTemplate: false

      # jobs for 200 ONUs with a single openonu-adapter
      # - 'voltha-scale-measurements':
      #     name: 'voltha-scale-measurements-1-10-20-activation'
      #     build-node: 'onf-pod1-head-node'
      #     time-trigger: "H H/4 * * *"
      #     olts: 1
      #     pons: 10
      #     onus: 20
      #     withFlows: false
      #     provisionSubscribers: false
      #     withEapol: false
      #     withDhcp: false
      #     withIgmp: false
      # - 'voltha-scale-measurements':
      #     name: 'voltha-scale-measurements-1-10-20-att-flows'
      #     build-node: 'onf-pod1-head-node'
      #     time-trigger: "H H/4 * * *"
      #     olts: 1
      #     pons: 10
      #     onus: 20
      #     withFlows: true
      #     provisionSubscribers: false
      #     withEapol: true
      #     withDhcp: true
      #     withIgmp: false
      #     extraHelmFlags: '--set auth=false '
      # - 'voltha-scale-measurements':
      #     name: 'voltha-scale-measurements-1-10-20-att-subscribers'
      #     build-node: 'onf-pod1-head-node'
      #     time-trigger: "H H/4 * * *"
      #     olts: 1
      #     pons: 10
      #     onus: 20
      #     withFlows: true
      #     provisionSubscribers: true
      #     withEapol: true
      #     withDhcp: true
      #     withIgmp: false
      # - 'voltha-scale-measurements':
      #     name: 'voltha-scale-measurements-1-10-20-att-subscribers-profiled'
      #     build-node: 'onf-pod1-head-node'
      #     time-trigger: "H H/4 * * *"
      #     olts: 1
      #     pons: 10
      #     onus: 20
      #     withFlows: true
      #     provisionSubscribers: true
      #     withEapol: true
      #     withDhcp: true
      #     withIgmp: false
      #     withProfiling: true
      #     extraHelmFlags: '--set profiler.enabled=true '
      #     rwCoreImg: voltha/voltha-rw-core:master-profile
      #     openoltAdapterImg:  voltha/voltha-openolt-adapter:master-profile
      #     ofAgentImg: voltha/voltha-ofagent-go:master-profile
      #
      # # jobs for DT with 200 ONUs with a single openonu-adapter
      # - 'voltha-scale-measurements':
      #     name: 'voltha-scale-measurements-1-10-20-dt-subscribers'
      #     build-node: 'onf-pod1-head-node'
      #     time-trigger: "H H/4 * * *"
      #     olts: 1
      #     pons: 10
      #     onus: 20
      #     withFlows: true
      #     provisionSubscribers: true
      #     workflow: dt
      #     withEapol: false
      #     withDhcp: false
      #     withIgmp: false

      # jobs for 512 ONUs with a 8 openonu-adapters and clustered ONOS
      - 'voltha-scale-measurements':
          name: 'voltha-scale-measurements-1-16-32-activation'
          build-node: 'onf-pod1-head-node'
          time-trigger: "H H/4 * * *"
          olts: 1
          pons: 16
          onus: 32
          withFlows: false
          provisionSubscribers: false
          withEapol: false
          withDhcp: false
          withIgmp: false
          openonuAdapterReplicas: 8
          onosReplicas: 3
          atomixReplicas: 3
          extraHelmFlags: '--set limits.memory=8192Mi '

      - 'voltha-scale-measurements':
          name: 'voltha-scale-measurements-1-16-32-att-flows'
          build-node: 'onf-pod1-head-node'
          time-trigger: "H H/4 * * *"
          olts: 1
          pons: 16
          onus: 32
          withFlows: true
          provisionSubscribers: false
          withEapol: true
          withDhcp: true
          withIgmp: false
          openonuAdapterReplicas: 8
          onosReplicas: 3
          atomixReplicas: 3
          extraHelmFlags: '--set auth=false --set limits.memory=8192Mi '

      - 'voltha-scale-measurements':
          name: 'voltha-scale-measurements-1-16-32-att-subscribers'
          build-node: 'onf-pod1-head-node'
          time-trigger: "H H/4 * * *"
          olts: 1
          pons: 16
          onus: 32
          withFlows: true
          provisionSubscribers: true
          withEapol: true
          withDhcp: true
          withIgmp: false
          openonuAdapterReplicas: 8
          onosReplicas: 3
          atomixReplicas: 3
          extraHelmFlags: '--set limits.memory=8192Mi --set defaults.rw_core.timeout=30s'
          withPcap: true
          openoltAdapterImg: matteoscandolo/voltha-openolt-adapter:vol-3269

      # jobs for DT with 512 ONUs with a 8 openonu-adapters and clustered ONOS.
      - 'voltha-scale-measurements':
          name: 'voltha-scale-measurements-1-16-32-dt-subscribers'
          build-node: 'onf-pod1-head-node'
          time-trigger: "H H/4 * * *"
          olts: 1
          pons: 16
          onus: 32
          withFlows: true
          provisionSubscribers: true
          workflow: dt
          withEapol: false
          withDhcp: false
          withIgmp: false
          openonuAdapterReplicas: 8
          onosReplicas: 3
          atomixReplicas: 3
          extraHelmFlags: '--set limits.memory=8192Mi '

      # jobs for 1024 ONUs with a 8 openonu-adapters and clustered ONOS (2 OLTs)
      - 'voltha-scale-measurements':
          disabled: true
          name: 'voltha-scale-measurements-2-16-32-activation'
          build-node: 'onf-pod1-head-node'
          time-trigger: "H H/4 * * *"
          olts: 2
          pons: 16
          onus: 32
          withFlows: false
          provisionSubscribers: false
          withEapol: false
          withDhcp: false
          withIgmp: false
          openonuAdapterReplicas: 8
          onosReplicas: 3
          atomixReplicas: 3
          extraHelmFlags: '--set limits.memory=8192Mi '

      - 'voltha-scale-measurements':
          disabled: true
          name: 'voltha-scale-measurements-2-16-32-att-flows'
          build-node: 'onf-pod1-head-node'
          time-trigger: "H H/4 * * *"
          olts: 2
          pons: 16
          onus: 32
          withFlows: true
          provisionSubscribers: false
          withEapol: true
          withDhcp: true
          withIgmp: false
          openonuAdapterReplicas: 8
          onosReplicas: 3
          atomixReplicas: 3
          extraHelmFlags: '--set limits.memory=8192Mi --set auth=false '

      - 'voltha-scale-measurements':
          disabled: true
          name: 'voltha-scale-measurements-2-16-32-att-subscribers'
          build-node: 'onf-pod1-head-node'
          time-trigger: "H H/4 * * *"
          olts: 2
          pons: 16
          onus: 32
          withFlows: true
          provisionSubscribers: true
          withEapol: true
          withDhcp: true
          withIgmp: false
          openonuAdapterReplicas: 8
          onosReplicas: 3
          atomixReplicas: 3
          extraHelmFlags: '--set limits.memory=8192Mi --set defaults.rw_core.timeout=30s'
          openoltAdapterImg: matteoscandolo/voltha-openolt-adapter:vol-3269

      # jobs for DT with 512 ONUs with a 8 openonu-adapters and clustered ONOS.
      - 'voltha-scale-measurements':
          name: 'voltha-scale-measurements-2-16-32-dt-subscribers'
          build-node: 'onf-pod1-head-node'
          time-trigger: "H H/4 * * *"
          olts: 2
          pons: 16
          onus: 32
          withFlows: true
          provisionSubscribers: true
          workflow: dt
          withEapol: false
          withDhcp: false
          withIgmp: false
          openonuAdapterReplicas: 8
          onosReplicas: 3
          atomixReplicas: 3
          extraHelmFlags: '--set limits.memory=8192Mi --set defaults.rw_core.timeout=30s'

      # development pipeline
      - 'voltha-scale-measurements-dev':
          name: 'voltha-scale-measurements-dev'
          build-node: 'voltha-scale'


- job-template:
    id: 'voltha-scale-measurements'
    name: '{name}'
    pipeline-script: 'voltha-scale-test.groovy'

    description: |
      <!-- Managed by Jenkins Job Builder -->
      Created by {id} job-template from ci-management/jjb/voltha-scale.yaml  <br /><br />
      Using pipeline {pipeline-script} <br/><br/>
      Scale measurements for VOLTHA 2.x

    properties:
      - cord-infra-properties:
          build-days-to-keep: '{build-days-to-keep}'
          artifact-num-to-keep: '{artifact-num-to-keep}'

    wrappers:
      - lf-infra-wrappers:
          build-timeout: '{build-timeout}'
          jenkins-ssh-credential: '{jenkins-ssh-credential}'

    # default values
    bbsimImg: voltha/bbsim:master
    rwCoreImg: voltha/voltha-rw-core:master
    ofAgentImg: voltha/voltha-ofagent-go:master
    openoltAdapterImg:  voltha/voltha-openolt-adapter:master
    openonuAdapterImg: voltha/voltha-openonu-adapter:master
    onosImg: voltha/voltha-onos:master

    bbsimChart: onf/bbsim
    volthaChart: onf/voltha
    openoltAdapterChart: onf/voltha-adapter-openolt
    openonuAdapterChart: onf/voltha-adapter-openonu

    olts: 2
    pons: 2
    onus: 2
    workflow: att
    withFlows: false
    provisionSubscribers: false
    withEapol: true
    withDhcp: true
    withIgmp: false
    withLLDP: false
    withMibTemplate: true
    withMonitoring: true
    withProfiling: false
    withPcap: false
    openonuAdapterReplicas: 1
    onosReplicas: 1
    atomixReplicas: 0
    extraHelmFlags: ''
    onosStatInterval: 5
    volthaSystemTestsChange: ''
    kindVolthaChange: ''
    inMemoryEtcdStorage: true

    parameters:
      - string:
          name: buildNode
          default: '{build-node}'
          description: 'Name of the Jenkins node to run the job on'

      - string:
          name: logLevel
          default: 'WARN'
          description: 'Log level for all the components'

      - string:
          name: onus
          default: '{onus}'
          description: 'Number of ONUs to provision'

      - string:
          name: pons
          default: '{pons}'
          description: 'Number of PONs to provision'

      - string:
          name: olts
          default: '{olts}'
          description: 'How many BBSim instances to run'

      - string:
          name: workflow
          default: '{workflow}'
          description: 'Which workflow are we testing (att, dt, tt)'

      - bool:
          name: withFlows
          default: '{withFlows}'
          description: 'Wheter to push flows from ONOS'

      - bool:
          name: provisionSubscribers
          default: '{provisionSubscribers}'
          description: 'Wheter to provision subscribers durint the tests'

      - bool:
          name: withEapol
          default: '{withEapol}'
          description: 'Wheter EAPOL is enabled for the test'

      - bool:
          name: withDhcp
          default: '{withDhcp}'
          description: 'Wheter DHCP is enabled for the test'

      - bool:
          name: withIgmp
          default: '{withIgmp}'
          description: 'Wheter IGMP is enabled for the test'

      - bool:
          name: withLLDP
          default: '{withLLDP}'
          description: 'Wheter Link Discovery is enabled for the test'

      - bool:
          name: withMibTemplate
          default: '{withMibTemplate}'
          description: 'Option to trigger MIB template command'

      - bool:
          name: withMonitoring
          default: '{withMonitoring}'
          description: 'Option to install Prometheus'

      - bool:
          name: withProfiling
          default: '{withProfiling}'
          description: 'Option to collect profiling informations from rw-core and openolt (note that the appropriate -profile images needs to be used)'

      - bool:
          name: withPcap
          default: '{withPcap}'
          description: 'Capture a .pcap on the OpenFlow connection from the ofAgent side'

      - string:
          name: extraHelmFlags
          default: '{extraHelmFlags}'
          description: 'Any extra helm parameters you want (passed to every helm install command)'

      - string:
          name: openonuAdapterReplicas
          default: '{openonuAdapterReplicas}'
          description: 'How many OpenONU adapter instances to run'

      - string:
          name: onosReplicas
          default: '{onosReplicas}'
          description: 'How many ONOSes instances to run'

      - string:
          name: atomixReplicas
          default: '{atomixReplicas}'
          description: 'How many Atomix instances to run'

      - string:
          name: onosStatInterval
          default: '{onosStatInterval}'
          description: 'How often ONOS should poll for ports, flows and meters'

      - string:
          name: bbsimImg
          default: '{bbsimImg}'
          description: 'Custom image selection for BBSIM (repo:tag)'

      - string:
          name: bbsimChart
          default: '{bbsimChart}'
          description: 'BBSim chart name (or location on file system)'

      - string:
          name: rwCoreImg
          default: '{rwCoreImg}'
          description: 'Custom image selection for VOLTHA (repo:tag)'

      - string:
          name: ofAgentImg
          default: '{ofAgentImg}'
          description: 'Custom image selection for OfAgent (repo:tag), only supports the go version'

      - string:
          name: volthaChart
          default: '{volthaChart}'
          description: 'VOLTHA chart name (or location on file system)'

      - string:
          name: openoltAdapterImg
          default: '{openoltAdapterImg}'
          description: 'Custom image selection for Openolt Adapter (repo:tag)'

      - string:
          name: openoltAdapterChart
          default: '{openoltAdapterChart}'
          description: 'OpenOLT chart name (or location on file system)'

      - string:
          name: openonuAdapterImg
          default: '{openonuAdapterImg}'
          description: 'Custom image selection for Openonu Adapter (repo:tag)'

      - string:
          name: openonuAdapterChart
          default: '{openonuAdapterChart}'
          description: 'OpenONU chart name (or location on file system)'

      - string:
          name: onosImg
          default: '{onosImg}'
          description: 'Custom image selection for Openonu Adapter (repo:tag)'

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

      - bool:
          name: inMemoryEtcdStorage
          default: '{inMemoryEtcdStorage}'
          description: 'Whether to write ETCD keys on disk or keep them in memory (true=inMemory)'

    project-type: pipeline
    concurrent: false

    dsl: !include-raw-escape: pipeline/{pipeline-script}

    # triggers:
    #   - timed: |
    #              TZ=America/Los_Angeles
    #              {time-trigger}

- job-template:
    id: 'voltha-scale-measurements-dev'
    name: '{name}'
    pipeline-script: 'voltha-scale-test.groovy'

    description: |
      <!-- Managed by Jenkins Job Builder -->
      Created by {id} job-template from ci-management/jjb/voltha-scale.yaml  <br /><br />
      Using pipeline {pipeline-script} <br/><br/>
      Scale measurements for VOLTHA 2.x

    properties:
      - cord-infra-properties:
          build-days-to-keep: '{build-days-to-keep}'
          artifact-num-to-keep: '{artifact-num-to-keep}'

    wrappers:
      - lf-infra-wrappers:
          build-timeout: '{build-timeout}'
          jenkins-ssh-credential: '{jenkins-ssh-credential}'

    # default values
    bbsimImg: voltha/bbsim:master
    rwCoreImg: voltha/voltha-rw-core:master
    ofAgentImg: voltha/voltha-ofagent-go:master
    openoltAdapterImg:  voltha/voltha-openolt-adapter:master
    openonuAdapterImg: voltha/voltha-openonu-adapter:master
    onosImg: voltha/voltha-onos:master

    bbsimChart: onf/bbsim
    volthaChart: onf/voltha
    openoltAdapterChart: onf/voltha-adapter-openolt
    openonuAdapterChart: onf/voltha-adapter-openonu

    parameters:
      - string:
          name: buildNode
          default: '{build-node}'
          description: 'Name of the Jenkins node to run the job on'

      - string:
          name: logLevel
          default: 'WARN'
          description: 'Log level for all the components'

      - string:
          name: onus
          default: 2
          description: 'Number of ONUs to provision'

      - string:
          name: pons
          default: 2
          description: 'Number of PONs to provision'

      - string:
          name: olts
          default: 2
          description: 'How many BBSim instances to run'

      - string:
          name: workflow
          default: att
          description: 'Which workflow are we testing (att, dt, tt)'

      - bool:
          name: withFlows
          default: false
          description: 'Wheter to push flows from ONOS'

      - bool:
          name: provisionSubscribers
          default: false
          description: 'Wheter to provision subscribers durint the tests'

      - bool:
          name: withEapol
          default: true
          description: 'Wheter EAPOL is enabled for the test'

      - bool:
          name: withDhcp
          default: true
          description: 'Wheter DHCP is enabled for the test'

      - bool:
          name: withIgmp
          default: false
          description: 'Wheter IGMP is enabled for the test'

      - bool:
          name: withLLDP
          default: false
          description: 'Wheter Link Discovery is enabled for the test'

      - bool:
          name: withMibTemplate
          default: true
          description: 'Option to trigger MIB template command'

      - bool:
          name: withMonitoring
          default: true
          description: 'Option to install Prometheus'

      - bool:
          name: withProfiling
          default: false
          description: 'Option to collect profiling informations from rw-core and openolt (note that the appropriate -profile images needs to be used)'

      - string:
          name: extraHelmFlags
          default: ' '
          description: 'Any extra helm parameters you want (passed to every helm install command)'

      - string:
          name: openonuAdapterReplicas
          default: 1
          description: 'How many OpenONU adapter instances to run'

      # the dev node is single node cluster, we can't install a clustered ONOS because of the contraints
      - string:
          name: onosReplicas
          default: 1
          description: 'How many ONOSes instances to run'

      - string:
          name: atomixReplicas
          default: 0
          description: 'How many Atomix instances to run'

      - string:
          name: onosStatInterval
          default: 5
          description: 'How often ONOS should poll for ports, flows and meters'

      - string:
          name: bbsimImg
          default: '{bbsimImg}'
          description: 'Custom image selection for BBSIM (repo:tag)'

      - string:
          name: bbsimChart
          default: '{bbsimChart}'
          description: 'BBSim chart name (or location on file system)'

      - string:
          name: rwCoreImg
          default: '{rwCoreImg}'
          description: 'Custom image selection for VOLTHA (repo:tag)'

      - string:
          name: ofAgentImg
          default: '{ofAgentImg}'
          description: 'Custom image selection for OfAgent (repo:tag), only supports the go version'

      - string:
          name: volthaChart
          default: '{volthaChart}'
          description: 'VOLTHA chart name (or location on file system)'

      - string:
          name: openoltAdapterImg
          default: '{openoltAdapterImg}'
          description: 'Custom image selection for Openolt Adapter (repo:tag)'

      - string:
          name: openoltAdapterChart
          default: '{openoltAdapterChart}'
          description: 'OpenOLT chart name (or location on file system)'

      - string:
          name: openonuAdapterImg
          default: '{openonuAdapterImg}'
          description: 'Custom image selection for Openonu Adapter (repo:tag)'

      - string:
          name: openonuAdapterChart
          default: '{openonuAdapterChart}'
          description: 'OpenONU chart name (or location on file system)'

      - string:
          name: onosImg
          default: '{onosImg}'
          description: 'Custom image selection for Openonu Adapter (repo:tag)'

      - string:
          name: volthaSystemTestsChange
          default: ''
          description: 'Download a change for gerrit in the voltha-system-tests repo, example value: "refs/changes/79/18779/13"'

      - string:
          name: kindVolthaChange
          default: ''
          description: 'Download a change for gerrit in the kind-voltha repo, example value: "refs/changes/32/19132/1"'

    project-type: pipeline
    concurrent: false

    dsl: !include-raw-escape: pipeline/{pipeline-script}
