Moved Jenkins pipeline from project-config

Change-Id: I51b5c7aab3d108cfb398d8b93fd80c6a609050a1
diff --git a/.gitreview b/.gitreview
index 9e1025e..9075ea3 100644
--- a/.gitreview
+++ b/.gitreview
@@ -1,4 +1,4 @@
 [gerrit]
-host=mcp-ci-gerrit
+host=gerrit.mcp.mirantis.net
 port=29418
 project=mk/mk-pipelines.git
diff --git a/mk-kubernetes-deploy-pipeline.groovy b/mk-kubernetes-deploy-pipeline.groovy
new file mode 100644
index 0000000..8777968
--- /dev/null
+++ b/mk-kubernetes-deploy-pipeline.groovy
@@ -0,0 +1,79 @@
+/**
+ *
+ * Launch heat stack with MCP lab
+ *
+ * Expected parameters:
+ *   HEAT_TEMPLATE_URL          URL to git repo with Heat templates
+ *   HEAT_TEMPLATE_CREDENTIALS  Credentials to the Heat templates repo
+ *   HEAT_TEMPLATE_BRANCH       Heat templates repo branch
+ *   OPENSTACK_API_URL          OpenStack API address
+ *   OPENSTACK_API_CREDENTIALS  Credentials to the OpenStack API
+ *   OPENSTACK_API_PROJECT      OpenStack project to connect to
+ *   OPENSTACK_API_CLIENT       Versions of OpenStack python clients
+ *   OPENSTACK_API_VERSION      Version of the OpenStack API (2/3)
+ *   SALT_MASTER_CREDENTIALS    Credentials to the Salt API
+ *   HEAT_STACK_NAME            Heat stack name
+ *   HEAT_STACK_TEMPLATE        Heat stack HOT template
+ *   HEAT_STACK_ENVIRONMENT     Heat stack environmental parameters
+ *   HEAT_STACK_ZONE            Heat stack availability zone
+ *   HEAT_STACK_PUBLIC_NET      Heat stack floating IP pool
+ */
+
+git = new com.mirantis.mk.git()
+openstack = new com.mirantis.mk.openstack()
+salt = new com.mirantis.mk.salt()
+
+node {
+
+    // connection objects
+    def openstackCloud
+    def saltMaster
+
+    // value defaults
+    def openstackVersion = OPENSTACK_API_CLIENT ? OPENSTACK_API_CLIENT : "liberty"
+    def openstackEnv = "${env.WORKSPACE}/venv"
+
+    stage ('Download Heat templates') {
+        git.checkoutGitRepository('template', HEAT_TEMPLATE_URL, HEAT_TEMPLATE_BRANCH, HEAT_TEMPLATE_CREDENTIALS)
+    }
+
+    stage('Install OpenStack env') {
+        openstack.setupOpenstackVirtualenv(openstackEnv, openstackVersion)
+    }
+
+    stage('Connect to OpenStack cloud') {
+        openstackCloud = openstack.createOpenstackEnv(OPENSTACK_API_URL, OPENSTACK_API_CREDENTIALS, OPENSTACK_API_PROJECT)
+        openstack.getKeystoneToken(openstackCloud, openstackEnv)
+    }
+
+    stage('Launch new Heat stack') {
+        envParams = [
+            'availability_zone': HEAT_STACK_ZONE,
+            'public_net': HEAT_STACK_PUBLIC_NET
+        ]
+        openstack.createHeatStack(openstackCloud, HEAT_STACK_NAME, HEAT_STACK_TEMPLATE, envParams, HEAT_STACK_ENVIRONMENT, openstackEnv)
+    }
+
+    stage("Connect to Salt master") {
+        saltMasterHost = openstack.getHeatStackOutputParam(openstackCloud, HEAT_STACK_NAME, 'salt_master_ip', openstackEnv)
+        saltMasterUrl = "http://${saltMasterHost}:8000"
+        saltMaster = salt.createSaltConnection(saltMasterUrl, SALT_MASTER_CREDENTIALS)
+    }
+
+    stage("Install core infra") {
+        salt.runSaltProcess(saltMaster, 'install_foundation_infra')
+    }
+
+    stage("Install Kubernetes cluster") {
+        salt.runSaltProcess(saltMaster, 'install_kubernetes_infra')
+    }
+
+    stage("Run tests on Kubernetes cluster") {
+    //    salt.runSaltProcess(saltMaster, 'install_mk_compute')
+    }
+
+    //stage('Delete Heat stack') {
+    //    openstack.deleteHeatStack(openstackCloud, HEAT_STACK_NAME, openstackEnv)
+    //}
+
+}