- project:

    name: vswitchperf

    project: '{name}'

    jobs:
        - 'vswitchperf-verify-{stream}'
        - 'vswitchperf-merge-{stream}'
        - 'vswitchperf-daily-{stream}'

    stream:
        - master:
            branch: '{stream}'
            gs-pathname: ''
            disabled: false
            slave-label: 'opnfv-build-ubuntu'
        - danube:
            branch: 'stable/{stream}'
            gs-pathname: '/{stream}'
            disabled: false
            slave-label: 'opnfv-build-ubuntu'

- job-template:

    name: 'vswitchperf-daily-{stream}'

    disabled: '{obj:disabled}'

    parameters:
        - project-parameter:
            project: '{project}'
            branch: '{branch}'
        - 'intel-pod12-defaults'

    scm:
        - git-scm

    triggers:
        - pollscm:
            cron: '@midnight'

    builders:
        - shell: |
            pwd
            cd src
            make clobber
            make MORE_MAKE_FLAGS="-j 10"
            # run basic sanity test
            make sanity
            cd ../ci
            scl enable python33 "source ~/vsperfenv/bin/activate ; ./build-vsperf.sh daily"

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

    disabled: '{obj:disabled}'

    project-type: freestyle

    concurrent: true

    properties:
        - logrotate-default
        - build-blocker:
            use-build-blocker: true
            blocking-jobs:
                - 'vswitchperf-verify-.*'
                - 'vswitchperf-merge-.*'
            block-level: 'NODE'

    parameters:
        - project-parameter:
            project: '{project}'
            branch: '{branch}'
        - '{slave-label}-defaults'

    scm:
        - git-scm-gerrit

    triggers:
        - gerrit:
            server-name: 'gerrit.opnfv.org'
            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}'
                disable-strict-forbidden-file-verification: 'true'
                forbidden-file-paths:
                  - compare-type: ANT
                    pattern: 'docs/**'

    builders:
        - shell: |
            pwd
            cd src
            make clobber
            make MORE_MAKE_FLAGS="-j 5"
            # run basic sanity test
            make sanity
            cd ../ci
            ./build-vsperf.sh verify

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

    disabled: '{obj:disabled}'

    project-type: freestyle

    concurrent: true

    properties:
        - logrotate-default
        - build-blocker:
            use-build-blocker: true
            blocking-jobs:
                - 'vswitchperf-verify-.*'
                - 'vswitchperf-merge-.*'
            block-level: 'NODE'

    parameters:
        - project-parameter:
            project: '{project}'
            branch: '{branch}'
        - '{slave-label}-defaults'

    scm:
        - git-scm

    triggers:
        - gerrit:
            server-name: 'gerrit.opnfv.org'
            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}'
                disable-strict-forbidden-file-verification: 'true'
                forbidden-file-paths:
                  - compare-type: ANT
                    pattern: 'docs/**'

    builders:
        - shell: |
            pwd
            cd src
            make clobber
            make MORE_MAKE_FLAGS="-j 5"
            cd ../ci
            ./build-vsperf.sh merge