dpkg_selections#

Модуль ansible.builtin.dpkg_selections управляет состоянием пакетов dpkg с помощью команд --get-selections и --set-selections.

Примечание

Этот модуль не устанавливает и не удаляет пакеты. Для установки и удаления пакетов используйте модуль ansible.builtin.apt.

Параметры#

Модуль принимает следующие параметры:

name#

Обязательный параметр.

Название пакета, для которого задается состояние.

selection#

Обязательный параметр.

Состояние, в которое требуется перевести пакет.

Возможные значения:

  • install – установить или обновить пакет;

  • hold – заблокировать автоматическое обновление пакета;

  • deinstall – удалить пакет, но оставить конфигурационные файлы;

  • purge – удалить пакет с конфигурационными файлами.

Атрибуты#

Атрибуты определяют функции Ansible, которые может использовать модуль.

Атрибут

Описание

check_mode

Модуль работает в режиме проверки (check_mode) в полном объеме.

diff_mode

Модуль поддерживает режим сравнения (diff_mode) в полном объеме и возвращает подробную информацию о сделанных изменениях.

platform

Модуль поддерживает только дистрибутивы Linux на базе Debian.

Примеры#

Для изучения возможностей модуля ознакомьтесь с приведенными ниже примерами.

Блокировка обновления пакета#

Следующий пример показывает блокировку автоматического обновления пакета python3:

---
# ...
  tasks:
    - name: Prevent python3 from being upgraded
      ansible.builtin.dpkg_selections:
        name: python3
        selection: hold

В результате выполнения задачи пакет python3 будет добавлен в список удерживаемых (hold), и не будет обновлен при выполнении команды apt upgrade.

Снятие блокировки обновления пакета#

Следующий пример показывает разрешение автоматического обновления пакета python3:

---
# ...
  tasks:
    - name: Allow python3 to be upgraded
      ansible.builtin.dpkg_selections:
        name: python3
        selection: install

В результате выполнения задачи состояние пакета будет изменено на install, что разблокирует его автоматическое обновление.