diff --git a/cicd-lab-pipeline.groovy b/cicd-lab-pipeline.groovy
index fa48fa1..26c2818 100644
--- a/cicd-lab-pipeline.groovy
+++ b/cicd-lab-pipeline.groovy
@@ -62,8 +62,16 @@
             def openstackVersion = OPENSTACK_API_CLIENT ? OPENSTACK_API_CLIENT : 'liberty'
             def openstackEnv = "${env.WORKSPACE}/venv"
 
-            if (HEAT_STACK_NAME == '') {
-                HEAT_STACK_NAME = BUILD_TAG
+            if (HEAT_STACK_REUSE.toBoolean() == true && HEAT_STACK_NAME == '') {
+                error("If you want to reuse existing stack you need to provide it's name")
+            }
+
+            if (HEAT_STACK_REUSE.toBoolean() == false) {
+                // Don't allow to set custom heat stack name
+                wrap([$class: 'BuildUser']) {
+                    HEAT_STACK_NAME = "${env.BUILD_USER_ID}-${JOB_NAME}-${BUILD_NUMBER}"
+                    currentBuild.description = HEAT_STACK_NAME
+                }
             }
 
             //
@@ -83,7 +91,7 @@
                 openstack.getKeystoneToken(openstackCloud, openstackEnv)
             }
 
-            if (HEAT_STACK_REUSE == 'false') {
+            if (HEAT_STACK_REUSE.toBoolean() == false) {
                 stage('Launch new Heat stack') {
                     envParams = [
                         'instance_zone': HEAT_STACK_ZONE,
@@ -220,7 +228,8 @@
                 }
                 salt.enforceState(saltMaster, 'I@nginx:server', 'nginx')
 
-                print """============================================================
+                print """
+    ============================================================
     Your CI/CD lab has been deployed and you can enjoy it:
     Use sshuttle -r ubuntu@${saltMasterHost} 172.16.10.0/24
     to connect to your private subnet and visit services
@@ -240,7 +249,7 @@
             throw e
         } finally {
             // Cleanup
-            if (HEAT_STACK_DELETE == 'true') {
+            if (HEAT_STACK_DELETE.toBoolean() == true) {
                 stage('Trigger cleanup job') {
                     build job: 'deploy_heat_cleanup', parameters: [[$class: 'StringParameterValue', name: 'HEAT_STACK_NAME', value: HEAT_STACK_NAME]]
                 }
diff --git a/lab-pipeline.groovy b/lab-pipeline.groovy
index 7c570ef..f4a94c8 100644
--- a/lab-pipeline.groovy
+++ b/lab-pipeline.groovy
@@ -56,8 +56,16 @@
                     def openstackVersion = OPENSTACK_API_CLIENT ? OPENSTACK_API_CLIENT : 'liberty'
                     def openstackEnv = "${env.WORKSPACE}/venv"
 
-                    if (HEAT_STACK_NAME == '') {
-                        HEAT_STACK_NAME = BUILD_TAG
+                    if (HEAT_STACK_REUSE.toBoolean() == true && HEAT_STACK_NAME == '') {
+                        error("If you want to reuse existing stack you need to provide it's name")
+                    }
+
+                    if (HEAT_STACK_REUSE.toBoolean() == false) {
+                        // Don't allow to set custom heat stack name
+                        wrap([$class: 'BuildUser']) {
+                            HEAT_STACK_NAME = "${env.BUILD_USER_ID}-${JOB_NAME}-${BUILD_NUMBER}"
+                            currentBuild.description = HEAT_STACK_NAME
+                        }
                     }
 
                     // set description
@@ -72,7 +80,7 @@
                     openstack.getKeystoneToken(openstackCloud, openstackEnv)
 
                     // launch stack
-                    if (HEAT_STACK_REUSE == 'false') {
+                    if (HEAT_STACK_REUSE.toBoolean() == false) {
                         stage('Launch new Heat stack') {
                             // create stack
                             envParams = [
@@ -406,7 +414,7 @@
             // Clean
             //
 
-            if (HEAT_STACK_DELETE == 'true' && STACK_TYPE == 'heat') {
+            if (HEAT_STACK_DELETE.toBoolean() == true && STACK_TYPE == 'heat') {
                 stage('Trigger cleanup job') {
                     build job: 'deploy-heat-cleanup', parameters: [[$class: 'StringParameterValue', name: 'HEAT_STACK_NAME', value: HEAT_STACK_NAME]]
                 }
