diff --git a/plugins/module_utils/sdkmanager.py b/plugins/module_utils/sdkmanager.py index 50bf22e234..16131881ce 100644 --- a/plugins/module_utils/sdkmanager.py +++ b/plugins/module_utils/sdkmanager.py @@ -24,33 +24,22 @@ def sdkmanager_runner(module, **kwargs): class Package: - def __init__(self, name, version, description=''): + def __init__(self, name): self.name = name - self.version = version - self.description = description - - def __str__(self): - return "%s;%s (%s)" % (self.name, self.version, self.description) def __hash__(self): - return hash((self.name, self.version)) + return hash(self.name) def __ne__(self, other): if not isinstance(other, Package): return True - return self.name != other.name or self.version != other + return self.name != other.name def __eq__(self, other): if not isinstance(other, Package): return False - return self.name == other.name and self.version == other.version - - def get_formatted(self): - if self.version is None: - return self.name - else: - return "%s;%s" % (self.name, self.version) + return self.name == other.name class AndroidSdkManager(object): @@ -59,13 +48,6 @@ class AndroidSdkManager(object): re.compile(r'^\s+(?P\S+)\s+\|\s+(?P\S+)\s+\|\s(?P.+)\s\|\s+(\S+)$') ) - @staticmethod - def package_split(package): - parts = package.split(';', maxsplit=1) - if len(parts) > 1: - return parts - return parts[0], None - def __init__(self, runner): self.runner = runner @@ -87,8 +69,7 @@ class AndroidSdkManager(object): else: p = self._RE_INSTALLED_PACKAGES.search(line) if p: - name = AndroidSdkManager.package_split(p.group('name'))[0] - package = Package(name, p.group('version'), p.group('description')) + package = Package(p.group('name')) packages.add(package) i += 1 return packages @@ -102,7 +83,7 @@ class AndroidSdkManager(object): def apply_packages_changes(self, packages, state): if len(packages) == 0: return - command_arg = [x.get_formatted() for x in packages] + command_arg = [x.name for x in packages] # ValueError: ['build-tools;34.0.0', 'build-tools;35.0.0'] # raise ValueError(command_arg) with self.runner('state name') as ctx: diff --git a/plugins/modules/android_sdk.py b/plugins/modules/android_sdk.py index 9c136e929f..ddf6e537c9 100644 --- a/plugins/modules/android_sdk.py +++ b/plugins/modules/android_sdk.py @@ -14,13 +14,6 @@ class AndroidSdk(StateModuleHelper): use_old_vardict = False output_params = ('installed', 'removed') - @staticmethod - def arg_package_split(package): - parts = package.split('=', maxsplit=1) - if len(parts) > 1: - return parts - return parts[0], None - def __init_module__(self): self.sdkmanager = AndroidSdkManager(sdkmanager_runner(self.module)) @@ -28,8 +21,7 @@ class AndroidSdk(StateModuleHelper): arg_pkgs = self.vars.package packages = set() for arg_pkg in arg_pkgs: - pkg, version = AndroidSdk.arg_package_split(arg_pkg) - package = Package(pkg, version) + package = Package(arg_pkg) packages.add(package) if len(packages) < len(arg_pkgs): @@ -57,7 +49,7 @@ class AndroidSdk(StateModuleHelper): @staticmethod def _packages_to_str(packages): - return [{'name': x.name, 'version': x.version} for x in packages] + return [x.name for x in packages] def __run__(self): super().__run__()