Add swarm-bootstrap-salt-cluster-heat to jjb
Change-Id: Ib1c6038271232927e31e9825405f843c3239658b
diff --git a/jobs/project.yaml b/jobs/project.yaml
index 31ca31a..1b52f3c 100644
--- a/jobs/project.yaml
+++ b/jobs/project.yaml
@@ -51,6 +51,7 @@
- swarm-run-pytest
- generate-report
- swarm-testrail-report-jjb
+ - swarm-bootstrap-salt-cluster-heat-jjb
# - mark-reports - can't moved to JJB, a lot of parameters is not supported like Inject environment variables
# - diff_params_reclass_system - can't moved to JJB, unsupported parameters
# - diff_params_reclass_system - can't moved to JJB, unsupported parameters
diff --git a/jobs/templates/swarm-bootstrap-salt-cluster-heat-jjb.yaml b/jobs/templates/swarm-bootstrap-salt-cluster-heat-jjb.yaml
new file mode 100755
index 0000000..2dbc28b
--- /dev/null
+++ b/jobs/templates/swarm-bootstrap-salt-cluster-heat-jjb.yaml
@@ -0,0 +1,241 @@
+- job-template:
+ project-type: pipeline
+ description: '{job-description}'
+ concurrent: true
+ disabled: false
+ name: swarm-bootstrap-salt-cluster-heat-jjb
+ properties:
+ - throttle:
+ option: project
+ max-per-node: 3
+ max-total: 3
+ parameters:
+ - string:
+ name: ENV_NAME
+ default:
+ description: 'Required: Fuel-devops environment name'
+ trim: 'false'
+ - string:
+ name: LAB_CONFIG_NAME
+ default: ''
+ description: ''
+ trim: 'false'
+ - string:
+ name: PARENT_NODE_NAME
+ default: ''
+ description: |-
+ Required: Name of the jenkins slave to create the environment<br>
+ To be set by the parent deployment job.
+ trim: 'false'
+ - string:
+ name: PARENT_WORKSPACE
+ default: ''
+ description: |-
+ Required: Workspace on the jenkins slave to reuse for the job<br>
+ To be set by the parent deployment job.
+ trim: 'false'
+ - string:
+ name: MCP_VERSION
+ default: 'proposed'
+ description: ''
+ trim: 'false'
+ - string:
+ name: MCP_IMAGE_PATH1604
+ default: '/home/jenkins/images/ubuntu-16-04-x64-mcpproposed.qcow2'
+ description: |-
+ Required: Local path to the image
+ http://ci.mcp.mirantis.net:8085/images/ubuntu-16-04-x64-mcpproposed.qcow2'
+ trim: 'false'
+ - string:
+ name: CFG01_CONFIG_IMAGE_NAME
+ default: cfg01.${{LAB_CONFIG_NAME}}-config-drive.iso
+ description: |-
+ ISO name that will be generated and downloaded to the /home/jenkins/images/
+ trim: 'false'
+ - string:
+ name: IMAGE_PATH_CFG01_DAY01
+ default: '/home/jenkins/images/cfg01-day01.qcow2'
+ description: |-
+ Required: Local path to the image
+ http://ci.mcp.mirantis.net:8085/images/ubuntu-16-04-x64-mcpproposed.qcow2'
+ trim: 'false'
+ - string:
+ name: TCP_QA_REFS
+ default: ''
+ description: |-
+ Example: refs/changes/89/411189/36 (for now - only one reference allowed)
+ trim: 'false'
+ - string:
+ name: PIPELINE_LIBRARY_REF
+ default: ''
+ description: |-
+ reference to patchset in pipeline-library
+ trim: 'false'
+ - string:
+ name: MK_PIPELINES_REF
+ default: ''
+ description: |-
+ reference to patchset in mk-pipelines
+ trim: 'false'
+ - string:
+ name: COOKIECUTTER_TEMPLATE_COMMIT
+ default: ''
+ description: |-
+ Can be 'master' or 'proposed'. If empty, then takes ${{MCP_VERSION}} value
+ trim: 'false'
+ - string:
+ name: SALT_MODELS_SYSTEM_COMMIT
+ default: ''
+ description: |-
+ Can be 'master' or 'proposed'. If empty, then takes ${{MCP_VERSION}} value
+ trim: 'false'
+ - bool:
+ name: SHUTDOWN_ENV_ON_TEARDOWN
+ default: true
+ description: |-
+ Shutdown the fuel-devops environment at the end of the job
+ trim: 'false'
+ - string:
+ name: JENKINS_SLAVE_NODE_NAME
+ default: ''
+ trim: 'false'
+ - string:
+ name: PARENT_WORKSPACE
+ default: ''
+ description: |-
+ Required: Workspace on the jenkins slave to reuse for the job
+ To be set by the parent deployment job.
+ trim: 'false'
+ - string:
+ name: COOKIECUTTER_REF_CHANGE
+ default: ''
+ description: ''
+ trim: 'false'
+ - string:
+ name: ENVIRONMENT_TEMPLATE_REF_CHANGE
+ default: ''
+ description: ''
+ trim: 'false'
+ - string:
+ name: LAB_MANAGEMENT_IFACE
+ default: ''
+ description: 'For BareMetal only'
+ trim: 'false'
+ - string:
+ name: LAB_CONTROL_IFACE
+ default: ''
+ description: 'For BareMetal only'
+ trim: 'false'
+ - password:
+ name: IPMI_USER
+ default: admin
+ description: "For maas only"
+ - password:
+ name: IPMI_PASS
+ default: password
+ description: "For maas only"
+ - string:
+ name: MCP_SALT_REPO_URL
+ default: ''
+ description: |-
+ If empty: use default from mcp-common-scripts config-drive/master_config.yaml
+ For offline deploy: http://10.10.0.14/ubuntu-xenial
+ For online deploy: http://mirror.mirantis.com/
+ - string:
+ name: MCP_SALT_REPO_KEY
+ default: ''
+ description: |-
+ If empty: use default from mcp-common-scripts config-drive/master_config.yaml
+ For offline deploy: http://10.10.0.14/public.gpg
+ For online deploy:
+ ${{MCP_SALT_REPO_URL}}/${{MCP_VERSION}}/salt-formulas/xenial/archive-salt-formulas.key
+ - string:
+ name: MCP_COMMON_SCRIPTS_REFS
+ default: ''
+ description: ''
+ trim: 'false'
+ - string:
+ name: SALT_MODELS_SYSTEM_REF_CHANGE
+ default: ''
+ description: ''
+ trim: 'false'
+ - string:
+ name: UPDATE_REPO_CUSTOM_TAG
+ default: ''
+ description: 'The custom tag for update repos. Could be like `2018.11.0`, `2019.2.0`, `proposed` etc.'
+ trim: 'false'
+ - string:
+ name: OS_AUTH_URL
+ default: ''
+ description: 'Openstack keystone catalog endpoint, for example https://10.90.0.80:5000/v3'
+ trim: 'false'
+ - string:
+ name: OS_PROJECT_NAME
+ default: 'admin'
+ description: 'OpenStack project (tenant) name'
+ trim: 'false'
+ - string:
+ name: OS_CREDENTIALS
+ default: ''
+ description: 'Jenkins credentials ID with username and password to create a heat stack in OpenStack'
+ trim: 'false'
+ - string:
+ name: LAB_PARAM_DEFAULTS
+ default: ''
+ description: |-
+ Heat template environment filename with 'parameter_defaults'
+ dict, placed in tcp_tests/templates/_heat_environments/,
+ for example: microcloud-8116.env
+ trim: 'false'
+ - string:
+ name: CREATE_JENKINS_NODE_CREDENTIALS
+ default: 'create_jenkins_node_cz8133'
+ description: |-
+ Credentials with username and password with rights to create a Jenkins slave node
+ trim: 'false'
+ - string:
+ name: ACCESS_JENKINS_NODE_CREDENTIALS
+ default: '02177449-43b5-41d7-b31f-0ab77acedb71'
+ description: |-
+ Credentials with SSH username and private key to run a Jenkins agent on slave node
+ trim: 'false'
+ - string:
+ name: OS_USER_DOMAIN_NAME
+ default: ''
+ description: |-
+ OpenStack user domain name
+ trim: 'false'
+ - string:
+ name: JENKINS_PIPELINE_BRANCH
+ default: ''
+ description: ''
+ trim: 'false'
+ - string:
+ name: UPDATE_VERSION
+ default: 'proposed'
+ description: ''
+ trim: 'false'
+ - string:
+ name: UPDATES_MIRANTIS_VERSION
+ default: ''
+ description: |
+ Overwrite subsection of updates.mirantis.com repository.
+ Effective only if enabled in cookiecutter context!
+ - password:
+ name: CISCO_PASS
+ default: '1fac0DlhILBo'
+ description: "For maas only"
+ - bool:
+ name: DEPLOY_EMPTY_NODE
+ default: 'false'
+ pipeline-scm:
+ lightweight-checkout: false
+ scm:
+ - git:
+ branches:
+ - FETCH_HEAD
+ refspec: ${{TCP_QA_REFS}}
+ url: https://gerrit.mcp.mirantis.com/mcp/tcp-qa
+ script-path: jobs/pipelines/swarm-bootstrap-salt-cluster-heat.groovy
+ logrotate:
+ daysToKeep: 30
\ No newline at end of file
diff --git a/jobs/view.yaml b/jobs/view.yaml
index 660579d..b7b4e17 100644
--- a/jobs/view.yaml
+++ b/jobs/view.yaml
@@ -168,4 +168,21 @@
- last-success
- last-failure
- last-duration
+ - build-button
+- view:
+ name: common
+ view-type: list
+ description: |
+ for service deployment jobs
+ filter-executors: true
+ filter-queue: true
+ job-name:
+ - swarm-bootstrap-salt-cluster-heat-jjb
+ columns:
+ - status
+ - weather
+ - job
+ - last-success
+ - last-failure
+ - last-duration
- build-button
\ No newline at end of file
diff --git a/src/com/mirantis/system_qa/SharedPipeline.groovy b/src/com/mirantis/system_qa/SharedPipeline.groovy
index 30de7bc..0f839c6 100644
--- a/src/com/mirantis/system_qa/SharedPipeline.groovy
+++ b/src/com/mirantis/system_qa/SharedPipeline.groovy
@@ -314,7 +314,7 @@
booleanParam(name: 'DEPLOY_EMPTY_NODE', value: deploy_empty_node),
]
- build_pipeline_job('swarm-bootstrap-salt-cluster-heat', parameters)
+ build_pipeline_job('swarm-bootstrap-salt-cluster-heat-jjb', parameters)
}
def swarm_deploy_cicd(String stack_to_install, String install_timeout, String jenkins_slave_node_name, Boolean make_snapshot_stages, String batch_size, Boolean dist_upgrade_nodes, Boolean upgrade_saltstack) {