Stack name now contains username
Change-Id: I9dfa13f7a00a975eb55c13c922e30834154420db
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]]
}