Skip to content

Commit d541a41

Browse files
committed
speed up CIRCLE-CI cleanup
1 parent 0bd20bc commit d541a41

File tree

1 file changed

+14
-5
lines changed

1 file changed

+14
-5
lines changed

test/test_integration/test_integration_test.py

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
from __future__ import absolute_import
55
import os
66
import pytest
7+
import multiprocessing
78

89
from upcloud_api import CloudManager
910

@@ -30,17 +31,25 @@
3031
CREATED_SERVERS = []
3132
CREATED_TAGS = []
3233

34+
35+
def destroy_server(server):
36+
"""Destroy a server and it's storages."""
37+
server.stop_and_destroy()
38+
39+
def delete_tag(tag):
40+
"""Destroy a tag (only works if the tag is not in use)."""
41+
tag.destroy()
42+
43+
3344
@integration_test
3445
def teardown_module(module):
3546
manager = CloudManager(USERNAME, PASSWORD, timeout=120)
3647

3748
# if we are at CIRCLECI, clean up everything
3849
if os.environ.get('CIRCLECI', False):
39-
for server in manager.get_servers():
40-
server.stop_and_destroy()
41-
42-
for tag in manager.get_tags():
43-
tag.destroy()
50+
pool = multiprocessing.Pool()
51+
pool.map(destroy_server, manager.get_servers())
52+
pool.map(delete_tag, manager.get_tags())
4453
else:
4554
print('removing {}'.format(CREATED_SERVERS))
4655
for server in CREATED_SERVERS:

0 commit comments

Comments
 (0)