mirror of
https://github.com/ansible-collections/community.general.git
synced 2025-04-09 04:00:31 -07:00
removes version from Package object since it is not possible to specify version for a package while using sdkmanager
This commit is contained in:
parent
01c36742dd
commit
d7f6451535
2 changed files with 8 additions and 35 deletions
|
@ -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<name>\S+)\s+\|\s+(?P<version>\S+)\s+\|\s(?P<description>.+)\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:
|
||||
|
|
|
@ -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__()
|
||||
|
|
Loading…
Add table
Reference in a new issue