###################################################
# All the jobs except verify have been removed!
# They will only be enabled on request by projects!
###################################################
- project:
    name: yardstick-project-jobs

    project: 'yardstick'

    jobs:
        - 'yardstick-verify-{stream}'
        - 'yardstick-merge-{stream}'

    stream:
        - master:
            branch: '{stream}'
            gs-pathname: ''
            disabled: false
        - colorado:
            branch: 'stable/{stream}'
            gs-pathname: '/{stream}'
            disabled: false

################################
# job templates
################################

- job-template:
    name: 'yardstick-verify-{stream}'

    disabled: '{obj:disabled}'

    parameters:
        - project-parameter:
            project: '{project}'
        - gerrit-parameter:
            branch: '{branch}'
        - 'opnfv-build-ubuntu-defaults'

    scm:
        - gerrit-trigger-scm:
            credentials-id: '{ssh-credentials}'
            refspec: '$GERRIT_REFSPEC'
            choosing-strategy: 'gerrit'

    triggers:
        - gerrit:
            trigger-on:
                - patchset-created-event:
                    exclude-drafts: 'false'
                    exclude-trivial-rebase: 'false'
                    exclude-no-code-change: 'false'
                - draft-published-event
                - comment-added-contains-event:
                    comment-contains-value: 'recheck'
                - comment-added-contains-event:
                    comment-contains-value: 'reverify'
            projects:
              - project-compare-type: 'ANT'
                project-pattern: '{project}'
                branches:
                  - branch-compare-type: 'ANT'
                    branch-pattern: '**/{branch}'
    builders:
        - yardstick-unit-tests-and-docs-build

- job-template:
    name: 'yardstick-merge-{stream}'

    disabled: '{obj:disabled}'

    parameters:
        - project-parameter:
            project: '{project}'
        - gerrit-parameter:
            branch: '{branch}'
        - 'opnfv-build-ubuntu-defaults'
        - string:
            name: GS_URL
            default: '$GS_BASE{gs-pathname}'
            description: "Directory where the build artifact will be located upon the completion     of the build."

    scm:
        - gerrit-trigger-scm:
            credentials-id: '{ssh-credentials}'
            refspec: ''
            choosing-strategy: 'default'

    triggers:
        - gerrit:
            trigger-on:
                - change-merged-event
                - comment-added-contains-event:
                    comment-contains-value: 'remerge'
            projects:
              - project-compare-type: 'ANT'
                project-pattern: '{project}'
                branches:
                    - branch-compare-type: 'ANT'
                      branch-pattern: '**/{branch}'

    builders:
        - yardstick-unit-tests-and-docs-build

################################
# job builders
################################

- builder:
    name: yardstick-unit-tests-and-docs-build
    builders:
        - shell: |
            #!/bin/bash
            set -o errexit
            set -o pipefail

            echo "Running unit tests..."
            cd $WORKSPACE
            virtualenv $WORKSPACE/yardstick_venv
            source $WORKSPACE/yardstick_venv/bin/activate

            # install python packages
            easy_install -U setuptools
            easy_install -U pip
            pip install -r tests/ci/requirements.txt
            pip install -e .

            # unit tests
            ./run_tests.sh

            deactivate