help=("Use tasks and suite definition in this repository"),
default=os.getenv('TEUTH_SUITE_REPO', 'https://github.com/ceph/ceph'),
)
+ parser.add_argument(
+ '--sleep-before-teardown',
+ help='Number of seconds to sleep before tearing down the target VMs',
+ default=0
+ )
return parser
def get_openstack_parser():
--validate-sha1 <bool>
Validate that git SHA1s passed to -S exist.
[default: true]
+ --sleep-before-teardown <seconds>
+ Number of seconds to sleep before tearing down
+ the test cluster(s). Use with care, as this
+ applies to all jobs in the run.
+ [default: 0]
Scheduler arguments:
--owner <owner> Job owner
'size': 1,
},
},
+ 'sleep_before_teardown': 0,
}
def __init__(self, yaml_path=None):
import logging
import os
import sys
+import time
import types
from copy import deepcopy
finally:
try:
exc_info = sys.exc_info()
+ sleep_before_teardown = ctx.config.get('sleep_before_teardown')
+ if sleep_before_teardown:
+ log.info(
+ 'Sleeping for {} seconds before unwinding because'
+ ' --sleep-before-teardown was given...'
+ .format(sleep_before_teardown))
+ time.sleep(sleep_before_teardown)
while stack:
taskname, manager = stack.pop()
log.debug('Unwinding manager %s', taskname)
}
},
'repo': Placeholder('ceph_repo'),
+ 'sleep_before_teardown': 0,
'suite': Placeholder('suite'),
'suite_repo': Placeholder('suite_repo'),
'suite_relpath': Placeholder('suite_relpath'),
job_config.email = self.args.email
if self.args.owner:
job_config.owner = self.args.owner
+ if self.args.sleep_before_teardown:
+ job_config.sleep_before_teardown = int(self.args.sleep_before_teardown)
return job_config
def build_base_args(self):