---
# 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}'
      - 'post-merge-publish-xos':
          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:
      - 'verify-sonarqube'
      - 'xos-unit-test':
      - 'synchronizer-update':
      - 'api-test':
          pipeline_script: 'all-xos-api-test-helm.groovy'

- job-group:
    name: 'post-merge-publish-xos'
    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'
