---
# POD Nightly Build Pipeline Jobs

- test-pipe-job-boiler-plate: &test-pipe-job-boiler-plate
    name: test-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}'


- job-template:
    name: 'build_{profile}{name-extension}_{config-pod}_{branch}_manual'
    id: build_pod_manual
    description: |
                  Manual Build on POD {config-pod} using {Jenkinsfile}<br /><br />
                  Created from job-template {id} from ci-management/jjb/cord-test/nightly-build-pipeline.yaml <br />
                  Created by QA (Suchitra Vemuri - suchitra@opennetworking.org ) <br />
                  Copyright (c) 2018 Open Networking Foundation (ONF)

    openoltAdapterChart: onf/voltha-adapter-openolt

    oltAdapterReleaseName: open-olt

    waitTimerForOltUp: 360

    <<: *test-pipe-job-boiler-plate

    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: branch
          default: '{branch}'

      - string:
          name: helmRepoUrl
          default: 'https://charts.opencord.org'
          description: 'URL where helm-charts are published'

      - string:
          name: profile
          default: '{profile}'
          description: 'Profile in which this job installs'

      - bool:
          name: installMonitoringAndLogging
          default: false
          description: "Wether to install prometheus and Elk-stack"

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

      - 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: inBandManagement
          default: '{in-band-management}'
          description: 'Indicates whether POD is configured for in band management'

      - string:
          name: NumOfAtomix
          default: '{num-of-atomix}'
          description: 'Installs the specified Number of Atomix Instances'

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

      - 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

    pipeline-scm:
      script-path: '{Jenkinsfile}'
      scm:
        - git:
            url: '{gerrit-server-url}/{test-repo}'
            branches:
              - '{branch}'

- job-template:
    name: 'build_{profile}_{config-pod}_{branch}'
    id: build_pod_timer
    description: |
                  Nightly Kubernetes tests on {config-pod} using {Jenkinsfile}<br /><br />
                  Created from job-template {id} from ci-management/jjb/cord-test/nightly-build-pipeline.yaml<br />
                  Created by Suchitra Vemuri, suchitra@opennetworking.org <br />
                  Copyright (c) 2017 Open Networking Foundation (ONF)
    disabled: '{disable-job}'

    <<: *test-pipe-job-boiler-plate

    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: 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: oltDebVersion
          default: '{oltDebVersion}'
          description: 'OLT Software version to install'

      - string:
          name: branch
          default: '{branch}'

      - string:
          name: helmRepoUrl
          default: 'https://charts.opencord.org'
          description: 'URL where helm-charts are published'

      - string:
          name: profile
          default: '{profile}'
          description: 'Profile in which this job installs'

      - 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: installBBSim
          default: false
          description: "Install the BBSim container"

      - string:
          name: onuNumber
          default: '16'
          description: "Onus per PonPort"

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

      - 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

    pipeline-scm:
      script-path: '{Jenkinsfile}'
      scm:
        - git:
            url: '{gerrit-server-url}/{test-repo}'
            branches:
              - '{branch}'

    triggers:
      - timed: |
                 TZ=America/Los_Angeles
                 H {time} * * *

- job-template:
    name: 'build_{profile}_{config-pod}_{branch}_test'
    id: build_pod_test

    disabled: '{disable-job}'
    description: |
                  Post Tests on {config-pod} triggered by build_{config-pod}_{branch}, using {Jenkinsfile}<br /><br />
                  Created from job-template {id} from ci-management/jjb/cord-test/nightly-build-pipeline.yaml <br />
                  Created by Kailash Khalasi - kailash@opennetworking.org <br />
                  Copyright (c) 2017 Open Networking Foundation (ONF)

    <<: *test-pipe-job-boiler-plate

    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: branch
          default: '{branch}'

    concurrent: true

    pipeline-scm:
      script-path: '{Jenkinsfile}'
      scm:
        - git:
            url: '{gerrit-server-url}/{test-repo}'
            branches:
              - '{branch}'

    triggers:
      - reverse:
          jobs: 'build_{profile}_{config-pod}_{branch}'
          result: 'success'

- job-template:
    name: 'build_{config-pod}_seba_release_{release}'
    id: build_pod_manual_release
    description: |
                  Manual Build on POD {config-pod}, using {Jenkinsfile}<br /><br />
                  Created from job-template {id} from ci-management/jjb/cord-test/nightly-build-pipeline.yaml <br />
                  Created by QA (Suchitra Vemuri - suchitra@opennetworking.org ) <br />
                  Copyright (c) 2018 Open Networking Foundation (ONF)

    <<: *test-pipe-job-boiler-plate

    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: oltDebVersion
          default: '{oltDebVersion}'
          description: 'OLT Software version to install'

      - string:
          name: branch
          default: '{branch}'

      - 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: installBBSim
          default: false
          description: "Install the BBSim container"

      - string:
          name: onuNumber
          default: '16'
          description: "Onus per PonPort"

    concurrent: true

    pipeline-scm:
      script-path: '{Jenkinsfile}'
      scm:
        - git:
            url: '{gerrit-server-url}/cord-tester'
            branches:
              - '{branch}'

- job-template:
    name: 'build_{config-pod}_seba_release_{release}'
    id: build_pod_release
    description: |
                  Manual Build on POD {config-pod}, using {Jenkinsfile}<br /><br />
                  Created from job-template {id} from ci-management/jjb/cord-test/nightly-build-pipeline.yaml <br />
                  Created by QA (Suchitra Vemuri - suchitra@opennetworking.org ) <br />
                  Copyright (c) 2018 Open Networking Foundation (ONF)

    <<: *test-pipe-job-boiler-plate

    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: oltDebVersion
          default: '{oltDebVersion}'
          description: 'OLT Software version to install'

      - string:
          name: helmRepoUrl
          default: 'https://charts.opencord.org'
          description: 'URL where helm-charts are published'

      - string:
          name: branch
          default: '{branch}'

      - 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: installBBSim
          default: false
          description: "Install the BBSim container"

      - string:
          name: onuNumber
          default: '16'
          description: "Onus per PonPort"

    concurrent: true

    pipeline-scm:
      script-path: '{Jenkinsfile}'
      scm:
        - git:
            url: '{gerrit-server-url}/cord-tester'
            branches:
              - '{branch}'

    triggers:
      - timed: |
                 TZ=America/Los_Angeles
                 H {time} * * *

- job-template:
    name: 'build_{config-pod}_seba_release_{release}_test'
    id: build_pod_release_test
    description: |
                  Post Tests on {config-pod} triggered by build_{config-pod}_{branch}, using {Jenkinsfile} <br /><br />
                  Created from job-template {id} from ci-management/jjb/cord-test/nightly-build-pipeline.yaml <br />
                  Created by Kailash Khalasi - kailash@opennetworking.org <br />
                  Copyright (c) 2017 Open Networking Foundation (ONF)

    <<: *test-pipe-job-boiler-plate

    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: branch
          default: '{branch}'

    concurrent: true

    pipeline-scm:
      script-path: '{Jenkinsfile}'
      scm:
        - git:
            url: '{gerrit-server-url}/cord-tester'
            branches:
              - '{branch}'

    triggers:
      - reverse:
          jobs: 'build_{config-pod}_seba_release_{release}'
          result: 'success'


- job-template:
    name: 'build_{config-pod}_seba_release_{release}_microcharts_test'
    id: build_pod_release_test_microcharts
    description: |
                  Post Tests on {config-pod} triggered by build_{config-pod}_{branch}, using {Jenkinsfile}<br /><br />
                  Created from job-template {id} from ci-management/jjb/cord-test/nightly-build-pipeline.yaml <br />
                  Created by Kailash Khalasi - kailash@opennetworking.org <br />
                  Copyright (c) 2017 Open Networking Foundation (ONF)

    <<: *test-pipe-job-boiler-plate

    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: branch
          default: '{branch}'

    concurrent: true

    pipeline-scm:
      script-path: '{Jenkinsfile}'
      scm:
        - git:
            url: '{gerrit-server-url}/cord-tester'
            branches:
              - '{branch}'

    triggers:
      - reverse:
          jobs: 'build_{config-pod}_seba_release_{release}_microcharts'
          result: 'success'


- job-template:
    name: 'build_{config-pod}'
    id: build_mcord_pod_manual
    description: |
                  Manual Build on POD {config-pod}, using {Jenkinsfile} <br /><br />
                  Created from job-template {id} from ci-management/jjb/cord-test/nightly-build-pipeline.yaml <br />
                  Created by QA (Kailash Khalasi - kailash@opennetworking.org ) <br />
                  Copyright (c) 2019 Open Networking Foundation (ONF)

    <<: *test-pipe-job-boiler-plate

    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: branch
          default: '{branch}'

      - string:
          name: profile
          default: '{profile}'
          description: 'Profile in which this job installs'

      - bool:
          name: configurePod
          default: true
          description: "Configure POD via TOSCA post build"

      - bool:
          name: installEpcControlPlane
          default: true
          description: "Install the EPC control plane"

    concurrent: true

    pipeline-scm:
      script-path: '{Jenkinsfile}'
      scm:
        - git:
            url: '{gerrit-server-url}/cord-tester'
            branches:
              - '{branch}'
