Catch exception comparing role versions, and provide a user friendly error message. Fixes #32301 (#34427)

pull/34772/head
Matt Martz 7 years ago committed by GitHub
parent 96e5cce5ea
commit 42a0d71413
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -234,7 +234,14 @@ class GalaxyRole(object):
# of the master branch
if len(role_versions) > 0:
loose_versions = [LooseVersion(a.get('name', None)) for a in role_versions]
loose_versions.sort()
try:
loose_versions.sort()
except TypeError:
raise AnsibleError(
'Unable to compare role versions (%s) to determine the most recent version due to incompatible version formats. '
'Please contact the role author to resolve versioning conflicts, or specify an explicit role version to '
'install.' % ', '.join([v.vstring for v in loose_versions])
)
self.version = str(loose_versions[-1])
elif role_data.get('github_branch', None):
self.version = role_data['github_branch']

Loading…
Cancel
Save