---
# 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: '{build-days-to-keep}'
          artifact-num-to-keep: '{artifact-num-to-keep}'


- job-template:
    name: 'build_{profile}_{config-pod}_{branch}'
    id: build_pod_manual
    description: |
                  <!-- Managed by Jenkins Job Builder -->
                  Manual Build on POD {config-pod} using {Jenkinsfile} <br /><br />
                  Created from job-template {id} from ci-management/jjb/cord-test/cord-test-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: TestNodeName
         default: '{testvm}'
         description: 'Jenkins node name of TestVM Node'

      - 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: profile
         default: '{profile}'
         description: 'Profile in which this job installs'

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

      - bool:
          name: oltsPresent
          default: false
          description: "Set to true if OLTs present in this POD or if you do NOT want OLT software to be re-installed"

      - string:
         name: notificationEmail
         default: 'kailash@opennetworking.org, you@opennetworking.org, suchitra@opennetworking.org'
         description: ''

    concurrent: true

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

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

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

    parameters:
      - string:
         name: TestNodeName
         default: '{testvm}'
         description: 'Jenkins node name of TestVM Node'

      - 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: profile
         default: '{profile}'
         description: 'Profile in which this job installs'

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

      - bool:
          name: oltsPresent
          default: false
          description: "Set to true if OLTs present in this POD or if you do NOT want OLT software to be re-installed"

      - string:
         name: notificationEmail
         default: 'kailash@opennetworking.org, you@opennetworking.org, suchitra@opennetworking.org'
         description: ''

    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} {day} * *

- job-template:
    name: 'build_{profile}_{config-pod}_{branch}_test'
    id: build_pod_test
    description: |
                  <!-- Managed by Jenkins Job Builder -->
                  Post Tests on {config-pod} triggered by build_{config-pod}_{branch} <br /><br />
                  Created from job-template {id} from ci-management/jjb/cord-test/cord-test-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: TestNodeName
         default: '{testvm}'
         description: 'Jenkins node name of TestVM Node'

      - 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: notificationEmail
         default: 'kailash@opennetworking.org, you@opennetworking.org, suchitra@opennetworking.org'
         description: ''

    concurrent: true

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

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