---
#
# ============LICENSE_START=======================================================
#  Copyright (C) 2019 Nordix Foundation.
# ================================================================================
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# SPDX-License-Identifier: Apache-2.0
# ============LICENSE_END=========================================================

#--------------------------------------------------------------------------------------
# The jobs declared in this JJB configuration file are used for verifying cloud-infra
# engine from the tip of the master branch periodically to check the stability of it.
#
# These jobs are set to run on slaves with label vpod-deploy-ubuntu1604.
# The slaves have
#   - Ubuntu1604 as the base distro
#   - nested virtualization
#   - internet access
#   - passwordless sudo
#   - 16 CPUs/32GB RAM/200 GB Disk
#   - docker, git vim curl wget zip unzip chrony apt-transport-https ca-certificates curl
#     gnupg-agent software-properties-common docker-ce docker-ce-cli containerd.io openjdk-8-jre
#
# The slaves should not have a cloud infra scenario deployed on them.
#--------------------------------------------------------------------------------------

- project:
    name: 'cloud-infra-periodic-scenario'

    project: 'infra/engine'

    stream:
      - 'master':
          branch: '{stream}'
          disabled: 'false'

    os:
      - ubuntu1804:
          disabled: 'false'
          distribution: 'ubuntu18'
          ipa_dib_os_element: 'coreos'
          dib_os_release: 'bionic'
          dib_os_element: 'ubuntu-minimal'
      - centos7:
          disabled: 'true'
          distribution: 'centos7'
          ipa_dib_os_element: 'coreos'
          dib_os_release: '7'
          dib_os_element: 'centos-minimal'

    deploy-scenario:
      - k8-calico-nofeature:
          installer-type: kubespray
      - k8-flannel-nofeature:
          installer-type: kubespray
      - k8-canal-nofeature:
          installer-type: kubespray
      - k8-cilium-nofeature:
          installer-type: kubespray
      - k8-weave-nofeature:
          installer-type: kubespray
      - k8-multus-nofeature:
          installer-type: kubespray

    type:
      - baremetal:
          slave-label: 'baremetal-deploy'
          yardstick-dispatcher: 'influxdb'

    phase:
      - deploy:
          build-timeout: 60
      - functest:
          build-timeout: 120
      - yardstick:
          build-timeout: 30
      - promote:
          build-timeout: 5

    jobs:
      - '{deploy-scenario}-periodic-{os}-{type}-{stream}'
      - '{deploy-scenario}-periodic-{os}-{phase}-{type}-{stream}'

- job-template:
    name: '{deploy-scenario}-periodic-{os}-{type}-{stream}'

    project-type: multijob

    disabled: '{obj:disabled}'

    concurrent: true

    parameters:
      - project-parameters:
          project: '{project}'
          branch: '{branch}'
      - nordix-gerrit-parameters
      - label:
          name: SLAVE_LABEL
          default: '{slave-label}'
          description: 'Slave label to schedule this job on. All slaves have Ubuntu1604 no matter what distro target nodes use'
      - string:
          name: DISTRIBUTION
          default: '{distribution}'
          description: 'Distribution to use for configuring target nodes (networking etc.)'
      - string:
          name: DEPLOY_TYPE
          default: '{type}'
          description: 'Type of the deployment'
      - string:
          name: USE_PREBUILT_DEPLOYMENT_IMAGE
          default: 'true'
          description: 'Use prebuilt deployment image while running as part of CI/CD'
      - string:
          name: IPA_DIB_OS_ELEMENT
          default: '{ipa_dib_os_element}'
          description: 'DIB OS Element to use for building the ramdisk image'
      - string:
          name: DIB_OS_RELEASE
          default: '{dib_os_release}'
          description: 'DIB OS Release to use for building the deployment image to provision target nodes with'
      - string:
          name: DIB_OS_ELEMENT
          default: '{dib_os_element}'
          description: 'DIB OS Element to use for building the deployment image to provision target nodes with'
      - string:
          name: INSTALLER_TYPE
          default: '{installer-type}'
          description: 'Installer to use for deploying the scenario'
      - string:
          name: DEPLOY_SCENARIO
          default: '{deploy-scenario}'
          description: 'Scenario to deploy and test'
      - string:
          name: TEST_SUITE
          default: 'smoke'
          description: 'Test suite to run'
      - string:
          name: YARDSTICK_DISPATCHER
          default: '{yardstick-dispatcher}'
          description: 'Dispatcher to use for Yardstick reporting'
      - string:
          name: CLEANUP
          default: 'true'
          description: 'Cleanup leftovers of the previous run'

    properties:
      - logrotate
      - build-blocker:
          use-build-blocker: true
          blocking-jobs:
            - 'cloud-infra-periodic-engine-{os}-.*'
            - 'k8-.*?-periodic-.*'
          block-level: 'NODE'
      - throttle:
          max-per-node: 1
          max-total: 3
          option: project

    wrappers:
      - build-timeout:
          timeout: 210
      - fix-workspace-permissions

    scm:
      - git-scm:
          ssh-credentials-id: nordixinfra-nordix-gerrit-ssh
          branch: '{branch}'
          refspec: ''

    triggers:
      - timed: '@daily'

    builders:
      - description-setter:
          description: $INSTALLER_TYPE
      - multijob:
          name: deploy
          condition: SUCCESSFUL
          projects:
            - name: '{deploy-scenario}-periodic-{os}-deploy-{type}-{stream}'
              current-parameters: true
              predefined-parameters: |
                DISTRIBUTION=$DISTRIBUTION
                DEPLOY_TYPE=$DEPLOY_TYPE
                USE_PREBUILT_DEPLOYMENT_IMAGE=$USE_PREBUILT_DEPLOYMENT_IMAGE
                IPA_DIB_OS_ELEMENT=$IPA_DIB_OS_ELEMENT
                DIB_OS_RELEASE=$DIB_OS_RELEASE
                DIB_OS_ELEMENT=$DIB_OS_ELEMENT
                INSTALLER_TYPE=$INSTALLER_TYPE
                DEPLOY_SCENARIO=$DEPLOY_SCENARIO
                CLEANUP=$CLEANUP
              git-revision: true
              node-parameters: true
              kill-phase-on: FAILURE
              abort-all-job: true
      - multijob:
          name: functest
          condition: ALWAYS
          projects:
            - name: '{deploy-scenario}-periodic-{os}-functest-{type}-{stream}'
              current-parameters: true
              predefined-parameters: |
                DISTRIBUTION=$DISTRIBUTION
                DEPLOY_TYPE=$DEPLOY_TYPE
                INSTALLER_TYPE=$INSTALLER_TYPE
                DEPLOY_SCENARIO=$DEPLOY_SCENARIO
                TEST_SUITE=$TEST_SUITE
                YARDSTICK_DISPATCHER=$YARDSTICK_DISPATCHER
                CLEANUP=$CLEANUP
              node-parameters: true
              kill-phase-on: FAILURE
              abort-all-job: true
      - multijob:
          name: yardstick
          condition: ALWAYS
          projects:
            - name: '{deploy-scenario}-periodic-{os}-yardstick-{type}-{stream}'
              current-parameters: true
              predefined-parameters: |
                DISTRIBUTION=$DISTRIBUTION
                DEPLOY_TYPE=$DEPLOY_TYPE
                INSTALLER_TYPE=$INSTALLER_TYPE
                DEPLOY_SCENARIO=$DEPLOY_SCENARIO
                TEST_SUITE=$TEST_SUITE
                YARDSTICK_DISPATCHER=$YARDSTICK_DISPATCHER
                CLEANUP=$CLEANUP
              node-parameters: true
              kill-phase-on: FAILURE
              abort-all-job: true
      - multijob:
          name: promote
          condition: ALWAYS
          projects:
            - name: '{deploy-scenario}-periodic-{os}-promote-{type}-{stream}'
              current-parameters: true
              predefined-parameters: |
                DISTRIBUTION=$DISTRIBUTION
                DEPLOY_TYPE=$DEPLOY_TYPE
                INSTALLER_TYPE=$INSTALLER_TYPE
                DEPLOY_SCENARIO=$DEPLOY_SCENARIO
                TEST_SUITE=$TEST_SUITE
                YARDSTICK_DISPATCHER=$YARDSTICK_DISPATCHER
                CLEANUP=$CLEANUP
              node-parameters: true
              kill-phase-on: FAILURE
              abort-all-job: true

- job-template:
    name: '{deploy-scenario}-periodic-{os}-{phase}-{type}-{stream}'

    disabled: false

    concurrent: true

    properties:
      - logrotate

    parameters:
      - string:
          name: PROJECT
          default: $GERRIT_PROJECT
      - string:
          name: DISTRIBUTION
          default: 'ubuntu18'
          description: 'Distribution to use for configuring target nodes (networking etc.). Overriden by upstream job.'
      - string:
          name: DEPLOY_TYPE
          default: 'virtual'
          description: 'Type of the deployment. Overriden by upstream job.'
      - string:
          name: USE_PREBUILT_DEPLOYMENT_IMAGE
          default: 'false'
          description: 'Use prebuilt deployment image while running as part of CI/CD'
      - string:
          name: IPA_DIB_OS_ELEMENT
          default: 'fedora'
          description: 'DIB OS Element to use for building the ramdisk image. Overriden by upstream job.'
      - string:
          name: DIB_OS_RELEASE
          default: 'bionic'
          description: 'DIB OS Release to use for building the deployment image to provision target nodes with. Overriden by upstream job.'
      - string:
          name: DIB_OS_ELEMENT
          default: 'ubuntu-minimal'
          description: 'DIB OS Element to use for building the deployment image to provision target nodes with. Overriden by upstream job.'
      - string:
          name: ENGINE_ANSIBLE_PARAMS
          default: ' -v '
          description: 'Extra paramters that can be added when run the play books.'
      - string:
          name: DEPLOY_SCENARIO
          default: 'k8-calico-nofeature'
          description: 'Scenario to deploy and test'
      - string:
          name: INSTALLER_TYPE
          default: 'kubespray'
          description: 'Installer to use for deploying the scenario'
      - string:
          name: TEST_FW
          default: '{phase}'
          description: 'Test framework to use'
      - string:
          name: TEST_SUITE
          default: 'smoke'
          description: 'Test suite to run'
      - string:
          name: TEST_REPO_URL
          default: 'https://gerrit.nordix.org/infra/test.git'
          description: 'URL to Nordix Cloud Infra test repository'
      - string:
          name: YARDSTICK_DISPATCHER
          default: 'file'
          description: 'Dispatcher to use for Yardstick reporting'
      - string:
          name: CLEANUP
          default: 'false'

    wrappers:
      - build-timeout:
          timeout: '{build-timeout}'
      - fix-workspace-permissions

    scm:
      - git-scm:
          ssh-credentials-id: nordixinfra-nordix-gerrit-ssh
          branch: '{branch}'
          refspec: ''

    builders:
      - description-setter:
          description: $INSTALLER_TYPE - $DEPLOY_SCENARIO
      - 'scenario-{phase}-macro'

# vim: set ts=2 sw=2 expandtab:
