Spec-Zone.ru › Ansible 2.11

community.general.dpkg_divert – Переопределение версии файла пакета debian

Примечание

Этот плагин входит в коллекцию community.general (версия 2.0.1).

Для его установки используйте: ansible-galaxy collection install community.general.

Для использования в книге задач укажите: community.general.dpkg_divert.

Новое в версии 0.2.0: of community.general

  • Обзор
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения

Обзор

  • Отклонение используется для dpkg понимания, что только данный пакет (или местный администратор) может установить файл в указанном месте. Другие пакеты, поставляющие собственную версию этого файла, будут вынуждены отклонить его, т.е. установить его в другом месте. Это позволяет сохранять изменения в файле, предоставляемом пакетом debian, предотвращая его перезапись при обновлении пакета.
  • Этот модуль управляет отклонениями файлов пакетов debian, используя утилиту командной строки dpkg-divert. Он может либо создать, либо удалить отклонение для заданного файла, а также обновить существующее отклонение, чтобы изменить его держателя и/или его местоположение отклонения.

Требования

Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.

  • dpkg-divert >= 1.15.0 (семейство Debian)

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
divert
путь
Местоположение, куда будут отклоняться версии файла.
По умолчанию добавляется суффикс .distrib к пути к файлу.
Этот параметр игнорируется, когда state=absent.
force
логическое значение
    Варианты:
  • нет ←
  • да
При rename=true и force=true переименование выполняется, даже если целевой файл уже существует, т.е. содержимое существующего файла в этом месте будет потеряно.
Этот параметр игнорируется, когда rename=false.
holder
строка
Имя пакета, чья копия файла не отклонена, также известный как держатель отклонения или пакет, к которому относится отклонение.
Фактический пакет не должен быть установлен или даже существовать, чтобы его имя было допустимым. Если не указано, отклонение принадлежит 'LOCAL', что зарезервировано/предназначено dpkg для локальных отклонений.
Этот параметр игнорируется, когда state=absent.
path
путь / обязательно
Исходный и абсолютный путь к файлу, который необходимо отклонить или отменить отклонение. Этот путь уникален, т.е. невозможно получить два отклонения для одного и того же path.
rename
логическое значение
    Варианты:
  • нет ←
  • да
Фактически переместить файл в сторону (когда state=present) или обратно (когда state=absent), но только при изменении состояния отклонения. Этот параметр не оказывает влияния при попытке добавить отклонение, которое уже существует, или при удалении несуществующего.
Если force=true, переименование не удается, если целевой файл уже существует (эта блокировка является функцией dpkg-divert, а ее обход — функцией модуля).
state
строка
    Варианты:
  • absent
  • present ←
Когда state=absent, удалить отклонение указанного path; когда state=present, создать отклонение, если оно не существует, или обновить его пакет holder или местоположение divert, если оно уже существует.

Примечания

Примечание

  • Этот модуль поддерживает check_mode и diff.

Примеры

- name: Divert /usr/bin/busybox to /usr/bin/busybox.distrib and keep file in place
  community.general.dpkg_divert:
    path: /usr/bin/busybox

- name: Divert /usr/bin/busybox by package 'branding'
  community.general.dpkg_divert:
    path: /usr/bin/busybox
    holder: branding

- name: Divert and rename busybox to busybox.dpkg-divert
  community.general.dpkg_divert:
    path: /usr/bin/busybox
    divert: /usr/bin/busybox.dpkg-divert
    rename: yes

- name: Remove the busybox diversion and move the diverted file back
  community.general.dpkg_divert:
    path: /usr/bin/busybox
    state: absent
    rename: yes
    force: yes

Возвращаемые значения

Общие возвращаемые значения описаны в здесь, следующие поля уникальны для этого модуля:

Ключ Возвращаемое значение Описание
commands
список / элементы=строка
on_success
Команды dpkg-divert, запущенные внутри модуля.

Пример:
[ "/usr/bin/dpkg-divert --no-rename --remove /etc/foobarrc", "/usr/bin/dpkg-divert --package ansible --no-rename --add /etc/foobarrc" ]
diversion
словарь
всегда
Состояние отклонения после выполнения задачи.

Пример:
{ "divert": "/etc/foobarrc.distrib", "holder": "LOCAL", "path": "/etc/foobarrc" "state": "present" }
divert
строка
успешно
Местоположение отклоненного файла.

holder
строка
успешно
Пакет, содержащий отклонение.

path
строка
успешно
Путь к файлу для отклонения/отмены отклонения.

state
строка
успешно
Состояние отклонения.

messages
список / элементы=строка
on_success
Соответствующие сообщения dpkg-divert (stdout или stderr).

Пример:
[ "Удаление 'локального отклонения /etc/foobarrc в /etc/foobarrc.distrib'", "Добавление 'отклонения /etc/foobarrc в /etc/foobarrc.distrib пакетом ansible'" ]


Авторы

  • quidame (@quidame)

© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/community/general/dpkg_divert_module.html

Spec-Zone.ru

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