Модуль community.general.android_sdk — управление пакетами Android SDK
Примечание
Этот модуль входит в коллекцию community.general (версия 12.6.1).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install community.general. Для использования этого модуля необходимы дополнительные требования; подробности см. в разделе Требования.
Чтобы использовать модуль в плейбуке, укажите: community.general.android_sdk.
Добавлено в community.general 10.2.0
Краткое описание
- Управляет пакетами Android SDK.
- Позволяет устанавливать пакеты из разных каналов (стабильный, бета, dev, canary).
- Позволяет устанавливать пакеты в нестандартный корневой каталог SDK.
Требования
Следующие требования необходимы на узле, на котором выполняется этот модуль.
-
java>= 17 -
sdkmanager— инструмент командной строки для установки пакетов Android SDK.
Параметры
Параметр | Комментарии |
|---|---|
accept_licenses логический | Если задано значение Варианты:
|
channel строка | Указывает, какой канал должен использовать Варианты:
|
name псевдонимы: package, pkg список / элементы=строка | Имя пакета Android SDK (например, |
sdk_root путь | Задает путь к альтернативному каталогу для установки пакетов Android SDK. По умолчанию все пакеты устанавливаются в каталог, где установлен |
state строка | Указывает требуемое состояние пакета или пакетов.
Варианты:
|
Атрибуты
Атрибут | Поддержка | Описание |
|---|---|---|
check_mode | Поддержка: полная | Может работать в режиме |
diff_mode | Поддержка: нет | В режиме diff возвращает сведения об изменениях (или о том, что, возможно, нужно изменить в |
Примечания
Примечание
- Для некоторых пакетов, устанавливаемых с помощью
sdkmanager, необходимо принимать лицензии. Обычно это делается в командной строке: при запросе на установку пакета с лицензией появляется вопрос с вариантами ответа Y/N. Если запрошена установка нескольких пакетов и как минимум два из них распространяются по разным лицензиям, инструментsdkmanagerзапрашивает принятие лицензий в цикле. Чтобы установить пакеты, модуль должен уметь отвечать на эти запросы. Сейчас можно ответить только на один запрос о лицензии за раз. Поэтому вместо установки нескольких пакетов одним вызовом командыsdkmanager --installкоманда выполняется отдельно для каждого пакета. Это гарантирует, что потребуется ответить не более чем на один запрос о лицензии. На момент написания этого модуля пакетsdkmanagerможет распространяться не более чем по одному типу лицензии, принятие которой обязательно. Однако если в будущем это изменится, модуль может зависнуть, поскольку инструментsdkmanagerможет выдать дополнительные запросы, на которые модуль не сможет ответить. Если это произойдет, сообщите об ошибке. А пока рассмотрите возможность заранее принять все лицензии, как описано вsdkmanagerдокументации, например с помощью модуля ansible.builtin.command.
См. также
См. также
- Документация по инструменту sdkmanager
-
Подробная информация об установке и использовании инструмента командной строки sdkmanager.
Примеры
- name: Install build-tools;34.0.0
community.general.android_sdk:
name: build-tools;34.0.0
accept_licenses: true
state: present
- name: Install build-tools;34.0.0 and platform-tools
community.general.android_sdk:
name:
- build-tools;34.0.0
- platform-tools
accept_licenses: true
state: present
- name: Delete build-tools;34.0.0
community.general.android_sdk:
name: build-tools;34.0.0
state: absent
- name: Install platform-tools or update if installed
community.general.android_sdk:
name: platform-tools
accept_licenses: true
state: latest
- name: Install build-tools;34.0.0 to a different SDK root
community.general.android_sdk:
name: build-tools;34.0.0
accept_licenses: true
state: present
sdk_root: "/path/to/new/root"
- name: Install a package from another channel
community.general.android_sdk:
name: some-package-present-in-canary-channel
accept_licenses: true
state: present
channel: canary
Возвращаемые значения
Общие возвращаемые значения описаны здесь. Ниже приведены поля, уникальные для этого модуля:
Ключ | Описание |
|---|---|
installed список / элементы=строка | Список установленных пакетов. Возвращается: если пакеты были изменены Пример: |
removed список / элементы=строка | Список удаленных пакетов. Возвращается: если пакеты были изменены Пример: |
Ссылки на коллекцию
© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/community/general/android_sdk_module.html