applies code review suggestions

pull/9236/head
Stanislav Shamilov 2024-12-12 15:34:05 +02:00
parent baa5f65328
commit d367bd2b19
6 changed files with 14 additions and 42 deletions

View File

@ -10,8 +10,7 @@ __metaclass__ = type
import re import re
from ansible_collections.community.general.plugins.module_utils import cmd_runner_fmt from ansible_collections.community.general.plugins.module_utils.cmd_runner import CmdRunner, cmd_runner_fmt
from ansible_collections.community.general.plugins.module_utils.cmd_runner import CmdRunner
__state_map = { __state_map = {
"present": "--install", "present": "--install",
@ -113,7 +112,7 @@ class AndroidSdkManager(object):
with self.runner('state name sdk_root channel', data=data) as ctx: with self.runner('state name sdk_root channel', data=data) as ctx:
rc, stdout, stderr = ctx.run(name=command_arg, data=data) rc, stdout, stderr = ctx.run(name=command_arg, data=data)
data = stdout.split('\n') data = stdout.splitlines()
for line in data: for line in data:
if self._RE_ACCEPT_LICENSE.match(line): if self._RE_ACCEPT_LICENSE.match(line):
@ -124,7 +123,7 @@ class AndroidSdkManager(object):
return rc, stdout, stderr return rc, stdout, stderr
def _try_parse_stderr(self, stderr): def _try_parse_stderr(self, stderr):
data = stderr.split('\n') data = stderr.splitlines()
for line in data: for line in data:
unknown_package_regex = self._RE_UNKNOWN_PACKAGE.match(line) unknown_package_regex = self._RE_UNKNOWN_PACKAGE.match(line)
if unknown_package_regex: if unknown_package_regex:
@ -133,7 +132,7 @@ class AndroidSdkManager(object):
@staticmethod @staticmethod
def _parse_packages(stdout, header_regexp, row_regexp): def _parse_packages(stdout, header_regexp, row_regexp):
data = stdout.split('\n') data = stdout.splitlines()
updatable_section_found = False updatable_section_found = False
i = 0 i = 0

View File

@ -145,15 +145,10 @@ class AndroidSdk(StateModuleHelper):
self.vars.set('removed', [], change=True) self.vars.set('removed', [], change=True)
def _parse_packages(self): def _parse_packages(self):
arg_pkgs = self.vars.package arg_pkgs = set(self.vars.package)
packages = set() if len(arg_pkgs) < len(self.vars.package):
for arg_pkg in arg_pkgs:
package = Package(arg_pkg)
packages.add(package)
if len(packages) < len(arg_pkgs):
self.do_raise("Packages may not repeat") self.do_raise("Packages may not repeat")
return packages return set([Package(p) for p in arg_pkgs])
def state_present(self): def state_present(self):
packages = self._parse_packages() packages = self._parse_packages()

View File

@ -1,9 +0,0 @@
---
# Copyright (c) Ansible Project
# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt)
# SPDX-License-Identifier: GPL-3.0-or-later
- name: delete_newroot
file:
path: "{{ ansible_env.HOME }}/newroot"
state: absent

View File

@ -5,3 +5,4 @@
dependencies: dependencies:
- setup_pkg_mgr - setup_pkg_mgr
- setup_remote_tmp_dir

View File

@ -59,26 +59,19 @@
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
notify: delete_newroot
- name: Accept licenses in the new root - name: Accept licenses in the new root
shell: "yes | sdkmanager --sdk_root={{ newroot.path }} --licenses" shell: "yes | sdkmanager --sdk_root={{ remote_tmp_dir }} --licenses"
- name: Install a package to a new root - name: Install a package to a new root
android_sdk: android_sdk:
name: build-tools;34.0.0 name: build-tools;34.0.0
state: present state: present
sdk_root: "{{ newroot.path }}" sdk_root: "{{ remote_tmp_dir }}"
register: new_root_package register: new_root_package
- name: Check package is installed - name: Check package is installed
stat: stat:
path: "{{ newroot.path }}/build-tools/34.0.0" path: "{{ remote_tmp_dir }}/build-tools/34.0.0"
register: new_root_package_stat register: new_root_package_stat
- name: Install a package from canary channel - name: Install a package from canary channel

View File

@ -41,26 +41,19 @@
state: absent state: absent
register: sources_android_26_deleted2 register: sources_android_26_deleted2
- name: Create new sdk root (FreeBSD)
file:
path: "{{ ansible_env.HOME }}/newroot"
state: directory
register: newroot
notify: delete_newroot
- name: Accept licenses in the new root (FreeBSD) - name: Accept licenses in the new root (FreeBSD)
shell: "yes | sdkmanager --sdk_root={{ newroot.path }} --licenses" shell: "yes | sdkmanager --sdk_root={{ remote_tmp_dir }} --licenses"
- name: Install a package to a new root (FreeBSD) - name: Install a package to a new root (FreeBSD)
android_sdk: android_sdk:
name: sources;android-26 name: sources;android-26
state: present state: present
sdk_root: "{{ newroot.path }}" sdk_root: "{{ remote_tmp_dir }}"
register: new_root_package register: new_root_package
- name: Check package is installed (FreeBSD) - name: Check package is installed (FreeBSD)
stat: stat:
path: "{{ newroot.path }}/sources/android-26" path: "{{ remote_tmp_dir }}/sources/android-26"
register: new_root_package_stat register: new_root_package_stat
- name: Install a package from canary channel (FreeBSD) - name: Install a package from canary channel (FreeBSD)