base_url = "{start_of_url}/noarch/{rpm_name}".format(
start_of_url=start_of_url, rpm_name=rpm_name)
if dist_release == 'opensuse':
- remote.run(args=['sudo', 'zypper', '-n', 'install', base_url])
+ remote.run(args=[
+ 'sudo', 'zypper', '-n', 'install', '--capability', rpm_name
+ ])
else:
remote.run(args=['sudo', 'yum', '-y', 'install', base_url])
if dist_release == 'opensuse':
pkg_mng_cmd = 'zypper'
pkg_mng_opts = '-n'
+ pkg_mng_subcommand_opts = '--capability'
else:
pkg_mng_cmd = 'yum'
pkg_mng_opts = '-y'
+ pkg_mng_subcommand_opts = ''
for cpack in rpm:
pkg = None
remote.run(
args = ['if', 'test', '-e',
run.Raw(pkg), run.Raw(';'), 'then',
- 'sudo', pkg_mng_cmd, pkg_mng_opts, 'remove', pkg, run.Raw(';'),
- 'sudo', pkg_mng_cmd, pkg_mng_opts, 'install', pkg,
- run.Raw(';'), 'fi']
+ 'sudo', pkg_mng_cmd, pkg_mng_opts, 'remove',
+ pkg_mng_subcommand_opts, pkg, run.Raw(';'),
+ 'sudo', pkg_mng_cmd, pkg_mng_opts, 'install',
+ pkg_mng_subcommand_opts, pkg, run.Raw(';'),
+ 'fi']
)
if pkg is None:
- remote.run(args=['sudo', pkg_mng_cmd, pkg_mng_opts, 'install', cpack])
+ remote.run(args=[
+ 'sudo', pkg_mng_cmd, pkg_mng_opts, 'install',
+ pkg_mng_subcommand_opts, cpack
+ ])
else:
remote.run(
args = ['if', 'test', run.Raw('!'), '-e',
run.Raw(pkg), run.Raw(';'), 'then',
- 'sudo', pkg_mng_cmd, pkg_mng_opts, 'install', cpack,
- run.Raw(';'), 'fi'])
+ 'sudo', pkg_mng_cmd, pkg_mng_opts, 'install',
+ pkg_mng_subcommand_opts, cpack, run.Raw(';'),
+ 'fi'])
def verify_package_version(ctx, config, remote):
if dist_release == 'opensuse':
pkg_mng_cmd = 'zypper'
pkg_mng_opts = '-n'
+ pkg_mng_subcommand_opts = '--capability'
else:
pkg_mng_cmd = 'yum'
pkg_mng_opts = '-y'
+ pkg_mng_subcommand_opts = ''
remote.run(
args=[
] + rpm + [
run.Raw(';'),
'do',
- 'sudo', pkg_mng_cmd, pkg_mng_opts, 'remove',
- run.Raw('$d'),
- run.Raw('||'),
- 'true',
- run.Raw(';'),
+ 'sudo',
+ pkg_mng_cmd, pkg_mng_opts, 'remove', pkg_mng_subcommand_opts,
+ run.Raw('$d'), run.Raw('||'), 'true', run.Raw(';'),
'done',
])
if dist_release == 'opensuse':
# Actually upgrade the project packages
if gitbuilder.dist_release == 'opensuse':
pkg_mng_opts = '-n'
+ pkg_mng_subcommand_opts = '--capability'
else:
pkg_mng_opts = '-y'
- args = ['sudo', pkg_mng_cmd, pkg_mng_opts, 'install']
+ pkg_mng_subcommand_opts = ''
+ args = ['sudo', pkg_mng_cmd, pkg_mng_opts, 'install', pkg_mng_subcommand_opts]
args += pkgs
remote.run(args=args)