Spec-Zone.ru › Ansible

Модуль 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

логический

Если задано значение true, модуль пытается принимать запросы на принятие лицензий, создаваемые sdkmanager при установке пакетов. В противном случае все запросы на принятие лицензий отклоняются.

Варианты:

  • false ← (по умолчанию)
  • true

channel

строка

Указывает, какой канал должен использовать sdkmanager для установки пакетов.

Варианты:

  • "stable" ← (по умолчанию)
  • "beta"
  • "dev"
  • "canary"

name

псевдонимы: package, pkg

список / элементы=строка

Имя пакета Android SDK (например, build-tools;34.0.0).

sdk_root

путь

Задает путь к альтернативному каталогу для установки пакетов Android SDK. По умолчанию все пакеты устанавливаются в каталог, где установлен sdkmanager.

state

строка

Указывает требуемое состояние пакета или пакетов.

present гарантирует, что пакет или пакеты присутствуют.

absent гарантирует, что пакет или пакеты отсутствуют.

latest гарантирует, что пакет или пакеты установлены и обновлены до последней версии.

Варианты:

  • "present" ← (по умолчанию)
  • "absent"
  • "latest"

Атрибуты

Атрибут

Поддержка

Описание

check_mode

Поддержка: полная

Может работать в режиме check_mode и возвращать прогноз изменения состояния, не изменяя целевой узел.

diff_mode

Поддержка: нет

В режиме diff возвращает сведения об изменениях (или о том, что, возможно, нужно изменить в check_mode).

Примечания

Примечание

  • Для некоторых пакетов, устанавливаемых с помощью 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

список / элементы=строка

Список установленных пакетов.

Возвращается: если пакеты были изменены

Пример: ["build-tools;34.0.0", "platform-tools"]

removed

список / элементы=строка

Список удаленных пакетов.

Возвращается: если пакеты были изменены

Пример: ["build-tools;34.0.0", "platform-tools"]

Авторы

  • Stanislav Shamilov (@shamilovstas)

Ссылки на коллекцию

  • Отслеживание проблем
  • Репозиторий (исходный код)
  • Задать вопрос
  • Сообщить об ошибке
  • Предложить функцию
  • Связь

© 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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API