From: Vladimir Khlyunev Date: Tue, 16 Apr 2019 12:37:56 +0000 (+0400) Subject: Add cloud switcher to all related jobs X-Git-Url: https://review.fuel-infra.org/gitweb?a=commitdiff_plain;h=3b189875332ab870c794c48cd6b6a296c9df9cbb;p=tools%2Fsustaining.git Add cloud switcher to all related jobs Change-Id: I984e527c121cdfd6106b43c81cfa3f3b3b9617d5 --- diff --git a/maintenance-ci/common/jobs/build-swarm-image.yaml b/maintenance-ci/common/jobs/build-swarm-image.yaml index 62b421f..45e8d21 100644 --- a/maintenance-ci/common/jobs/build-swarm-image.yaml +++ b/maintenance-ci/common/jobs/build-swarm-image.yaml @@ -51,5 +51,6 @@ timeout: 30 builders: + - openrc-source-file-selector - shell: !include-raw: common/scripts/prepare_build_upload_image.sh diff --git a/maintenance-ci/common/jobs/delete-stack.yaml b/maintenance-ci/common/jobs/delete-stack.yaml index 2a1e088..7e4e2b9 100644 --- a/maintenance-ci/common/jobs/delete-stack.yaml +++ b/maintenance-ci/common/jobs/delete-stack.yaml @@ -7,6 +7,7 @@ node: 'jenkins-master' parameters: + - openstack-cloud-selector - string: name: STACK_NAME default: "" @@ -29,5 +30,6 @@ timeout: 30 builders: + - openrc-source-file-selector - shell: !include-raw: common/scripts/delete_heat_stack.sh diff --git a/maintenance-ci/common/jobs/deploy-jenkins-swarm.yaml b/maintenance-ci/common/jobs/deploy-jenkins-swarm.yaml index a4c4984..8bb6b55 100644 --- a/maintenance-ci/common/jobs/deploy-jenkins-swarm.yaml +++ b/maintenance-ci/common/jobs/deploy-jenkins-swarm.yaml @@ -38,6 +38,7 @@ to: $CUSTOM_FLAVOR_NODE_COUNT step: 1 predefined-parameters: | + OPENSTACK_ENVIRONMENT=${OPENSTACK_ENVIRONMENT} HEAT_STACK_YAML=${CUSTOM_HEAT_STACK_YAML} STACK_PREFIX=${STACK_PREFIX} FLAVOR_NAME=${CUSTOM_FLAVOR_NAME} @@ -59,6 +60,7 @@ to: $MOS_TEMPEST_NODE_COUNT step: 1 predefined-parameters: | + OPENSTACK_ENVIRONMENT=${OPENSTACK_ENVIRONMENT} HEAT_STACK_YAML=${HEAT_STACK_YAML} STACK_PREFIX=${STACK_PREFIX} FLAVOR_NAME=mos.tempest @@ -79,6 +81,7 @@ to: $MOS_HUGE_NODE_COUNT step: 1 predefined-parameters: | + OPENSTACK_ENVIRONMENT=${OPENSTACK_ENVIRONMENT} HEAT_STACK_YAML=${HEAT_STACK_YAML} STACK_PREFIX=${STACK_PREFIX} FLAVOR_NAME=mos.fuel.huge @@ -99,6 +102,7 @@ to: $MOS_BASE_NODE_COUNT step: 1 predefined-parameters: | + OPENSTACK_ENVIRONMENT=${OPENSTACK_ENVIRONMENT} HEAT_STACK_YAML=${HEAT_STACK_YAML} STACK_PREFIX=${STACK_PREFIX} FLAVOR_NAME=mos.fuel.base diff --git a/maintenance-ci/common/jobs/deploy-stack.yaml b/maintenance-ci/common/jobs/deploy-stack.yaml index c2eb3f0..052d8fc 100644 --- a/maintenance-ci/common/jobs/deploy-stack.yaml +++ b/maintenance-ci/common/jobs/deploy-stack.yaml @@ -7,6 +7,7 @@ node: 'jenkins-master' parameters: + - openstack-cloud-selector - choice: name: HEAT_STACK_YAML choices: @@ -50,6 +51,7 @@ builders: - gerrit-review-last-refspec + - openrc-source-file-selector - shell: !include-raw: common/scripts/deploy_heat_stack.sh diff --git a/maintenance-ci/common/jobs/drop-create-failed.yaml b/maintenance-ci/common/jobs/drop-create-failed.yaml index c1f2a0e..7ee19df 100644 --- a/maintenance-ci/common/jobs/drop-create-failed.yaml +++ b/maintenance-ci/common/jobs/drop-create-failed.yaml @@ -7,11 +7,7 @@ node: 'jenkins-master' parameters: - - bool: - name: ARE_YOU_SURE - default: false - description: | - Just stub for missclick protection + - openstack-cloud-selector wrappers: - timestamps @@ -21,5 +17,6 @@ timeout: 30 builders: + - openrc-source-file-selector - shell: !include-raw: common/scripts/drop_create_failed.sh diff --git a/maintenance-ci/common/jobs/multijob-build-image.yaml b/maintenance-ci/common/jobs/multijob-build-image.yaml index 819875a..c23d092 100644 --- a/maintenance-ci/common/jobs/multijob-build-image.yaml +++ b/maintenance-ci/common/jobs/multijob-build-image.yaml @@ -6,6 +6,7 @@ concurrent: false node: 'jenkins-master' parameters: + - openstack-cloud-selector - string: name: BUILD_IMAGE_NAME description: "Name of image to build - used for glance" @@ -34,6 +35,7 @@ - trigger-builds: - project: "deploy-heat-stack" predefined-parameters: | + OPENSTACK_ENVIRONMENT=${OPENSTACK_ENVIRONMENT} HEAT_STACK_YAML=maintenance-ci/common/data/jenkins-slave.yml STACK_PREFIX=image-builder FLAVOR_NAME=dev.cmn @@ -53,6 +55,7 @@ - trigger-builds: - project: "delete-heat-stack" predefined-parameters: | + OPENSTACK_ENVIRONMENT=${OPENSTACK_ENVIRONMENT} STACK_PREFIX=image-builder block: true diff --git a/maintenance-ci/common/jobs/promote_staging_image.yaml b/maintenance-ci/common/jobs/promote_staging_image.yaml index 7a5a028..75bc408 100644 --- a/maintenance-ci/common/jobs/promote_staging_image.yaml +++ b/maintenance-ci/common/jobs/promote_staging_image.yaml @@ -6,6 +6,7 @@ node: 'jenkins-master' parameters: + - openstack-cloud-selector - string: name: IMAGE_NAME description: "Name of image WITHOUT 'staging' - used for glance" @@ -31,5 +32,6 @@ timeout: 30 builders: + - openrc-source-file-selector - shell: !include-raw: common/scripts/promote_staging_image.sh diff --git a/maintenance-ci/common/macroses/cloud-selector-macro-set.yaml b/maintenance-ci/common/macroses/cloud-selector-macro-set.yaml new file mode 100644 index 0000000..8b64d11 --- /dev/null +++ b/maintenance-ci/common/macroses/cloud-selector-macro-set.yaml @@ -0,0 +1,46 @@ +- parameter: + name: openstack-cloud-selector + parameters: + - choice: + name: OPENSTACK_ENVIRONMENT + choices: + - US + - EU + +- wrapper: + name: openstack-creds + wrappers: + - credentials-binding: + - file: + credential-id: maintenance-ci-openrc-password-free + variable: OPENRC_FILE + - file: + credential-id: maintenance-team-openrc-eu-robot-no-password + variable: EU_OPENRC_FILE + - file: + credential-id: maintenance-team-openrc-us-robot-no-password + variable: US_OPENRC_FILE + - username-password-separated: + credential-id: maintenance-ci-robot-password + username: OS_USERNAME + password: OS_PASSWORD + +- builder: + name: openrc-source-file-selector + builders: + - conditional-step: + condition-kind: strings-match + condition-string1: $OPENSTACK_ENVIRONMENT + condition-string2: EU + condition-case-insensitive: true + steps: + - inject: + properties-file: ${EU_OPENRC_FILE} + - conditional-step: + condition-kind: strings-match + condition-string1: $OPENSTACK_ENVIRONMENT + condition-string2: US + condition-case-insensitive: true + steps: + - inject: + properties-file: ${US_OPENRC_FILE} diff --git a/maintenance-ci/common/macroses/mos-jenkins-swarm-params.yaml b/maintenance-ci/common/macroses/mos-jenkins-swarm-params.yaml index c7f7324..e99b532 100644 --- a/maintenance-ci/common/macroses/mos-jenkins-swarm-params.yaml +++ b/maintenance-ci/common/macroses/mos-jenkins-swarm-params.yaml @@ -2,6 +2,7 @@ name: mos-jenkins-swarm-params parameters: + - openstack-cloud-selector - string: name: HEAT_STACK_YAML description: "Stack yaml file" diff --git a/maintenance-ci/common/macroses/openstack_creds.yaml b/maintenance-ci/common/macroses/openstack_creds.yaml deleted file mode 100644 index 2991fa6..0000000 --- a/maintenance-ci/common/macroses/openstack_creds.yaml +++ /dev/null @@ -1,11 +0,0 @@ -- wrapper: - name: openstack-creds - wrappers: - - credentials-binding: - - file: - credential-id: maintenance-ci-openrc-password-free - variable: OPENRC_FILE - - username-password-separated: - credential-id: maintenance-ci-robot-password - username: OS_USERNAME - password: OS_PASSWORD \ No newline at end of file diff --git a/maintenance-ci/common/scripts/delete_heat_stack.sh b/maintenance-ci/common/scripts/delete_heat_stack.sh index 2386b73..fcf31cd 100755 --- a/maintenance-ci/common/scripts/delete_heat_stack.sh +++ b/maintenance-ci/common/scripts/delete_heat_stack.sh @@ -14,7 +14,7 @@ fi function delete_stack() { if [[ -z "${VIRTUAL_ENV}" ]]; then source "${OPENSTACK_CLIENTS_VENV}"/bin/activate - source "${OPENRC_FILE?}" + echo "Using ${OS_AUTH_URL?} endpoint" fi set +e eval $(openstack stack output show $1 floating_ip -f shell) @@ -25,7 +25,7 @@ function delete_stack() { } source "${OPENSTACK_CLIENTS_VENV}"/bin/activate - source "${OPENRC_FILE?}" + echo "Using ${OS_AUTH_URL?} endpoint" if [[ ! -z "${STACK_NAME}" ]] ; then delete_stack ${STACK_NAME} diff --git a/maintenance-ci/common/scripts/deploy_heat_stack.sh b/maintenance-ci/common/scripts/deploy_heat_stack.sh index cb75943..6ed97d9 100755 --- a/maintenance-ci/common/scripts/deploy_heat_stack.sh +++ b/maintenance-ci/common/scripts/deploy_heat_stack.sh @@ -35,7 +35,7 @@ STACK_NAME="${STACK_PREFIX:-swarm_slave}-$(head -c 100 /dev/urandom | "${md5_cmd set +x source "${OPENSTACK_CLIENTS_VENV}"/bin/activate set -x - source "${OPENRC_FILE?}" + echo "Using ${OS_AUTH_URL?} endpoint" openstack stack create --wait -t ${HEAT_STACK_YAML} --parameter "${parameter_string}" ${STACK_NAME} openstack stack output show "${STACK_NAME}" --all cat >stack_data.sh <