ceph/teuthology/task/thrashosds.py

37 lines
778 B
Python
Raw Normal View History

import contextlib
import logging
import ceph_manager
log = logging.getLogger(__name__)
@contextlib.contextmanager
def task(ctx, config):
"""
Run thrashosds
There is no configuration, all commands are run on mon0 and it stops when
__exit__ is called.
example:
tasks:
- ceph:
- thrashosds:
- interactive:
"""
log.info('Beginning thrashosds...')
(mon,) = ctx.cluster.only('mon.0').remotes.iterkeys()
manager = ceph_manager.CephManager(
mon,
logger = log.getChild('ceph_manager'),
)
thrash_proc = ceph_manager.Thrasher(
manager,
logger = log.getChild('thrasher'),
)
try:
yield
finally:
log.info('joining thrashosds')
thrash_proc.do_join()