From 8112552d106edd45ee63dba5f44e320259cdec18 Mon Sep 17 00:00:00 2001 From: Pavel Raiskup Date: Tue, 18 Jan 2022 10:52:59 +0100 Subject: [PATCH] copr-builders: more insistent s390x removal --- .../templates/resalloc/ibm-cloud-vm.j2 | 32 ++++++++++--------- 1 file changed, 17 insertions(+), 15 deletions(-) diff --git a/roles/copr/backend/templates/resalloc/ibm-cloud-vm.j2 b/roles/copr/backend/templates/resalloc/ibm-cloud-vm.j2 index 35da4330b1..078e4ff5c6 100755 --- a/roles/copr/backend/templates/resalloc/ibm-cloud-vm.j2 +++ b/roles/copr/backend/templates/resalloc/ibm-cloud-vm.j2 @@ -99,7 +99,7 @@ def allocate_and_assign_ip(service, opts): } data = { - "name": "copr-floating-ip-" + opts.instance_name, + "name": opts.instance_name, "target": { "id": opts.instance_created["primary_network_interface"]["id"], }, @@ -195,13 +195,7 @@ def create_instance(service, instance_name, opts): except: if instance_created: log.info("Removing the failed machine") - try: - delete_instance(service, instance_name, opts) - except Exception as err: - log.error(err) - if opts.allocated_floating_ip_id: - log.info("Removing the allocated Floating IP") - service.delete_floating_ip(opts.allocated_floating_ip_id) + delete_instance(service, instance_name, opts) raise @@ -218,7 +212,20 @@ def delete_all_ips(service, opts): def delete_instance(service, instance_name, opts): - """ Delete instance by it's name """ + """ + Repeatedly try to remove the instance, to minimize the chances for + leftovers. + """ + for _ in range(5): + try: + delete_instance_attempt(service, instance_name, opts) + break + except: + pass + + +def delete_instance_attempt(service, instance_name, opts): + """ one attempt to delete instance by it's name """ log = opts.log log.info("Deleting instance %s", instance_name) @@ -340,12 +347,7 @@ def _main(): # detect_floating_ip_name(opts) create_instance(service, name, opts) elif opts.subparser == "delete": - for _ in range(3): - try: - delete_instance(service, name, opts) - break - except: - continue + delete_instance(service, name, opts) elif opts.subparser == "delete-free-floating-ips": delete_all_ips(service, opts)