refactor deploy job structure
Change-Id: I7962328d524dfc57348c0d070f29731f8222475e
diff --git a/jenkins/client/job/deploy/lab/deploy.yml b/jenkins/client/job/deploy/lab/deploy.yml
new file mode 100644
index 0000000..5d87340
--- /dev/null
+++ b/jenkins/client/job/deploy/lab/deploy.yml
@@ -0,0 +1,156 @@
+parameters:
+ _param:
+ jenkins_deploy_jobs: []
+ jenkins:
+ client:
+ job_template:
+ deploy_template:
+ name: deploy-{{stack_type}}-{{stack_name}}
+ jobs: ${_param:jenkins_deploy_jobs}
+ template:
+ type: workflow-scm
+ discard:
+ build:
+ keep_num: 20
+ concurrent: true
+ display_name: "Deploy - {{stack_name}} {{stack_type}}"
+ scm:
+ type: git
+ url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+ credentials: "gerrit"
+ script: cloud-deploy-pipeline.groovy
+ trigger:
+ timer:
+ spec: "{{job_timer}}"
+ param:
+ # general parameters
+ ASK_ON_ERROR:
+ type: boolean
+ default: 'false'
+
+ # deployments
+ STACK_NAME:
+ type: string
+ description: Heat stack name. Will be generated if missing.
+ STACK_TYPE:
+ type: string
+ default: "{{stack_type}}"
+ STACK_INSTALL:
+ type: string
+ default: "{{stack_install}}"
+ STACK_TEST:
+ type: string
+ default: "{{stack_test}}"
+ STACK_REUSE:
+ type: boolean
+ default: 'false'
+ STACK_DELETE:
+ type: boolean
+ default: 'true'
+ description: "Don't enable it if you need to use the lab after"
+ STACK_COMPUTE_COUNT:
+ type: string
+ default: '2'
+
+ STACK_TEMPLATE:
+ type: string
+ default: "{{stack_name}}"
+ STACK_TEMPLATE_URL:
+ type: string
+ default: "${_param:jenkins_gerrit_url}/mk/heat-templates"
+ STACK_TEMPLATE_CREDENTIALS:
+ type: string
+ default: "gerrit"
+ STACK_TEMPLATE_BRANCH:
+ type: string
+ default: "master"
+ STACK_CLEANUP_JOB:
+ type: string
+ default: 'deploy-stack-cleanup'
+
+ # salt
+ SALT_MASTER_CREDENTIALS:
+ type: string
+ default: "salt-qa-credentials"
+ SALT_MASTER_URL:
+ type: string
+ default: ""
+ SALT_OVERRIDES:
+ type: text
+ default: ""
+ description: "YAML with overrides for Salt deployment"
+
+ # aws api
+ AWS_STACK_REGION:
+ type: string
+ default: "us-west-2"
+ AWS_API_CREDENTIALS:
+ type: string
+ default: "aws-credentials"
+ AWS_SSH_KEY:
+ type: string
+ default: "jenkins-mk"
+
+ # heat
+ HEAT_STACK_ENVIRONMENT:
+ type: string
+ default: "devcloud"
+ HEAT_STACK_ZONE:
+ type: string
+ default: "mcp-mk"
+ HEAT_STACK_PUBLIC_NET:
+ type: string
+ default: "public"
+
+ # openstack api
+ OPENSTACK_API_URL:
+ type: string
+ default: "https://cloud-cz.bud.mirantis.net:5000"
+ OPENSTACK_API_CREDENTIALS:
+ type: string
+ default: "openstack-devcloud-credentials"
+ OPENSTACK_API_PROJECT:
+ type: string
+ default: "mcp-mk"
+ OPENSTACK_API_PROJECT_DOMAIN:
+ type: string
+ default: "default"
+ OPENSTACK_API_PROJECT_ID:
+ type: string
+ default: ""
+ OPENSTACK_API_USER_DOMAIN:
+ type: string
+ default: "default"
+
+ OPENSTACK_API_CLIENT:
+ type: string
+ default: ""
+ OPENSTACK_API_VERSION:
+ type: string
+ default: "3"
+
+ # test
+ TEST_K8S_API_SERVER:
+ type: string
+ default: "http://127.0.0.1:8080"
+ TEST_K8S_CONFORMANCE_IMAGE:
+ type: string
+ default: "docker-dev-virtual.docker.mirantis.net/mirantis/kubernetes/k8s-conformance:v1.5.1-3_1482332392819"
+
+ TEST_TEMPEST_IMAGE:
+ type: string
+ description: "Tempest docker image"
+ default: "sandbox-docker-prod-local.docker.mirantis.net/mirantis/rally_tempest:0.1"
+ TEST_TEMPEST_TARGET:
+ type: string
+ description: "Node to run tests"
+ default: ""
+ TEST_DOCKER_INSTALL:
+ type: boolean
+ description: "Install docker on the target if true"
+ default: "true"
+ TEST_TEMPEST_PATTERN:
+ type: string
+ description: "Run tests matched to pattern only"
+ default: ""
+