blob: 9e981666ad29d7ea42201555233115ed28d7eab2 [file] [log] [blame]
parameters:
jenkins:
client:
view:
Validation:
enabled: true
type: ListView
include_regex: "validate.*"
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:6969]
SALT_MASTER_CREDENTIALS:
type: string
default: "salt"
EXTRA_PARAMS:
type: text
default: |
envs:
- tests_set=''
description: "YAML context with additional parameters, e.g. skipped_nodes=nal01.local.com,ntw01.local.com or tests_set='tests/test_mtu.py'"
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: "${_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: "xrally/xrally-openstack:0.11.2"
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 2019.2.0"
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: "${_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
TEMPEST_TARGET_NODE:
type: string
default: ""
description: Node where container with tempest will be run
TEST_IMAGE:
type: string
default: "xrally/xrally-openstack:0.11.2"
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 2019.2.0"
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: "${_param:jenkins_salt_api_url}"
description: SALT_MASTER_URL
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: "docker-prod-virtual.docker.mirantis.net/mirantis/cicd/ci-tempest:${_param:openstack_version}"
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: "xrally/xrally-openstack:0.11.2"
description: Docker image to use for running Rally/Tempest
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
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 2019.2.0"
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:6969]
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:6969]
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.
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). Should be accessible
from tenant's VM network (usually equals to public address of cicd node)
"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