Distro version to run against
--suite-repo <suite_repo> Use tasks and suite definition in this repository
[default: {default_suite_repo}]
+ --suite-relpath <suite_relpath>
+ Look for tasks and suite definitions in this
+ subdirectory of the suite repo.
--suite-branch <suite_branch>
Use this suite branch instead of the ceph branch
--suite-dir <suite_dir> Use this alternative directory as-is when
key = rename_args.get(key) or key
if key == 'suite' and value is not None:
value = normalize_suite_name(value)
+ if key == 'suite_relpath' and value is None:
+ value = ''
elif key in ('limit', 'priority', 'num', 'newest'):
value = int(value)
elif key == 'subset' and value is not None:
},
'suite': Placeholder('suite'),
'suite_repo': Placeholder('suite_repo'),
+ 'suite_relpath': Placeholder('suite_relpath'),
'suite_branch': Placeholder('suite_branch'),
'suite_sha1': Placeholder('suite_hash'),
'tasks': [],
archive_upload=config.archive_upload,
archive_upload_key=config.archive_upload_key,
suite_repo=config.get_ceph_qa_suite_git_url(),
+ suite_relpath=self.args.suite_relpath,
)
return self.build_base_config()
name = self.name
arch = util.get_arch(self.base_config.machine_type)
suite_name = self.base_config.suite
- suite_path = os.path.join(
- self.suite_repo_path, 'suites',
- self.base_config.suite.replace(':', '/'))
+ suite_path = os.path.normpath(os.path.join(
+ self.suite_repo_path,
+ self.args.suite_relpath,
+ 'suites',
+ self.base_config.suite.replace(':', '/'),
+ ))
log.debug('Suite %s in %s' % (suite_name, suite_path))
configs = [
(combine_path(suite_name, item[0]), item[1]) for item in
archive_upload='archive_upload',
archive_upload_key='archive_upload_key',
suite_repo='https://example.com/ceph/suite.git',
+ suite_relpath='',
)
output_dict = substitute_placeholders(dict_templ, input_dict)
assert output_dict['suite'] == 'suite'
distro=None,
distro_version=None,
suite_repo='https://example.com/ceph/suite.git',
+ suite_relpath='',
)
output_dict = substitute_placeholders(dict_templ, input_dict)
assert 'os_type' not in output_dict
self.args_dict = dict(
suite='suite',
suite_branch='suite_branch',
+ suite_relpath='',
ceph_branch='ceph_branch',
ceph_sha1='ceph_sha1',
email='address@example.com',
def setup(self):
self.args_dict = dict(
suite='suite',
+ suite_relpath='',
suite_dir='suite_dir',
suite_branch='master',
ceph_branch='ceph_branch',