---
# verification jobs for 'xos' repo

- project:
    name: xos
    project: '{name}'

    jobs:
      - 'verify-xos-jobs-licensed-versioned':
          branch-regexp: '{supported-branches-regexp}'
      - 'verify-xos-jobs-code':
          branch-regexp: '{supported-branches-regexp}'
      - 'publish-xos-jobs':
          branch-regexp: '{supported-branches-regexp}'

# these two job groups are split so that documentation-only patches can go into
# the XOS repo without invoking all the code-level tests.
#
# Items in the 'verify-xos-jobs-code' job-group only trigger with
# 'non-doc-files-regexp', which excludes the docs/* and VERSION file

- job-group:
    name: 'verify-xos-jobs-licensed-versioned'
    jobs:
      - 'verify-licensed'
      - 'tag-collision-reject':
          dependency-jobs: 'verify_xos_licensed'

- job-group:
    name: 'verify-xos-jobs-code'
    jobs:
      - 'python-unit-test':
          build-timeout: 45
          build-node: 'ubuntu18.04-basebuild-2c-4g'
      - 'api-test':
          pipeline-script: 'xos-core.groovy'

- job-group:
    name: 'publish-xos-jobs'
    jobs:
      - 'pypi-publish':
          pypi-module-dirs: 'lib/xos-config|lib/xos-genx|lib/xos-util|lib/xos-api|lib/xos-migrate|lib/xos-synchronizer|lib/xos-kafka'
          project-regexp: '^{name}$'
          pypi-index: 'pypi'
          dependency-jobs: 'version-tag_wildcard'
      - 'docker-publish':
          maintainers: "onf-bat-admin@opennetworking.org, andy@opennetworking.org, scottb@opennetworking.org"
          build-timeout: 30
          docker-repo: 'xosproject'
          dependency-jobs: 'version-tag_wildcard'

# [EOF]
