---
# 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}_manual'
    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"

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

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

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