includes:
  - python-file: openstack_functions.py

pipelines:
  - name: check
    manager: IndependentPipelineManager
    trigger:
      gerrit:
        - event: patchset-created
        - event: change-restored
        - event: comment-added
          comment: (?i)^(Patch Set [0-9]+:)?( [\w\\+-]*)*(\n\n)?\s*(sahara-ci-)?recheck
    success:
      gerrit:
        verified: 1
    failure:
      gerrit:
        verified: -1
  - name: post
    manager: IndependentPipelineManager
    trigger:
      gerrit:
        - event: change-merged
        - event: comment-added
          comment_filter: (?i)^\s*rebuild(( sahara-ci))\s*$
  - name: noop
    manager: IndependentPipelineManager
    trigger:
      gerrit:
        - event: comment-added
          comment: (?i)^(Patch Set [0-9]+:)?( [\w\\+-]*)*(\n\n)?\s*(sahara-ci-)?recheck
  - name: nightly
    description: Jobs in this queue are triggered on a timer.
    manager: IndependentPipelineManager
    source: gerrit
    precedence: low
    trigger:
      timer:
        - time: '0 3 * * *'
    success:
      smtp:
        to: anesterova@mirantis.com, esikachov@gmail.com
        from: zuul@sahara.mirantis.com
        subject: '[sahara-nightly][passed]Silent check of sahara passed'
    failure:
      smtp:
        to: anesterova@mirantis.com, esikachov@gmail.com
        from: zuul@sahara.mirantis.com
        subject: '[sahara-nightly][failed]Silent check of sahara failed'
  - name: weekly
    description: Jobs in this queue are triggered on a timer once at week.
    manager: IndependentPipelineManager
    source: gerrit
    precedence: low
    trigger:
      timer:
        - time: '0 0 * * 6'
    success:
      smtp:
        to: anesterova@mirantis.com, esikachov@gmail.com
        from: zuul@sahara.mirantis.com
        subject: '[sahara-weekly][passed]Silent check of sahara passed'
    failure:
      smtp:
        to: anesterova@mirantis.com, esikachov@gmail.com
        from: zuul@sahara.mirantis.com
        subject: '[sahara-weekly][failed]Silent check of sahara failed'

projects:
  - name: openstack/sahara
    check:
      - gate-sahara-vanilla_2.7.1-u14
      - gate-sahara-spark_1.6.0-u14
      - gate-sahara-spark_1.6.0-u14-python3
      - gate-sahara-spark_2.1.0-u14
      - gate-sahara-mapr_5.1.0.mrv2-u14
      - gate-sahara-mapr_5.2.0.mrv2-u14
      - gate-sahara-cdh_5.5.0-u14
      - gate-sahara-cdh_5.5.0-c7
      - gate-sahara-cdh_5.7.0-c7
      - gate-sahara-cdh_5.7.0-u14
      - gate-sahara-cdh_5.9.0-c7
      - gate-sahara-cdh_5.9.0-u14
      - gate-sahara-storm_1.0.1-u14
      - gate-sahara-storm_1.1.0-u14
      - gate-sahara-ambari_2.3-c7
      - gate-sahara-ambari_2.4-c7
      - gate-sahara-ambari_2.4-u14
      - gate-sahara-pep8-trunk

  - name: openstack/sahara-tests
    check:
      - gate-sahara_tests-vanilla_2.7.1-u14
      - gate-sahara_tests-spark_1.6.0-u14
      - gate-sahara_tests-spark_2.1.0-u14
      - gate-sahara_tests-mapr_5.1.0.mrv2-u14
      - gate-sahara_tests-mapr_5.2.0.mrv2-u14
      - gate-sahara_tests-cdh_5.5.0-u14
      - gate-sahara_tests-cdh_5.5.0-c7
      - gate-sahara_tests-cdh_5.7.0-c7
      - gate-sahara_tests-cdh_5.7.0-u14
      - gate-sahara_tests-cdh_5.9.0-c7
      - gate-sahara_tests-cdh_5.9.0-u14
      - gate-sahara_tests-ambari_2.3-c7
      - gate-sahara_tests-ambari_2.4-c7
      - gate-sahara_tests-ambari_2.4-u14
      - gate-sahara_tests-cdh_5.5.0-u14-mitaka
      - gate-sahara_tests-cdh_5.5.0-c7-mitaka
      - gate-sahara_tests-spark_1.6.0-u14-mitaka
      - gate-sahara_tests-spark_1.6.0-u14-python3
      - gate-sahara_tests-vanilla_2.7.1-u14-mitaka
      - gate-sahara_tests-storm_1.0.1-u14
      - gate-sahara_tests-storm_1.1.0-u14
      - gate-sahara_tests-ambari_2.3-c7-mitaka

    nightly:
      - nightly-sahara_tests-vanilla_2.7.1-u14
      - nightly-sahara_tests-spark_1.6.0-u14
      - nightly-sahara_tests-ambari_2.4-c7
      - nightly-sahara_tests-cdh_5.5.0-u14-mitaka

  - name: openstack/python-saharaclient
    check:
      - gate-sahara-pep8-trunk

  - name: openstack/sahara-image-elements
    check:
      - dib-vanilla_2.7.1-u14
      - dib-vanilla_2.7.1-c7
      - dib-mapr_5.1.0.mrv2-u14
      - dib-mapr_5.2.0.mrv2-u14
      - dib-spark_1.6.0-u14
      - dib-cdh_5.5.0-u14
      - dib-cdh_5.5.0-c7
      - dib-cdh_5.7.0-c7
      - dib-cdh_5.7.0-u14
      - dib-cdh_5.9.0-c7
      - dib-cdh_5.9.0-u14
      - dib-storm_1.0.1-u14
      - dib-storm_1.1.0-u14
      - dib-ambari_2.2-c7
      - dib-ambari_2.2-u14
    post:
      - dib-vanilla_2.7.1-u14
      - dib-vanilla_2.7.1-c7
      - dib-mapr_5.1.0.mrv2-u14
      - dib-mapr_5.2.0.mrv2-u14
      - dib-spark_1.6.0-u14
      - dib-cdh_5.5.0-u14
      - dib-cdh_5.5.0-c7
      - dib-cdh_5.7.0-c7
      - dib-cdh_5.9.0-c7
      - dib-cdh_5.9.0-u14
      - dib-storm_1.0.1-u14
      - dib-storm_1.1.0-u14
      - dib-ambari_2.2-c7
      - dib-ambari_2.2-u14

  - name: openstack/sahara-ci-config
    check:
      - sahara-ci-syntax-check
      - sahara-ci-layout

  - name: openstack/heat
    noop:
      - noop

jobs:
  - name: ^.*$
    parameter-function: set_params
    skip-if:
      - all-files-match-any:
          - ^doc/.*$
          - ^.*\.rst$
          - ^.*\.unit/.*
          - ^tools/.*$
  - name: ^(?!nightly).*-mapr_5.1.*$
    skip-if:
      - branch: ^(stable/newton|master)$
    files:
      - ^sahara_tests/scenario/defaults/mitaka/mapr-5.1.*$
      - ^sahara_tests/scenario/defaults/mapr-5.1.*$
      - ^sahara_tests/scenario/defaults/edp.yaml.mako$
      - ^sahara_tests/scenario/defaults/edp-examples/.*$
      - ^sahara/.*$
      - ^sahara_tests/.*.py$
      - ^diskimage-create/.*$
      - ^elements/.*$
  - name: ^(?!nightly).*-mapr_5.2.*$
    skip-if:
      - branch: stable/mitaka
    files:
      - ^sahara_tests/scenario/defaults/mapr-5.2.*$
      - ^sahara_tests/scenario/defaults/edp.yaml.mako$
      - ^sahara_tests/scenario/defaults/edp-examples/.*$
      - ^sahara/.*$
      - ^sahara_tests/.*.py$
      - ^diskimage-create/.*$
      - ^elements/.*$
  - name: ^(?!nightly).*-spark_1.6.0-.*$
    files:
      - ^sahara_tests/scenario/defaults/spark-1.6.0.*$
      - ^sahara_tests/scenario/defaults/mitaka/spark-1.6.0.*$
      - ^sahara_tests/scenario/defaults/edp.yaml.mako$
      - ^sahara_tests/scenario/defaults/edp-examples/.*$
      - ^sahara/.*$
      - ^sahara_tests/.*.py$
      - ^diskimage-create/.*$
      - ^elements/.*$
  - name: ^(?!nightly).*-spark_2.1.0-.*$
    voting: false
    skip-if:
      - branch: ^(stable/newton|stable/mitaka)$
    files:
      - ^sahara_tests/scenario/defaults/spark-2.1.0.*$
      - ^sahara_tests/scenario/defaults/edp.yaml.mako$
      - ^sahara_tests/scenario/defaults/edp-examples/.*$
      - ^sahara/.*$
      - ^sahara_tests/.*.py$
      - ^diskimage-create/.*$
      - ^elements/.*$
  - name: ^(?!nightly).*-cdh_5.5.0-.*$
    skip-if:
      - branch: ^(stable/newton|master)$
    files:
      - ^sahara_tests/scenario/defaults/cdh-5.5.*$
      - ^sahara_tests/scenario/defaults/mitaka/cdh-5.5.*$
      - ^sahara_tests/scenario/defaults/edp.yaml.mako$
      - ^sahara_tests/scenario/defaults/edp-examples/.*$
      - ^sahara/.*$
      - ^sahara_tests/.*.py$
      - ^diskimage-create/.*$
      - ^elements/.*$
  - name: ^(?!nightly).*-cdh_5.7.0-.*$
    skip-if:
      - branch: ^(stable/mitaka|master)$
    files:
      - ^sahara_tests/scenario/defaults/cdh-5.7.*$
      - ^sahara_tests/scenario/defaults/edp.yaml.mako$
      - ^sahara_tests/scenario/defaults/edp-examples/.*$
      - ^sahara/.*$
      - ^sahara_tests/.*.py$
      - ^diskimage-create/.*$
      - ^elements/.*$
  - name: ^(?!nightly).*-cdh_5.9.0-.*$
    skip-if:
      - branch: ^(stable/liberty|stable/mitaka|stable/newton)$
    voting: false
    files:
      - ^sahara_tests/scenario/defaults/cdh-5.9.*$
      - ^sahara_tests/scenario/defaults/edp.yaml.mako$
      - ^sahara_tests/scenario/defaults/edp-examples/.*$
      - ^sahara/.*$
      - ^sahara_tests/.*.py$
      - ^diskimage-create/.*$
      - ^elements/.*$
  - name: ^(?!nightly|weekly).*-vanilla_2.7.1-.*$
    files:
      - ^sahara_tests/scenario/defaults/vanilla-2.7.1.*$
      - ^sahara_tests/scenario/defaults/liberty/vanilla-2.7.1.*$
      - ^sahara_tests/scenario/defaults/mitaka/vanilla-2.7.1.*$
      - ^sahara_tests/scenario/defaults/edp.yaml.mako$
      - ^sahara_tests/scenario/defaults/edp-examples/.*$
      - ^sahara/.*$
      - ^sahara_tests/.*.py$
      - ^diskimage-create/.*$
      - ^elements/.*$
  - name: ^(?!nightly).*-ambari_2.3-.*$
    skip-if:
      - branch: ^(stable/newton|master)$
    voting: false
    files:
      - ^sahara_tests/scenario/defaults/ambari-2.3.*$
      - ^sahara_tests/scenario/defaults/mitaka/ambari-2.3.*$
      - ^sahara_tests/scenario/defaults/edp.yaml.mako$
      - ^sahara_tests/scenario/defaults/edp-examples/.*$
      - ^sahara/.*$
      - ^sahara_tests/.*.py$
      - ^diskimage-create/.*$
      - ^elements/.*$
  - name: ^(?!nightly).*-ambari_2.4-.*$
    skip-if:
      - branch: stable/mitaka
    voting: false
    files:
      - ^sahara_tests/scenario/defaults/ambari-2.4.*$
      - ^sahara_tests/scenario/defaults/edp.yaml.mako$
      - ^sahara_tests/scenario/defaults/edp-examples/.*$
      - ^sahara/.*$
      - ^sahara_tests/.*.py$
      - ^diskimage-create/.*$
      - ^elements/.*$
  - name: ^(?!nightly).*-storm_1.0.1-.*$
    skip-if:
      - branch: stable/mitaka
    files:
      - ^sahara_tests/scenario/defaults/storm-1.0.1.*$
      - ^sahara_tests/scenario/defaults/edp.yaml.mako$
      - ^sahara_tests/scenario/defaults/edp-examples/.*$
      - ^sahara/.*$
      - ^sahara_tests/.*.py$
      - ^diskimage-create/.*$
      - ^elements/.*$
  - name: ^(?!nightly).*-storm_1.1.0-.*$
    voting: false
    skip-if:
      - branch: ^(stable/mitaka|stable/neutron|stable/ocata)
    files:
      - ^sahara_tests/scenario/defaults/storm-1.1.0.*$
      - ^sahara_tests/scenario/defaults/edp.yaml.mako$
      - ^sahara_tests/scenario/defaults/edp-examples/.*$
      - ^sahara/.*$
      - ^sahara_tests/.*.py$
      - ^diskimage-create/.*$
      - ^elements/.*$
  - name: gate-(sahara|sahara_tests)-spark_1.6.0-u14-python3
    voting: false
    skip-if:
      - branch: stable/mitaka
  - name: gate-sahara-pep8-trunk
    voting: false
  - name: ^(?!nightly|weekly).*-sahara_tests-.*$