Support for secured repositories
Added support for secured repositories implemented in 2019.2.7
Closes-Bug: PROD-34296
Change-Id: I3ef2c75aa1f2abfb0f0f66b28c8c9917a5dadac9
diff --git a/test_set/cvp-sanity/tests/test_repo_list.py b/test_set/cvp-sanity/tests/test_repo_list.py
index ef02b6e..17b5fd8 100644
--- a/test_set/cvp-sanity/tests/test_repo_list.py
+++ b/test_set/cvp-sanity/tests/test_repo_list.py
@@ -12,6 +12,18 @@
param='linux:system:repo',
expr_form='compound')
+ secure_info = local_salt_client.cmd(
+ tgt='L@' + ','.join(nodes), fun='pillar.get',
+ param='linux:system:common_repo_secured', expr_form='compound')
+
+ secured_repos, username, password = ([], None, None)
+
+ if isinstance(secure_info, dict) and len(secure_info) > 0:
+ info_tmp = secure_info.popitem()[1]
+ if isinstance(info_tmp, dict):
+ secured_repos, username, password = (info_tmp.get(key, [])
+ for key in ['secured_repos', 'user', 'password'])
+
# check if some repos are disabled
for node in list(info_salt.keys()):
repos = info_salt[node]
@@ -24,14 +36,20 @@
if "enabled" in repository:
if not repository["enabled"]:
repos.pop(repo)
+ if repo in secured_repos or ('all' in secured_repos and
+ repos[repo].get('secure', True)):
+ repos[repo]['source'] = repos[repo]['source'].replace(
+ '://', '://{}:{}@'.format(username, password))
raw_actual_info = local_salt_client.cmd(
tgt='L@' + ','.join(nodes),
param='cat /etc/apt/sources.list.d/*;'
'cat /etc/apt/sources.list|grep deb|grep -v "#"',
expr_form='compound', check_status=True)
- actual_repo_list = [item.replace('/ ', ' ').replace('[arch=amd64] ', '')
- for item in list(raw_actual_info.values())[0].split('\n')]
+ actual_repo_list = [
+ item.replace('/ ', ' ').replace('[arch=amd64] ', '')
+ for item in list(raw_actual_info.values())[0].split('\n')
+ ]
if list(info_salt.values())[0] == '':
expected_salt_data = ''
else: