Модуль community.general.pacman – Управление пакетами с помощью pacman
Примечание
Этот модуль является частью коллекции community.general (версия 9.5.0).
Эта коллекция может быть уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install community.general.
Для использования в playbook, укажите: community.general.pacman.
Краткое описание
- Управление пакетами с помощью менеджера пакетов pacman, который используется Arch Linux и его вариантами.
Параметры
Параметр | Комментарии |
|---|---|
executable string добавлено в community.general 3.1.0 | Путь к исполняемому файлу. Это может быть Совместимость с Pacman, к сожалению, плохо определена, в частности, этот модуль широко использует директиву Следует помнить, что помощники AUR могут вести себя непредсказуемо, поэтому они не рекомендуются. Значение по умолчанию: |
extra_args string | Дополнительные параметры для передачи в pacman при принудительном Значение по умолчанию: |
force boolean | При удалении пакетов, принудительно удаляет их без каких-либо проверок. То же самое, что и В сочетании с Варианты:
|
name псевдонимы: package, pkg list / elements=string | Имя или список имен пакета(ов) или файла(ов) для установки, обновления или удаления. Не может использоваться в сочетании с |
reason string добавлено в community.general 5.4.0 | Причина установки, которая будет установлена для пакетов. Варианты:
|
reason_for string добавлено в community.general 5.4.0 | Установить причину установки для пакетов В случае с уже установленными пакетами Варианты:
|
remove_nosave boolean добавлено в community.general 4.6.0 | При удалении пакетов не сохранять измененные конфигурационные файлы как файлы Варианты:
|
state string | Устанавливать (
Варианты:
|
update_cache boolean | Обновлять ли главные списки пакетов. Это может быть выполнено как часть установки пакета, так и отдельным шагом. Если не указано, по умолчанию Обратите внимание, что этот параметр влиял на состояние модуля Варианты:
|
update_cache_extra_args string | Дополнительные параметры для передачи в pacman при принудительном Значение по умолчанию: |
upgrade boolean | Обновлять ли всю систему. Не может использоваться в сочетании с Если не указано, по умолчанию Варианты:
|
upgrade_extra_args string | Дополнительные параметры для передачи в pacman при принудительном Значение по умолчанию: |
Атрибуты
Атрибут | Поддержка | Описание |
|---|---|---|
check_mode | Поддержка: полная | Может работать в режиме |
diff_mode | Поддержка: полная | В режиме сравнения вернёт подробности о том, что изменилось (или, возможно, должно измениться в |
Примечания
Примечание
- При использовании с
loop:, каждый пакет будет обрабатываться индивидуально, гораздо эффективнее передать список напрямую вname. - Для использования помощника AUR (
executableопция), могут потребоваться дополнительные шаги настройки. Например, может потребоваться отдельный пользователь для сборки с правами на установку пакетов. - В тестах, при использовании
yayкакexecutableопция, модуль не смог установить пакеты AUR с ошибкой:error: target not found: <pkg>.
Примеры
- name: Install package foo from repo
community.general.pacman:
name: foo
state: present
- name: Install package bar from file
community.general.pacman:
name: ~/bar-1.0-1-any.pkg.tar.xz
state: present
- name: Install package foo from repo and bar from file
community.general.pacman:
name:
- foo
- ~/bar-1.0-1-any.pkg.tar.xz
state: present
- name: Install package from AUR using a Pacman compatible AUR helper
community.general.pacman:
name: foo
state: present
executable: yay
extra_args: --builddir /var/cache/yay
- name: Upgrade package foo
# The 'changed' state of this call will indicate whether the cache was
# updated *or* whether foo was installed/upgraded.
community.general.pacman:
name: foo
state: latest
update_cache: true
- name: Remove packages foo and bar
community.general.pacman:
name:
- foo
- bar
state: absent
- name: Recursively remove package baz
community.general.pacman:
name: baz
state: absent
extra_args: --recursive
- name: Run the equivalent of "pacman -Sy" as a separate step
community.general.pacman:
update_cache: true
- name: Run the equivalent of "pacman -Su" as a separate step
community.general.pacman:
upgrade: true
- name: Run the equivalent of "pacman -Syu" as a separate step
# Since community.general 5.0.0 the 'changed' state of this call
# will be 'true' in case the cache was updated, or when a package
# was updated.
#
# The previous behavior was to only indicate whether something was
# upgraded. To keep the old behavior, add the following to the task:
#
# register: result
# changed_when: result.packages | length > 0
community.general.pacman:
update_cache: true
upgrade: true
- name: Run the equivalent of "pacman -Rdd", force remove package baz
community.general.pacman:
name: baz
state: absent
force: true
- name: Install foo as dependency and leave reason untouched if already installed
community.general.pacman:
name: foo
state: present
reason: dependency
reason_for: new
- name: Run the equivalent of "pacman -S --asexplicit", mark foo as explicit and install it if not present
community.general.pacman:
name: foo
state: present
reason: explicit
reason_for: all
Значения возврата
Общие значения возврата описаны здесь, следующие поля уникальны для данного модуля:
Ключ | Описание |
|---|---|
cache_updated boolean добавлено в community.general 4.6.0 | Статус изменения Полезно, когда Возвращаемое значение: успех, если Пример: |
packages список / элементы=строка | Список пакетов, которые были изменены. До версии community.general 4.5.0 это возвращалось только, если Возвращаемое значение: успех и Пример: |
stderr строка добавлено в community.general 4.1.0 | Вывод ошибок из pacman. Возвращаемое значение: успех, когда необходимо Пример: |
stdout строка добавлено в community.general 4.1.0 | Вывод из pacman. Возвращаемое значение: успех, когда необходимо Пример: |
Ссылки на коллекцию
© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/community/general/pacman_module.html