Модуль community.general.dnf_versionlock — Блокировка версий пакетов в системах на базе dnf
Примечание
Этот модуль входит в коллекцию community.general (версия 9.5.0).
У вас, возможно, уже установлена эта коллекция, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить её установку, выполните ansible-galaxy collection list.
Для её установки используйте: ansible-galaxy collection install community.general. Для использования этого модуля необходимы дополнительные требования, см. Требования для получения подробностей.
Для использования в книге задач, укажите: community.general.dnf_versionlock.
Новое в community.general 4.0.0
Описание
- Блокирует версии пакетов, используя плагин
versionlockв системах на базеdnf. Этот плагин принимает набор имён и версий пакетов и исключает все другие версии этих пакетов. Это позволяет, например, защитить пакеты от обновления более новыми версиями. Состояние плагина, отражающее блокировку пакетов, являетсяlocklist.
Требования
Ниже приведены требования к хосту, на котором выполняется этот модуль.
- dnf
- dnf-plugin-versionlock
Параметры
Параметр | Комментарии |
|---|---|
name список / элементы=строка | Спецификация имени пакета для добавления, исключения или удаления из Этот параметр взаимоисключает По умолчанию: |
raw логическое | Не разрешать спецификации имён пакетов в NEVRAs для поиска конкретной версии для блокировки. Вместо этого спецификации имён пакетов используются как есть. Это позволяет блокировать ещё недоступные версии пакета. Варианты:
|
state строка | Добавить (
Варианты:
|
Атрибуты
Атрибут | Поддержка | Описание |
|---|---|---|
check_mode | Поддержка: частичная Логика плагина Иногда модуль может предсказать изменения в | Может работать в режиме |
diff_mode | Поддержка: отсутствует | Вернёт детали о том, что изменилось (или, возможно, должно измениться в |
Примечания
Примечание
- В идеальном мире плагин
versionlockимел бы опцию пробного запуска, чтобы точно знать, что произойдёт. Пока нам придётся работать с лучшим предположением, максимально приближенным к поведению, выведенному из его кода. - В большинстве случаев, когда вы хотите заблокировать и разблокировать определённые версии пакета, это работает достаточно хорошо.
Примеры
- name: Prevent installed nginx from being updated
community.general.dnf_versionlock:
name: nginx
state: present
- name: Prevent multiple packages from being updated
community.general.dnf_versionlock:
name:
- nginx
- haproxy
state: present
- name: Remove lock from nginx to be updated again
community.general.dnf_versionlock:
package: nginx
state: absent
- name: Exclude bind 32:9.11 from installs or updates
community.general.dnf_versionlock:
package: bind-32:9.11*
state: excluded
- name: Keep bash package in major version 4
community.general.dnf_versionlock:
name: bash-0:4.*
raw: true
state: present
- name: Delete all entries in the locklist of versionlock
community.general.dnf_versionlock:
state: clean
Значения возврата
Общие значения возврата документированы здесь, следующие поля уникальны для данного модуля:
Ключ | Описание |
|---|---|
locklist_post список / элементы=строка | Список блокировок после выполнения модуля. Возвращается: успех и (не режим проверки или состояние чистое) Пример: |
locklist_pre список / элементы=строка | Список блокировок перед выполнением модуля. Возвращается: успех Пример: |
specs_toadd список / элементы=строка | Спецификации имён пакетов, предназначенные для добавления модулем versionlock. Возвращается: успех Пример: |
specs_todelete список / элементы=строка | Спецификации имён пакетов, предназначенные для удаления модулем versionlock. Возвращается: успех Пример: |
Ссылки на коллекцию
© 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/dnf_versionlock_module.html