from tasks.scrub import Scrubber
from tasks.util.rados import cmd_erasure_code_profile
from tasks.util import get_remote
+
from teuthology.contextutil import safe_while
from teuthology.orchestra.remote import Remote
from teuthology.orchestra import run
self.rook = rook
self.cephadm = cephadm
self.testdir = teuthology.get_testdir(self.ctx)
- self.run_cluster_cmd_prefix = [
- 'sudo', 'adjust-ulimits', 'ceph-coverage',
- f'{self.testdir}/archive/coverage', 'timeout', '120', 'ceph',
- '--cluster', self.cluster]
+ # prefix args for ceph cmds to be executed
+ pre = ['adjust-ulimits', 'ceph-coverage',
+ f'{self.testdir}/archive/coverage']
+ self.CEPH_CMD = ['sudo'] + pre + ['timeout', '120', 'ceph',
+ '--cluster', self.cluster]
+ self.RADOS_CMD = pre + ['rados', '--cluster', self.cluster]
self.run_ceph_w_prefix = ['sudo', 'daemon-helper', 'kill', 'ceph',
'--cluster', self.cluster]
stdout=StringIO(),
check_status=kwargs.get('check_status', True))
- kwargs['args'] = self.run_cluster_cmd_prefix + kwargs['args']
+ kwargs['args'] = self.CEPH_CMD + kwargs['args']
return self.controller.run(**kwargs)
def raw_cluster_cmd(self, *args, **kwargs) -> str:
if remote is None:
remote = self.controller
- pre = [
- 'adjust-ulimits',
- 'ceph-coverage',
- f'{self.testdir}/archive/coverage',
- 'rados',
- '--cluster',
- self.cluster,
- ]
+ pre = self.RADOS_CMD + [] # deep-copying!
if pool is not None:
pre += ['--pool', pool]
if namespace is not None:
SRC_PREFIX = "./"
CEPH_CMD = os.path.join(BIN_PREFIX, 'ceph')
+RADOS_CMD = os.path.join(BIN_PREFIX, 'rados')
def rm_nonascii_chars(var):
self.rook = False
self.testdir = None
self.run_ceph_w_prefix = self.run_cluster_cmd_prefix = [CEPH_CMD]
+ self.CEPH_CMD = [CEPH_CMD]
+ self.RADOS_CMD = [RADOS_CMD]
def find_remote(self, daemon_type, daemon_id):
"""