mirror of
https://github.com/ansible-collections/community.general.git
synced 2025-07-23 05:10:22 -07:00
adds sdk_root parameter
This commit is contained in:
parent
de6f740af8
commit
97b07eebba
3 changed files with 31 additions and 6 deletions
|
@ -19,7 +19,8 @@ def sdkmanager_runner(module, **kwargs):
|
||||||
update=cmd_runner_fmt.as_fixed("--update"),
|
update=cmd_runner_fmt.as_fixed("--update"),
|
||||||
installed=cmd_runner_fmt.as_fixed("--list_installed"),
|
installed=cmd_runner_fmt.as_fixed("--list_installed"),
|
||||||
list=cmd_runner_fmt.as_fixed('--list'),
|
list=cmd_runner_fmt.as_fixed('--list'),
|
||||||
newer=cmd_runner_fmt.as_fixed("--newer")
|
newer=cmd_runner_fmt.as_fixed("--newer"),
|
||||||
|
sdk_root=cmd_runner_fmt.as_opt_eq_val("--sdk_root", ignore_none=True)
|
||||||
),
|
),
|
||||||
force_lang="C.UTF-8",
|
force_lang="C.UTF-8",
|
||||||
**kwargs
|
**kwargs
|
||||||
|
@ -61,7 +62,7 @@ class AndroidSdkManager(object):
|
||||||
self.runner = runner
|
self.runner = runner
|
||||||
|
|
||||||
def get_installed_packages(self):
|
def get_installed_packages(self):
|
||||||
with self.runner('installed') as ctx:
|
with self.runner('installed sdk_root') as ctx:
|
||||||
rc, stdout, stderr = ctx.run()
|
rc, stdout, stderr = ctx.run()
|
||||||
|
|
||||||
data = stdout.split('\n')
|
data = stdout.split('\n')
|
||||||
|
@ -89,7 +90,7 @@ class AndroidSdkManager(object):
|
||||||
return packages
|
return packages
|
||||||
|
|
||||||
def get_updatable_packages(self):
|
def get_updatable_packages(self):
|
||||||
with self.runner('list newer') as ctx:
|
with self.runner('list newer sdk_root') as ctx:
|
||||||
rc, stdout, stderr = ctx.run()
|
rc, stdout, stderr = ctx.run()
|
||||||
data = stdout.split('\n')
|
data = stdout.split('\n')
|
||||||
|
|
||||||
|
@ -129,5 +130,5 @@ class AndroidSdkManager(object):
|
||||||
if len(packages) == 0:
|
if len(packages) == 0:
|
||||||
return 0, '', ''
|
return 0, '', ''
|
||||||
command_arg = [x.name for x in packages]
|
command_arg = [x.name for x in packages]
|
||||||
with self.runner('state name') as ctx:
|
with self.runner('state name sdk_root') as ctx:
|
||||||
return ctx.run(name=command_arg, state=state)
|
return ctx.run(name=command_arg, state=state)
|
||||||
|
|
|
@ -8,7 +8,8 @@ class AndroidSdk(StateModuleHelper):
|
||||||
argument_spec=dict(
|
argument_spec=dict(
|
||||||
state=dict(type='str', default='present', choices=['present', 'absent', 'latest']),
|
state=dict(type='str', default='present', choices=['present', 'absent', 'latest']),
|
||||||
package=dict(type='list', elements='str', aliases=['pkg', 'name']),
|
package=dict(type='list', elements='str', aliases=['pkg', 'name']),
|
||||||
update=dict(type='bool', default=False)
|
update=dict(type='bool', default=False),
|
||||||
|
sdk_root=dict(type='path')
|
||||||
),
|
),
|
||||||
supports_check_mode=True
|
supports_check_mode=True
|
||||||
)
|
)
|
||||||
|
|
|
@ -57,6 +57,27 @@
|
||||||
state: latest
|
state: latest
|
||||||
register: platform_tools_updated
|
register: platform_tools_updated
|
||||||
|
|
||||||
|
- name: Create new sdk root
|
||||||
|
file:
|
||||||
|
path: "{{ ansible_env.HOME }}/newroot"
|
||||||
|
state: directory
|
||||||
|
register: newroot
|
||||||
|
|
||||||
|
- name: Accept licenses in the new root
|
||||||
|
shell: "yes | sdkmanager --sdk_root={{ newroot.path }} --licenses"
|
||||||
|
|
||||||
|
- name: Install a package to a new root
|
||||||
|
android_sdk:
|
||||||
|
name: build-tools;34.0.0
|
||||||
|
state: present
|
||||||
|
sdk_root: "{{ newroot.path }}"
|
||||||
|
register: new_root_package
|
||||||
|
|
||||||
|
- name: Check package is installed
|
||||||
|
stat:
|
||||||
|
path: "{{ newroot.path }}/build-tools/34.0.0"
|
||||||
|
register: new_root_package_stat
|
||||||
|
|
||||||
- name: Run tests
|
- name: Run tests
|
||||||
assert:
|
assert:
|
||||||
that:
|
that:
|
||||||
|
@ -67,3 +88,5 @@
|
||||||
- not build_tools_deleted2.changed
|
- not build_tools_deleted2.changed
|
||||||
- not platform_tools_present.changed
|
- not platform_tools_present.changed
|
||||||
- platform_tools_updated.changed
|
- platform_tools_updated.changed
|
||||||
|
- new_root_package.changed
|
||||||
|
- new_root_package_stat.stat.exists
|
Loading…
Add table
Add a link
Reference in a new issue