- job:
    name: gophercloud-unittest
    parent: golang-test
    description: |
      Run gophercloud unit test
    run: .zuul/playbooks/gophercloud-unittest/run.yaml
    nodeset: ubuntu-xenial-ut

- job:
    name: gophercloud-acceptance-test
    parent: golang-test
    description: |
      Run gophercloud acceptance test on master branch
    run: .zuul/playbooks/gophercloud-acceptance-test/run.yaml
    timeout: 18000 # 5 hours
    nodeset: ubuntu-bionic

- job:
    name: gophercloud-acceptance-test-ironic
    parent: golang-test
    description: |
      Run gophercloud ironic acceptance test on master branch
    run: .zuul/playbooks/gophercloud-acceptance-test-ironic/run.yaml
    nodeset: ubuntu-bionic

- job:
    name: gophercloud-acceptance-test-ussuri
    parent: gophercloud-acceptance-test
    description: |
      Run gophercloud acceptance test on ussuri branch
    vars:
      global_env:
        OS_BRANCH: stable/ussuri

- job:
    name: gophercloud-acceptance-test-train
    parent: gophercloud-acceptance-test
    description: |
      Run gophercloud acceptance test on train branch
    vars:
      global_env:
        OS_BRANCH: stable/train

- job:
    name: gophercloud-acceptance-test-stein
    parent: gophercloud-acceptance-test
    description: |
      Run gophercloud acceptance test on stein branch
    vars:
      global_env:
        OS_BRANCH: stable/stein

- job:
    name: gophercloud-acceptance-test-rocky
    parent: gophercloud-acceptance-test
    description: |
      Run gophercloud acceptance test on rocky branch
    vars:
      global_env:
        OS_BRANCH: stable/rocky

- job:
    name: gophercloud-acceptance-test-queens
    parent: gophercloud-acceptance-test
    description: |
      Run gophercloud acceptance test on queens branch
    nodeset: ubuntu-xenial
    vars:
      global_env:
        OS_BRANCH: stable/queens

# NOTE: A Pike-based devstack environment is currently
# not building correctly. This might be a temporary issue.
- job:
    name: gophercloud-acceptance-test-pike
    parent: gophercloud-acceptance-test
    description: |
      Run gophercloud acceptance test on pike branch
    nodeset: ubuntu-xenial
    vars:
      global_env:
        OS_BRANCH: stable/pike

- job:
    name: gophercloud-acceptance-test-ocata
    parent: gophercloud-acceptance-test
    description: |
      Run gophercloud acceptance test on ocata branch
    nodeset: ubuntu-xenial
    vars:
      global_env:
        OS_BRANCH: stable/ocata

# NOTE: A Newton-based devstack environment is currently
# not building correctly. This might be a temporary issue.
- job:
    name: gophercloud-acceptance-test-newton
    parent: gophercloud-acceptance-test
    description: |
      Run gophercloud acceptance test on newton branch
    nodeset: ubuntu-xenial
    vars:
      global_env:
        OS_BRANCH: stable/newton

- project:
    name: gophercloud/gophercloud
    check:
      jobs:
        - gophercloud-unittest
        - gophercloud-acceptance-test
        - gophercloud-acceptance-test-ironic
    recheck-newton:
      jobs:
        - gophercloud-acceptance-test-newton
    recheck-ocata:
      jobs:
        - gophercloud-acceptance-test-ocata
    recheck-pike:
      jobs:
        - gophercloud-acceptance-test-pike
    recheck-queens:
      jobs:
        - gophercloud-acceptance-test-queens
    recheck-rocky:
      jobs:
        - gophercloud-acceptance-test-rocky
    recheck-stein:
      jobs:
        - gophercloud-acceptance-test-stein
    recheck-train:
      jobs:
        - gophercloud-acceptance-test-train
    recheck-ussuri:
      jobs:
        - gophercloud-acceptance-test-ussuri
