8 from teuthology.orchestra import run
10 log = logging.getLogger(__name__)
13 @contextlib.contextmanager
14 def task(ctx, config):
18 The config should be as follows:
21 clients: [client list]
31 log.info('Beginning test_stress_watch...')
32 assert isinstance(config, dict), \
33 "please list clients to run on"
38 for role in config.get('clients', ['client.0']):
39 assert isinstance(role, basestring)
41 assert role.startswith(PREFIX)
42 id_ = role[len(PREFIX):]
43 (remote,) = ctx.cluster.only(role).remotes.iterkeys()
44 remotes.append(remote)
46 args =['CEPH_CLIENT_ID={id_}'.format(id_=id_),
47 'CEPH_ARGS="{flags}"'.format(flags=config.get('flags', '')),
50 'multi_stress_watch foo foo'
53 log.info("args are %s" % (args,))
55 proc = proc_thrasher.ProcThrasher({}, remote,
56 args=[run.Raw(i) for i in args],
57 logger=log.getChild('testwatch.{id}'.format(id=id_)),
67 log.info('joining watch_notify_stress')
68 for i in testwatch.itervalues():