tests: OpenStack - apply tags and delete by tags

- for keys use Composer-Test-Key prefix (for consistency)
- for images and VMs use Composer-Test prefix
- delete VMs both by searching by tags & by name in case we
  manually create them without tags
This commit is contained in:
Alexander Todorov 2019-12-20 12:38:28 +02:00 committed by Alexander Todorov
parent 354c909b9b
commit ad54403c6d
2 changed files with 19 additions and 10 deletions

View File

@ -60,12 +60,21 @@ rlJournalStart
debug: debug:
var: openstack_servers var: openstack_servers
- name: Delete old VMs - name: Delete old VMs by tag
os_server: os_server:
name: "{{item.id}}" name: "{{item.id}}"
state: absent state: absent
loop: "{{openstack_servers}}" loop: "{{openstack_servers}}"
when: item.created < lookup('env','TIMESTAMP') and (item.metadata.Tag is not defined or item.metadata.Tag != "keep_me") when: item.created < lookup('env','TIMESTAMP') and (item.metadata.Tag is defined and item.metadata.Tag == "composer-test")
loop_control:
label: "{{item.name}} (id: {{item.id}} created: {{item.created}} metadata: {{item.metadata}})"
- name: Delete old VMs by name
os_server:
name: "{{item.id}}"
state: absent
loop: "{{openstack_servers}}"
when: item.created < lookup('env','TIMESTAMP') and (item.name | regex_search('Composer-Test'))
loop_control: loop_control:
label: "{{item.name}} (id: {{item.id}} created: {{item.created}} metadata: {{item.metadata}})" label: "{{item.name}} (id: {{item.id}} created: {{item.created}} metadata: {{item.metadata}})"
__EOF__ __EOF__
@ -92,7 +101,7 @@ __EOF__
id: "{{item.id}}" id: "{{item.id}}"
state: absent state: absent
loop: "{{openstack_image}}" loop: "{{openstack_image}}"
when: (item.created_at < lookup('env','TIMESTAMP')) and (item.name | regex_search('Composer-[a-f0-9-]{36}-Automated-Import')) when: (item.created_at < lookup('env','TIMESTAMP')) and (item.name | regex_search('Composer-Test'))
loop_control: loop_control:
label: "{{item.name}} (id: {{item.id}} created: {{item.created_at}})" label: "{{item.name}} (id: {{item.id}} created: {{item.created_at}})"
__EOF__ __EOF__
@ -131,4 +140,3 @@ __EOF__
rlJournalEnd rlJournalEnd
rlJournalPrintText rlJournalPrintText

View File

@ -82,8 +82,9 @@ __EOF__
rlPhaseStartTest "Upload QCOW2 image to OpenStack" rlPhaseStartTest "Upload QCOW2 image to OpenStack"
rlRun -t -c "$CLI compose image $UUID" rlRun -t -c "$CLI compose image $UUID"
IMAGE="$UUID-disk.qcow2" rlRun -t -c "mv $UUID-disk.qcow2 Composer-Test-$UUID-disk.qcow2"
OS_IMAGE_NAME="Composer-$UUID-Automated-Import" IMAGE="Composer-Test-$UUID-disk.qcow2"
OS_IMAGE_NAME="Composer-Test-$UUID"
response=`ansible localhost -m os_image -a "name=$OS_IMAGE_NAME filename=$IMAGE is_public=no"` response=`ansible localhost -m os_image -a "name=$OS_IMAGE_NAME filename=$IMAGE is_public=no"`
rlAssert0 "Image upload successfull" $? rlAssert0 "Image upload successfull" $?
@ -94,13 +95,13 @@ __EOF__
rlPhaseEnd rlPhaseEnd
rlPhaseStartTest "Start VM instance" rlPhaseStartTest "Start VM instance"
VM_NAME="Composer-Auto-VM-$UUID" VM_NAME="Composer-Test-VM-$UUID"
SSH_KEY_DIR=`mktemp -d /tmp/composer-ssh-keys.XXXXXX` SSH_KEY_DIR=`mktemp -d /tmp/composer-ssh-keys.XXXXXX`
rlRun -t -c "ssh-keygen -t rsa -N '' -f $SSH_KEY_DIR/id_rsa" rlRun -t -c "ssh-keygen -t rsa -N '' -f $SSH_KEY_DIR/id_rsa"
rlRun -t -c "ansible localhost -m os_keypair -a 'name=$VM_NAME-key public_key_file=$SSH_KEY_DIR/id_rsa.pub'" rlRun -t -c "ansible localhost -m os_keypair -a \"name=Composer-Test-Key-$UUID public_key_file=$SSH_KEY_DIR/id_rsa.pub\""
response=`ansible localhost -m os_server -a "name=$VM_NAME image=$OS_IMAGE_UUID network=provider_net_cci_2 flavor=ci.m1.medium.ephemeral key_name=$VM_NAME-key auto_ip=yes"` response=`ansible localhost -m os_server -a "name=$VM_NAME image=$OS_IMAGE_UUID network=provider_net_cci_2 flavor=ci.m1.medium.ephemeral key_name=Composer-Test-Key-$UUID auto_ip=yes meta='composer-test=true'"`
rlAssert0 "VM started successfully" $? rlAssert0 "VM started successfully" $?
rlLogInfo "$response" rlLogInfo "$response"
@ -123,7 +124,7 @@ __EOF__
rlPhaseEnd rlPhaseEnd
rlPhaseStartCleanup rlPhaseStartCleanup
rlRun -t -c "ansible localhost -m os_keypair -a 'name=$VM_NAME-key state=absent'" rlRun -t -c "ansible localhost -m os_keypair -a 'name=Composer-Test-Key-$UUID state=absent'"
rlRun -t -c "ansible localhost -m os_server -a 'name=$VM_NAME state=absent'" rlRun -t -c "ansible localhost -m os_server -a 'name=$VM_NAME state=absent'"
rlRun -t -c "ansible localhost -m os_image -a 'name=$OS_IMAGE_NAME state=absent'" rlRun -t -c "ansible localhost -m os_image -a 'name=$OS_IMAGE_NAME state=absent'"
rlRun -t -c "$CLI compose delete $UUID" rlRun -t -c "$CLI compose delete $UUID"