includes:
  - python-file: custom_functions.py

pipelines:
  - name: check
    manager: IndependentPipelineManager
    trigger:
      gerrit:
        - event: patchset-created
    success:
      gerrit:
        verified: 1
    failure:
      gerrit:
        verified: -1

  - name: post
    manager: IndependentPipelineManager
    trigger:
      gerrit:
        - event: ref-updated
          ref: ^(?!refs/).*$

  - name: gate
    manager: DependentPipelineManager
    failure-message: Build failed.  For information on how to proceed, see http://wiki.example.org/Test_Failures
    trigger:
      gerrit:
        - event: comment-added
          approval:
            - approved: 1
    success:
      gerrit:
        verified: 2
        submit: true
    failure:
      gerrit:
        verified: -2
    start:
      gerrit:
        verified: 0
    precedence: high

  - name: unused
    manager: IndependentPipelineManager
    dequeue-on-new-patchset: false
    trigger:
      gerrit:
        - event: comment-added
          approval:
            - approved: 1

  - name: dup1
    manager: IndependentPipelineManager
    trigger:
      gerrit:
        - event: change-restored
    success:
      gerrit:
        verified: 1
    failure:
      gerrit:
        verified: -1

  - name: dup2
    manager: IndependentPipelineManager
    trigger:
      gerrit:
        - event: change-restored
    success:
      gerrit:
        verified: 1
    failure:
      gerrit:
        verified: -1

  - name: conflict
    manager: DependentPipelineManager
    failure-message: Build failed.  For information on how to proceed, see http://wiki.example.org/Test_Failures
    trigger:
      gerrit:
        - event: comment-added
          approval:
            - approved: 1
    success:
      gerrit:
        verified: 2
        submit: true
    failure:
      gerrit:
        verified: -2
    start:
      gerrit:
        verified: 0

  - name: experimental
    manager: IndependentPipelineManager
    trigger:
      gerrit:
        - event: patchset-created
    success:
      gerrit: {}
    failure:
      gerrit: {}

jobs:
  - name: ^.*-merge$
    failure-message: Unable to merge change
    hold-following-changes: true
    tags: merge
  - name: nonvoting-project-test2
    voting: false
  - name: project-testfile
    files:
      - '.*-requires'
  - name: node-project-test1
    parameter-function: select_debian_node
  - name: project1-project2-integration
    queue-name: integration
  - name: mutex-one
    mutex: test-mutex
  - name: mutex-two
    mutex: test-mutex
  - name: project1-merge
    tags:
      - project1
      - extratag

project-templates:
  - name: test-one-and-two
    check:
     - '{projectname}-test1'
     - '{projectname}-test2'
  - name: test-three-and-four
    check:
     - '{name}-test3'
     - '{name}-test4'
  - name: test-five
    check:
     - '{name}-{something}-test5'

projects:
  - name: org/project
    merge-mode: cherry-pick
    check:
      - project-merge:
        - project-test1
        - project-test2
        - project-testfile
    gate:
      - project-merge:
        - project-test1
        - project-test2
        - project-testfile
    post:
      - project-post
    dup1:
      - project-test1
    dup2:
      - project-test1

  - name: org/project1
    check:
      - project1-merge:
        - project1-test1
        - project1-test2
        - project1-project2-integration
    gate:
      - project1-merge:
        - project1-test1
        - project1-test2
        - project1-project2-integration
    post:
      - project1-post

  - name: org/project2
    check:
      - project2-merge:
        - project2-test1
        - project2-test2
        - project1-project2-integration
    gate:
      - project2-merge:
        - project2-test1
        - project2-test2
        - project1-project2-integration
    post:
      - project2-post

  - name: org/project3
    check:
      - project3-merge:
        - project3-test1
        - project3-test2
        - project1-project2-integration
    gate:
      - project3-merge:
        - project3-test1
        - project3-test2
        - project1-project2-integration
    post:
      - project3-post

  - name: org/one-job-project
    check:
      - one-job-project-merge
    gate:
      - one-job-project-merge
    post:
      - one-job-project-post

  - name: org/nonvoting-project
    check:
      - nonvoting-project-merge:
        - nonvoting-project-test1
        - nonvoting-project-test2
    gate:
      - nonvoting-project-merge:
        - nonvoting-project-test1
        - nonvoting-project-test2
    post:
      - nonvoting-project-post

  - name: org/templated-project
    template:
      - name: test-one-and-two
        projectname: project

  - name: org/layered-project
    template:
      - name: test-one-and-two
        projectname: project
      - name: test-three-and-four
      - name: test-five
        something: foo
    check:
      - project-test6

  - name: org/node-project
    gate:
      - node-project-merge:
        - node-project-test1
        - node-project-test2

  - name: org/conflict-project
    conflict:
      - conflict-project-merge:
        - conflict-project-test1
        - conflict-project-test2

  - name: org/noop-project
    gate:
      - noop

  - name: org/experimental-project
    experimental:
      - experimental-project-test

  - name: org/no-jobs-project
    check:
      - project-testfile
