---
#
# ============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 patches
# that are sent to the repositories below
#   - cloud-infra/swconfig
#
# These jobs verify changes that
#   - implement new scenarios or fix bugs in the existing scenarios
#
# 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-verify-scenario'

    project: 'infra/swconfig'

    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'

    type:
      - virtual:
          slave-label: 'vpod-deploy-city'

    phase:
      - deploy:
          build-timeout: 60
      - functest:
          build-timeout: 30

    jobs:
      - 'cloud-infra-verify-scenario-{os}-{type}-{stream}'
      - 'cloud-infra-verify-scenario-{os}-{phase}-{type}-{stream}'

- job-template:
    name: 'cloud-infra-verify-scenario-{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: DEPLOY_SCENARIO
          default: 'k8-calico-nofeature'
          description: 'Scenario to deploy and test'
      - string:
          name: TEST_SUITE
          default: 'healthcheck'
          description: 'Test suite to run'
      - string:
          name: CLEANUP
          default: 'true'
          description: 'Cleanup leftovers of the previous run'

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

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

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

    triggers:
      - nordix-gerrit-trigger-patchset-created:
          project: 'infra\/swconfig'
          branch: '{branch}'
          files: '**'

    builders:
      - 'cloud-infra-determine-scenario-macro'
      - multijob:
          name: deploy
          condition: SUCCESSFUL
          projects:
            - name: 'cloud-infra-verify-scenario-{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
                DEPLOY_SCENARIO=$DEPLOY_SCENARIO
                CLEANUP=$CLEANUP
                GERRIT_PROJECT=$GERRIT_PROJECT
                GERRIT_BRANCH=$GERRIT_BRANCH
                GERRIT_REFSPEC=$GERRIT_REFSPEC
                GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
                GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
              node-parameters: true
              kill-phase-on: FAILURE
              abort-all-job: true
      - multijob:
          name: functest
          condition: SUCCESSFUL
          projects:
            - name: 'cloud-infra-verify-scenario-{os}-functest-{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
                DEPLOY_SCENARIO=$DEPLOY_SCENARIO
                TEST_SUITE=$TEST_SUITE
                CLEANUP=$CLEANUP
                GERRIT_PROJECT=$GERRIT_PROJECT
                GERRIT_BRANCH=$GERRIT_BRANCH
                GERRIT_REFSPEC=$GERRIT_REFSPEC
                GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
                GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
              node-parameters: true
              kill-phase-on: FAILURE
              abort-all-job: true

- job-template:
    name: 'cloud-infra-verify-scenario-{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: DEPLOY_SCENARIO
          default: 'k8-calico-nofeature'
          description: 'Scenario to deploy and test'
      - string:
          name: TEST_FW
          default: '{phase}'
          description: 'Test framework to use'
      - string:
          name: TEST_SUITE
          default: 'healthcheck'
          description: 'Test suite to run'
      - string:
          name: ENGINE_REPO_URL
          default: 'https://gerrit.nordix.org/infra/engine.git'
          description: 'URL to Nordix Cloud Infra engine repository'
      - string:
          name: TEST_REPO_URL
          default: 'https://gerrit.nordix.org/infra/test.git'
          description: 'URL to Nordix Cloud Infra test repository'
      - string:
          name: CLEANUP
          default: 'false'

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

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

    builders:
      - 'cloud-infra-determine-scenario-macro'
      - 'cloud-infra-scenario-{phase}-macro'

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