parameters:
  jenkins:
    client:
      view:
        Validation:
          enabled: true
          type: ListView
          include_regex: "validate.*"
        CVP:
          enabled: true
          type: ListView
          include_regex: "cvp.*"
      job:
        validate_openstack:
          type: workflow-scm
          name: validate-openstack
          display_name: "Validate - Openstack"
          discard:
            build:
              keep_num: 50
            artifact:
              keep_num: 50
          concurrent: false
          scm:
            type: git
            url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
            branch: "${_param:jenkins_pipelines_branch}"
            credentials: ${_param:jenkins_gerrit_credentials}
            script: validate-cloud.groovy
          param:
            SALT_MASTER_URL:
              type: string
              default: "${_param:jenkins_salt_api_url}"
              description: Full Salt API address [e.g. https://10.10.10.2:6969]
            SALT_MASTER_CREDENTIALS:
              type: string
              default: "salt"
              description: Credentials to the Salt API
            TEST_IMAGE:
              type: string
              default: "${_param:mcp_docker_registry}/mirantis/oss/qa-tools"
              description: Docker image to setup testing environment
            TARGET_NODE:
              type: string
              default: ""
              description: Target node where this job will be executed from
            RUN_RALLY_TESTS:
              type: boolean
              default: 'true'
              description: If chosen then Rally tests will be executed
            RUN_TEMPEST_TESTS:
              type: boolean
              default: 'true'
              description: If chosen then Tempest tests will be executed
            RUN_K8S_TESTS:
              type: boolean
              default: 'true'
              description: If chosen then K8S tests will be executed
            TEMPEST_TEST_SET:
              type: choice
              choices:
                - smoke
                - full
              description: Set of Tempest tests to run
            TEMPEST_CONFIG_REPO:
              type: string
              default: ""
              description: Git repository with configuration files for Tempest
            TEMPEST_CONFIG_BRANCH:
              type: string
              default: ""
              description: Git branch which will be used during the checkout
            TEMPEST_REPO:
              type: string
              default: ""
              description: Git repository with Tempest
            TEMPEST_VERSION:
              type: string
              default: ""
              description: Version of Tempest (tag, branch or commit)
            TEST_K8S_NODE:
              type: string
              default: ""
              description: Kubernetes node to run tests from
            TEST_K8S_API_SERVER:
              type: string
              default: "http://127.0.0.1:8080"
              description: API server parameter for K8S tests
            TEST_K8S_CONFORMANCE_IMAGE:
              type: string
              default: "docker-dev-virtual.docker.mirantis.net/mirantis/kubernetes/k8s-conformance:v1.7.5-2_1504192939316"
              description: Docker image to run K8S tests
            RUN_SPT_TESTS:
              type: boolean
              default: 'true'
              description: If chosen then SPT tests will be executed
            SPT_SSH_USER:
              type: string
              default: "root"
              description: Username that is used to ssh between cluster nodes
            FLOATING_NETWORK:
              type: string
              default: ""
              description: External(floating) network name (used in both SPT and Rally)
            SPT_IMAGE:
              type: string
              default: ""
              description: Image that is used for network-VM-to-VM-iperf-tests tests
            SPT_IMAGE_USER:
              type: string
              default: ""
              description: Username that is used to ssh to SPT_IMAGE
            SPT_FLAVOR:
              type: string
              default: ""
              description: Flavor name for SPT_IMAGE (make sure you have required flavor created)
            RALLY_IMAGE:
              type: string
              default: "cirros"
            RALLY_FLAVOR:
              type: string
              default: "m1.tiny"
              description: Flavor name for Rally scenarios
            RALLY_CONFIG_REPO:
              type: string
              default: ""
              description: Git repository with configuration files for Rally
            RALLY_CONFIG_BRANCH:
              type: string
              default: ""
              description: Git branch which will be used during the checkout
            RALLY_SCENARIOS:
              type: string
              default: ""
              description: Rally scenarios directory or file with scenarios
            RALLY_SL_SCENARIOS:
              type: string
              default: ""
              description: Stacklight Rally scenarios directory or file with scenarios
            RALLY_TASK_ARGS_FILE:
              type: string
              default: ""
              description: Rally scenarios arguments file
            AVAILABILITY_ZONE:
              type: string
              default: "nova"
              description: Name of availability zone
            GENERATE_REPORT:
              type: boolean
              default: 'true'
              description: If chosen then at the end of the test run HTML report will be generated
            ACCUMULATE_RESULTS:
              type: boolean
              default: 'true'
              description: If chosen then previous build results will be used in the current build
            RALLY_PLUGINS_REPO:
              type: string
              default: ""
              description: Git repository with Rally plugins
            RALLY_PLUGINS_BRANCH:
              type: string
              default: ""
              description: Git branch which will be used during the checkout
            K8S_RALLY:
              type: boolean
              default: 'false'
              description: If chosen then K8S Rally test will be executed
            STACKLIGHT_RALLY:
              type: boolean
              default: 'false'
              description: If chosen then Stacklight Rally test will be executed
            JOB_TIMEOUT:
              type: string
              default: "3"
              description: Job timeout in hours
            REPORT_DIR:
              type: string
              default: ""
              description: Path for reports outside docker image
            SKIP_LIST:
              type: string
              description: "Skip list for Rally test"
              default: ""
        cvp-sanity:
          type: workflow-scm
          name: cvp-sanity
          display_name: "CVP - Sanity checks"
          discard:
            build:
              keep_num: 20
            artifact:
              keep_num: 20
          concurrent: false
          scm:
            type: git
            url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
            branch: "${_param:jenkins_pipelines_branch}"
            credentials: ${_param:jenkins_gerrit_credentials}
            script: cvp-runner.groovy
          param:
            IMAGE:
              type: string
              default: "${_param:docker_image_cvp_sanity_checks}"
              description: Docker image with tests and all pip dependecies to use for testing
            SALT_MASTER_URL:
              type: string
              default: "${_param:jenkins_salt_api_url}"
              description: Full Salt API address [e.g. https://10.10.10.2:8969]
            SALT_MASTER_CREDENTIALS:
              type: string
              default: "salt"
            EXTRA_PARAMS:
              type: text
              default: |
                envs:
                  - tests_set=''
                override_config:
                  skipped_nodes: []
              description: |
                YAML context with additional parameters. 'envs' key is for environment variables, 'override_config' key is for overriding the global config in YAML format (good for nested parameters). Example:
                envs:
                - tests_set='tests/test_mtu.py'
                override_config:
                  drivetrain_version: 2019.2.0
                  skipped_groups:
                  - log
                  test_duplicate_ips:
                    skipped_ifaces:
                    - lo
                    - virbr0
                    - docker_gwbridge
                    - docker0
                  test_packages:
                    skipped_packages: []
                    skip_test: 'false'
        cvp-func:
          type: workflow-scm
          name: cvp-func
          display_name: "CVP - Functional tests"
          discard:
            build:
              keep_num: 20
            artifact:
              keep_num: 20
          concurrent: false
          scm:
            type: git
            url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
            branch: "${_param:jenkins_pipelines_branch}"
            credentials: ${_param:jenkins_gerrit_credentials}
            script: cvp-func.groovy
          param:
            DEBUG_MODE:
              type: boolean
              default: 'false'
              description: Enable if you need to keep container after the test and debug
            SKIP_LIST_PATH:
              type: string
              default: "cvp-configuration/tempest/skip-list.yaml"
              description: Path to skip list in container
            SALT_MASTER_URL:
              type: string
              default: "http://${_param:salt_master_host}:6969"
              description: Full Salt API address [e.g. http://10.10.10.2:6969]
            SALT_MASTER_CREDENTIALS:
              type: string
              default: "salt"
              description: Credentials to the Salt API
            TEST_IMAGE:
              type: string
              default: "${_param:docker_image_cvp_xrally}"
              description: Docker image to use for running Rally/Tempest
            TARGET_NODE:
              type: string
              default: ""
              description: Node where container with Tempest will be run
            PROXY:
              type: string
              default: ""
              description: "Proxy address to use to access the Internet. For offline mode, use \"offline\" value."
            TEMPEST_TEST_PATTERN:
              type: string
              default: "set=smoke"
              description: Use set=smoke (or identity,full...) or just test name
            TEMPEST_ENDPOINT_TYPE:
              type: choice
              choices:
                - internalURL
                - adminURL
                - publicURL
              description: Openstack endpoint type to use during test run
            TEMPEST_REPO:
              type: string
              default: "https://github.com/openstack/tempest"
              description: URL to Tempest repo (local or remote) or path to tempest folder in container
            TOOLS_REPO:
              type: string
              default: "https://github.com/Mirantis/cvp-configuration -b release/${_param:mcp_version}"
              description: URL of repo where testing tools, scenarios, configs are located.
        cvp-ha:
          type: workflow-scm
          name: cvp-ha
          display_name: "CVP - HA tests"
          discard:
            build:
              keep_num: 20
            artifact:
              keep_num: 20
          concurrent: false
          scm:
            type: git
            url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
            branch: "${_param:jenkins_pipelines_branch}"
            credentials: ${_param:jenkins_gerrit_credentials}
            script: cvp-ha.groovy
          param:
            SALT_MASTER_URL:
              type: string
              default: "http://${_param:salt_master_host}:6969"
              description: Full Salt API address [e.g. http://10.10.10.2:6969]
            SALT_MASTER_CREDENTIALS:
              type: string
              default: "salt"
              description: Credentials to the Salt API
            TEMPEST_TARGET_NODE:
              type: string
              default: ""
              description: Node where container with tempest will be run
            TEST_IMAGE:
              type: string
              default: "${_param:docker_image_cvp_xrally}"
              description: Docker image to use for running Rally/Tempest
            TARGET_NODES:
              type: string
              default: "ctl*"
              description: Nodes to test
            DEBUG_MODE:
              type: boolean
              default: 'false'
              description: If you need to debug (keep container after test), please enabled this
            RETRY_CHECK_STATUS:
              type: string
              default: "200"
              description: If you have any problems with timeouts (e.g. while waiting for node to be up/down), please increase this value
            SKIP_LIST_PATH:
              type: string
              default: "cvp-configuration/tempest/skip-list.yaml"
              description: path to skip-list file inside container
            PROXY:
              type: string
              default: ""
              description: "Proxy address to use to access the Internet. For offline mode, use \"offline\" value."
            TEMPEST_TEST_PATTERN:
              type: string
              default: "set=smoke"
              description: Use set=smoke (or identity,full...) or just test name
            MANUAL_CONFIRMATION:
              type: boolean
              default: 'false'
              description: Ask for confirmation before doing something destructive (reboot/shutdown node)
            TEMPEST_REPO:
              type: string
              default: "https://github.com/openstack/tempest"
              description: Can be repo url (local or remote) or path to folder (inside container) with Tempest
            TOOLS_REPO:
              type: string
              default: "https://github.com/Mirantis/cvp-configuration -b release/${_param:mcp_version}"
              description: URL of repo where testing tools, scenarios, configs are located.
        cvp-tempest:
          type: workflow-scm
          name: cvp-tempest
          display_name: "CVP-Tempest (technical preview)"
          discard:
            build:
              keep_num: 20
            artifact:
              keep_num: 20
          concurrent: false
          scm:
            type: git
            url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
            branch: "${_param:jenkins_pipelines_branch}"
            credentials: ${_param:jenkins_gerrit_credentials}
            script: cvp-tempest.groovy
          param:
            PREPARE_RESOURCES:
              type: boolean
              default: true
              description: Prepare resources for Tempest
            SALT_MASTER_URL:
              type: string
              default: "http://${_param:salt_master_host}:6969"
              description: Full Salt API address [e.g. http://10.10.10.2:6969]
            TEMPEST_TEST_PATTERN:
              type: string
              default: "set=smoke"
              description: Use set=smoke, set=full or just test name (regex)
            TEMPEST_ENDPOINT_TYPE:
              type: choice
              choices:
                - internalURL
                - adminURL
                - publicURL
              description: Openstack endpoint type to use during test run.
            EXTRA_PARAMS:
              type: text
              default:  |
                ---
                  DEBUG_MODE: false
                  GENERATE_CONFIG: true
                  TEST_IMAGE: "${_param:docker_image_cvp_tempest}"
                  report_prefix: "cvp_"
              description: YAML context with additional parameters
        cvp-perf:
          type: workflow-scm
          name: cvp-perf
          display_name: "CVP - Performance tests"
          discard:
            build:
              keep_num: 20
            artifact:
              keep_num: 20
          concurrent: false
          scm:
            type: git
            url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
            branch: "${_param:jenkins_pipelines_branch}"
            credentials: ${_param:jenkins_gerrit_credentials}
            script: cvp-perf.groovy
          param:
            DEBUG_MODE:
              type: boolean
              default: 'false'
              description: Enable if you need to keep container after the test and debug
            RALLY_SCENARIO_FILE:
              type: string
              default: "cvp-configuration/rally/rally_scenarios.json"
              description: Path to scenario file in container
            TEST_IMAGE:
              type: string
              default: "${_param:docker_image_cvp_xrally}"
              description: Docker image to use for running Rally/Tempest
            SALT_MASTER_URL:
              type: string
              default: "http://${_param:salt_master_host}:6969"
              description: Full Salt API address [e.g. http://10.10.10.2:6969]
            SALT_MASTER_CREDENTIALS:
              type: string
              default: "salt"
              description: Credentials to the Salt API
            TARGET_NODE:
              type: string
              default: ""
              description: Node where docker container with Rally will be run
            TOOLS_REPO:
              type: string
              default: "https://github.com/Mirantis/cvp-configuration -b release/${_param:mcp_version}"
              description: URL of repo where testing tools, scenarios, configs are located.
            PROXY:
              type: string
              default: ""
              description: "Proxy address to use to access the Internet. For offline mode, use \"offline\" value."
        cvp-stacklight:
          type: workflow-scm
          name: cvp-stacklight
          display_name: "CVP - Stacklight tests"
          discard:
            build:
              keep_num: 20
            artifact:
              keep_num: 20
          concurrent: false
          scm:
            type: git
            url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
            branch: "${_param:jenkins_pipelines_branch}"
            credentials: ${_param:jenkins_gerrit_credentials}
            script: cvp-runner.groovy
          param:
            IMAGE:
              type: string
              default: "${_param:docker_image_cvp_sanity_checks}"
              description: Docker image with tests and all pip dependecies to use for testing
            SALT_MASTER_URL:
              type: string
              default: "${_param:jenkins_salt_api_url}"
              description: Full Salt API address [e.g. https://10.10.10.2:8969]
            SALT_MASTER_CREDENTIALS:
              type: string
              default: "salt"
            EXTRA_PARAMS:
              type: text
              default: |
                envs:
                  - SL_AUTOCONF=True
              description: YAML context with additional parameters
        cvp-spt:
          type: workflow-scm
          name: cvp-spt
          display_name: "CVP - Simplified Performance Tests (SPT)"
          discard:
            build:
              keep_num: 20
            artifact:
              keep_num: 20
          concurrent: false
          scm:
            type: git
            url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
            branch: "${_param:jenkins_pipelines_branch}"
            credentials: ${_param:jenkins_gerrit_credentials}
            script: cvp-runner.groovy
          param:
            IMAGE:
              type: string
              default: "${_param:docker_image_cvp_sanity_checks}"
              description: Docker image with tests and all pip dependecies to use for testing
            SALT_MASTER_URL:
              type: string
              default: "${_param:jenkins_salt_api_url}"
              description: Full Salt API address [e.g. https://10.10.10.2:8969]
            SALT_MASTER_CREDENTIALS:
              type: string
              default: "salt"
            EXTRA_PARAMS:
              type: text
              default: |
                envs:
                  - tests_set=''
                  - image_name=Ubuntu
                  - networks=10.101.0.0/24
              description: 'YAML context with additional parameters. Additional params: HW_NODES, CMP_HOSTS, salt_timeout, skipped_nodes, nova_timeout, iperf_prep_string, IMAGE_SIZE_MB'
        cvp-shaker:
          type: workflow-scm
          name: cvp-shaker
          display_name: "CVP - Shaker network tests"
          discard:
            build:
              keep_num: 20
            artifact:
              keep_num: 20
          concurrent: false
          scm:
            type: git
            url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
            branch: "${_param:jenkins_pipelines_branch}"
            credentials: ${_param:jenkins_gerrit_credentials}
            script: cvp-shaker.groovy
          param:
            IMAGE:
              type: string
              default: "${_param:docker_image_cvp_shaker_checks}"
              description: Docker image to use for running Shaker.
            SALT_MASTER_URL:
              type: string
              default: "${_param:jenkins_salt_api_url}"
              description: Full Salt API address [e.g. https://10.10.10.2:6969].
            SALT_MASTER_CREDENTIALS:
              type: string
              default: "salt"
              description: Credentials to the Salt API.
            SLAVE_NODE:
              type: string
              default: "slave01"
              description: Label or name of node to start the Shaker server (should be one of cicd nodes and should have the IP address of SHAKER_SERVER_ENDPOINT).
            SHAKER_PARAMS:
              type: text
              default:  |
                ---
                  SHAKER_SERVER_ENDPOINT: '10.13.0.15:5999'
                  SHAKER_SCENARIOS: 'scenarios/essential'
                  SKIP_LIST: ''
                  image_builder:
                  #  - SHAKER_FLAVOR_DISK=4
                  #  - SHAKER_FLAVOR_RAM=512
                  #  - SHAKER_FLAVOR_VCPUS=1
                  #  - SHAKER_IMAGE_BUILDER_MODE='dib'
                  shaker:
                  #  - SHAKER_AGENT_JOIN_TIMEOUT=300
                  #  - SHAKER_AGENT_LOSS_TIMEOUT=120
                  #  - SCENARIO_AVAILABILITY_ZONE='nova,internal'
                  #  - SCENARIO_COMPUTE_NODES=2
                  #  - SHAKER_EXTERNAL_NET='public'
              description: |
                  YAML context with parameters for running Shaker tests, where
                  "SHAKER_SERVER_ENDPOINT" - Address for Shaker server connections (host:port). The IP address of SLAVE_NODE with the port. Should be accessible
                  from tenant's VM network (floating network)
                  "SHAKER_SCENARIOS" - Path to shaker scenarios in the cvp-shaker docker image
                  (can be directory or specific file). Main categories are
                    scenarios/essential/l2
                    scenarios/essential/l3
                    scenarios/additional/cross_az
                    scenarios/additional/external
                    scenarios/additional/qos
                  "SKIP_LIST" - Comma-separated list of Shaker scenarios to skip, directories or files inside scenarios/
                  of cvp-shaker, e.g. "dense_l2.yaml,full_l2.yaml,l3"
                  "image_builder" - shaker-image-builder env variables
                    SHAKER_FLAVOR_DISK=4
                    SHAKER_FLAVOR_RAM=512
                    SHAKER_FLAVOR_VCPUS=1
                    SHAKER_IMAGE_BUILDER_MODE='dib'
                  "shaker" - main shaker runner env variables
                    SHAKER_AGENT_JOIN_TIMEOUT=300
                    SHAKER_AGENT_LOSS_TIMEOUT=120
                    SCENARIO_AVAILABILITY_ZONE='nova,internal'
                    SCENARIO_COMPUTE_NODES=2
                    SHAKER_EXTERNAL_NET='public'
                  For the more detailed description of the last two categories please refer to the shaker documentation
                  https://pyshaker.readthedocs.io/en/latest/tools.html
