---
- project:
    name: upgrade-tests
    k8s_version: '1.21'
    test_type:
      - 'cephfs'
      - 'rbd'
    csi_upgrade_version: 'v3.3.1'
    jobs:
      - 'upgrade-tests-{test_type}'

- job-template:
    name: 'upgrade-tests-{test_type}'
    project-type: pipeline
    concurrent: true
    properties:
      - github:
          url: https://github.com/ceph/ceph-csi
      - build-discarder:
          days-to-keep: 7
          artifact-days-to-keep: 7
    # default variables
    k8s_version: '<unset>'
    test_type: '<unset>'
    csi_upgrade_version: '<unset>'
    # generated parameters for the job (used in the groovy script)
    parameters:
      - string:
          name: k8s_version
          default: '{k8s_version}'
          description: Kubernetes version to deploy in the test cluster.
      - string:
          name: test_type
          default: '{test_type}'
          description: Mentions whether upgrade tests run for rbd/cephfs.
      - string:
          name: csi_upgrade_version
          default: '{csi_upgrade_version}'
          description: Ceph CSI base version to be used before upgrade.
    pipeline-scm:
      scm:
        - git:
            name: origin
            url: https://github.com/ceph/ceph-csi
            branches:
              - ci/centos
      script-path: upgrade-tests.groovy
      lightweight-checkout: true
    triggers:
      - github-pull-request:
          status-url: $RUN_DISPLAY_URL
          status-context: 'ci/centos/upgrade-tests-{test_type}'
          # yamllint disable-line rule:line-length
          trigger-phrase: '/(re)?test ((all)|(ci/centos/upgrade-tests(-{test_type})?))'
          permit-all: true
          github-hooks: true
          black-list-target-branches:
            - ci/centos
          org-list:
            - ceph