Spec-Zone.ru › Ansible 2.6

yum_repository - Добавление или удаление репозиториев YUM

В версии 2.1.

  • Обзор
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения
  • Статус
  • Техническое обслуживание
    • Поддержка
    • Автор

Обзор

  • Добавление или удаление репозиториев YUM в дистрибутивах Linux на основе RPM.

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
async
bool
    Варианты:
  • no
  • yes ←
Если установлено значение yes, Yum загрузит пакеты и метаданные из этого репозитория параллельно, если это возможно.
attributes
(добавлено в 2.3)
Атрибуты, которые должен иметь файл или каталог. Чтобы узнать поддерживаемые флаги, обратитесь к странице руководства для chattr на целевой системе. Эта строка должна содержать атрибуты в том же порядке, что и в выводе команды lsattr.

псевдонимы: attr
bandwidth По умолчанию:
0
Максимальная доступная пропускная способность сети в байтах в секунду. Используется с параметром throttle.
Если throttle является процентом, а bandwidth 0, то ограничение пропускной способности будет отключено. Если throttle выражен как скорость передачи данных (байты/сек), то этот параметр игнорируется. Значение по умолчанию 0 (ограничение пропускной способности отключено).
baseurl
URL каталога, в котором находится каталог «repodata» репозитория yum.
Он также может быть списком нескольких URL-адресов.
Этот, metalink или mirrorlist параметры необходимы, если state установлено в present.
cost По умолчанию:
1000
Относительная стоимость доступа к этому репозиторию. Полезно для взвешивания пакетов одного репозитория как больших/меньших, чем любого другого.
deltarpm_metadata_percentage По умолчанию:
100
Когда относительный размер метаданных deltarpm по сравнению с пакетами больше, чем это значение, метаданные deltarpm не загружаются из репозитория. Обратите внимание, что вы можете задавать значения больше 100, поэтому 200 означает, что метаданные должны быть вдвое меньше размера пакетов. Используйте 0 для отключения этой проверки и всегда загружайте метаданные.
deltarpm_percentage По умолчанию:
75
Когда относительный размер дельты по сравнению с пакетом больше, чем это значение, дельта не используется. Используйте 0 для отключения обработки delta rpm. В локальных репозиториях (с file:// baseurl) delta rpm отключены по умолчанию.
description
Строка, удобочитаемая для человека, описывающая репозиторий.
Этот параметр требуется только в том случае, если state установлено на present.
enabled
bool
    Варианты:
  • no
  • yes ←
Указывает yum, использовать ли этот репозиторий.
enablegroups
bool
    Варианты:
  • no
  • yes ←
Определяет, позволит ли yum использовать группы пакетов для этого репозитория.
exclude
Список пакетов, которые нужно исключить из обновлений или установок. Это должен быть список, разделенный пробелами. Разрешены оболочки shell с подстановкой (например, * и ?).
Список также может быть обычным массивом YAML.
failovermethod
    Варианты:
  • roundrobin ←
  • priority
roundrobin случайным образом выбирает URL из списка URL-адресов для начала и переходит по каждому из них, когда возникает ошибка при контакте с хостом.
priority начинается с первого указанного baseurl и последовательно читает их.
file
Имя файла без расширения .repo для сохранения репозитория. По умолчанию используется значение параметра name.
gpgcakey
URL, указывающий на файл ключа CA в формате ASCII-armored для репозитория.
gpgcheck
bool
    Варианты:
  • no
  • yes
Указывает yum, нужно ли ему выполнять проверку подписи GPG для пакетов.
gpgkey
URL, указывающий на файл ключа GPG в формате ASCII-armored для репозитория.
Он также может быть списком нескольких URL-адресов.
group
Имя группы, которая должна владеть файлом/каталогом, как это передается в chown.
http_caching
    Варианты:
  • all ←
  • packages
  • none
Определяет, как верхним уровням HTTP-кешей будет предписано обрабатывать любые HTTP-загрузки, которые выполняет Yum.
all означает, что все HTTP-загрузки должны кэшироваться.
packages означает, что должны кэшироваться только загрузки пакетов RPM (но не загрузки метаданных репозитория).
none означает, что никакие HTTP-загрузки не должны кэшироваться.
include
Включить внешний файл конфигурации. Поддерживаются как локальный путь, так и URL. Файл конфигурации будет вставлен в позицию строки include=. Включенные файлы могут содержать дополнительные строки включения. Yum завершится с ошибкой, если будет обнаружен цикл включения.
includepkgs
Список пакетов, которые вы хотите использовать только из репозитория. Это должен быть список, разделенный пробелами. Разрешены оболочки shell с подстановкой (например, * и ?). Подстановки переменных (например, $releasever) соблюдаются здесь.
Список также может быть обычным массивом YAML.
ip_resolve
    Варианты:
  • 4
  • 6
  • IPv4
  • IPv6
  • whatever ←
Определяет, как yum разрешает имена хостов.
4 или IPv4 - разрешить только адреса IPv4.
6 или IPv6 - разрешить только адреса IPv6.
keepalive
bool
    Варианты:
  • no ←
  • yes
Указывает yum, использовать ли HTTP/1.1 keepalive с этим репозиторием. Это может улучшить скорость передачи, используя одно соединение при загрузке нескольких файлов из репозитория.
keepcache
    Варианты:
  • 0
  • 1 ←
Либо 1 или 0. Определяет, сохраняет ли yum кэш заголовков и пакетов после успешной установки.
metadata_expire По умолчанию:
21600
Время (в секундах), по истечении которого метаданные устареют.
Значение по умолчанию — 6 часов.
metadata_expire_filter
    Варианты:
  • never
  • read-only:past
  • read-only:present ←
  • read-only:future
Фильтрует время metadata_expire, позволяя обменять скорость на точность, если команда не требует этого. Каждая команда yum может указать, что она требует определенного уровня актуальности от удаленных репозиториев, от «Я собираюсь установить/обновить, поэтому это должно быть актуальным» до «Любые доступные данные подойдут».
never — Ничего не отфильтровано, всегда соблюдается metadata_expire.
read-only:past — Команды, которые заботятся только о прошлой информации, отфильтровываются от истечения срока действия метаданных. Например, информация команды yum history (если история должна искать что-либо о предыдущей транзакции, то по определению удаленный пакет был доступен в прошлом).
read-only:present — Команды, которые сбалансированы между прошлым и будущим. Например, yum list yum.
read-only:future — Команды, которые, скорее всего, приведут к выполнению других команд, которые потребуют последние метаданные. Например, yum check-update.
Обратите внимание, что этот параметр не переопределяет «yum clean expire-cache».
metalink
Указывает URL-адрес файла metalink для repomd.xml, список зеркал для всего репозитория генерируется путем преобразования зеркал для файла repomd.xml в baseurl.
Этот, baseurl или mirrorlist параметры необходимы, если state установлено в present.
mirrorlist
Указывает URL-адрес файла, содержащего список baseurl.
Этот, baseurl или metalink параметры необходимы, если state установлено в present.
mirrorlist_expire По умолчанию:
21600
Время (в секундах), по истечении которого кэшированный локально mirrorlist истечет.
Значение по умолчанию — 6 часов.
mode
Режим, который должен иметь файл или каталог. Для тех, кто привык к /usr/bin/chmod, помните, что режимы фактически являются восьмеричными числами. Вы должны либо указать ведущую ноль, чтобы парсер YAML Ansible знал, что это восьмеричное число (например, 0644 или 01777) или заключить его в кавычки (например, '644' или '0644') , чтобы Ansible получил строку и мог выполнить собственное преобразование из строки в число. Передача Ansible числа без выполнения одного из этих правил приведет к десятичному числу, что приведет к непредсказуемым результатам. Начиная с версии 1.8, режим может быть указан в символической форме (например, u+rwx или u=rw,g=r,o=r).
name
обязательно
Уникальный идентификатор репозитория.
Этот параметр требуется только в том случае, если state установлено в present или absent.
owner
Имя пользователя, который должен владеть файлом/каталогом, как это делается с помощью команды chown.
password
Пароль для использования с именем пользователя для аутентификации по протоколу Basic.
priority По умолчанию:
99
Принудительное упорядоченное обеспечение защиты репозиториев. Значение — целое число от 1 до 99.
Этот параметр работает только при установленной надстройке YUM Priorities.
protect
bool
    Варианты:
  • no ←
  • yes
Защита пакетов от обновлений из других репозиториев.
proxy
URL-адрес прокси-сервера, который должен использовать yum. Установите значение _none_, чтобы отключить глобальную настройку прокси.
proxy_password
Имя пользователя для использования с прокси.
proxy_username
Пароль для этого прокси.
repo_gpgcheck
bool
    Варианты:
  • no ←
  • yes
Указывает yum, должен ли он выполнять проверку подписи GPG для данных репозитория из этого репозитория.
reposdir По умолчанию:
"/etc/yum.repos.d"
Директория, в которой будут храниться файлы .repo.
retries По умолчанию:
10
Установите количество попыток повторной попытки получения файла перед возвратом ошибки. Установка значения 0 заставит yum пытаться бесконечно.
s3_enabled
bool
    Варианты:
  • no ←
  • yes
Включает поддержку репозиториев S3.
Этот параметр работает только при установленной надстройке YUM S3.
selevel По умолчанию:
"s0"
Часть контекста файла SELinux. Это атрибут MLS/MCS, иногда известный как range. Функция _default работает так же, как для seuser.
serole
Часть контекста файла SELinux, функция _default работает так же, как для seuser.
setype
Часть контекста файла SELinux, функция _default работает так же, как для seuser.
seuser
Часть контекста файла SELinux. Будет по умолчанию использовать политику системы, если применимо. Если установлено значение _default, будет использоваться часть политики user, если она доступна.
skip_if_unavailable
bool
    Варианты:
  • no ←
  • yes
Если установлено значение yes, yum продолжит работу, если по какой-либо причине невозможно связаться с этим репозиторием. Это следует настраивать осторожно, поскольку все репозитории проверяются для каждого данного команд.
ssl_check_cert_permissions
bool
    Варианты:
  • no ←
  • yes
Указывает, должен ли yum проверять разрешения на путях для сертификатов в репозитории (как удалённом, так и локальном).
Если мы не можем прочитать какой-либо из файлов, yum принудительно установит значение skip_if_unavailable в yes. Это особенно полезно для процессов, не имеющих прав root, которые используют yum для репозиториев, имеющих файлы сертификатов клиента, доступные только пользователю root.
sslcacert
Путь к каталогу, содержащему базы данных центров сертификации, которые yum должен использовать для проверки SSL-сертификатов.
sslclientcert
Путь к SSL-сертификату клиента, который должен использовать yum для подключения к репозиториям/удалённым сайтам.
sslclientkey
Путь к SSL-ключу клиента, который должен использовать yum для подключения к репозиториям/удалённым сайтам.
sslverify
bool
    Варианты:
  • no
  • yes ←
Определяет, должен ли yum вообще проверять SSL-сертификаты/хосты.
state
    Варианты:
  • absent
  • present ←
Состояние файла репозитория.
throttle
Включить ограничение пропускной способности для загрузок.
Этот параметр может быть выражен как абсолютная скорость передачи данных в байтах/сек. К значению пропускной способности можно добавить префикс СИ (k, M или G).
timeout По умолчанию:
30
Количество секунд, которые нужно ждать подключения перед завершением соединения из-за истечения времени ожидания.
ui_repoid_vars По умолчанию:
"releasever basearch"
При отображении идентификатора репозитория добавьте эти переменные yum к строке, если они используются в baseurl/etc. Переменные добавляются в указанном порядке (и найдены).
unsafe_writes
bool

(added in 2.2)
    Варианты:
  • no ←
  • yes
Обычно этот модуль использует атомарные операции для предотвращения повреждения данных или несогласованных чтений из целевых файлов, иногда системы настраиваются или просто повреждаются таким образом, что это не позволяют. Одним из примеров являются файлы, смонтированные в docker, которые не могут быть обновлены атомарно и могут быть выполнены только ненадёжным образом.
Этот булев параметр позволяет Ansible перейти к небезопасным методам обновления файлов в тех случаях, когда у вас нет другого выбора. Имейте в виду, что это подвержено гонкам и может привести к повреждению данных.
username
Имя пользователя для использования с аутентификацией по протоколу Basic для репозитория или любого URL.

Примечания

Примечание

  • Все комментарии будут удалены при изменении существующего файла репозитория.
  • Порядок разделов сохраняется в существующем файле репозитория.
  • Параметры в разделе упорядочены по алфавиту в существующем файле репозитория.
  • Файл репозитория автоматически удалится, если он не содержит ни одного репозитория.
  • При удалении репозитория имейте в виду, что кэш метаданных может оставаться на диске до тех пор, пока вы не запустите yum clean all. Используйте обработчик уведомлений для этого.
  • Параметр params был удален в Ansible 2.5 из-за обхода обработки параметров Ansible.

Примеры

- name: Add repository
  yum_repository:
    name: epel
    description: EPEL YUM repo
    baseurl: https://download.fedoraproject.org/pub/epel/$releasever/$basearch/

- name: Add multiple repositories into the same file (1/2)
  yum_repository:
    name: epel
    description: EPEL YUM repo
    file: external_repos
    baseurl: https://download.fedoraproject.org/pub/epel/$releasever/$basearch/
    gpgcheck: no

- name: Add multiple repositories into the same file (2/2)
  yum_repository:
    name: rpmforge
    description: RPMforge YUM repo
    file: external_repos
    baseurl: http://apt.sw.be/redhat/el7/en/$basearch/rpmforge
    mirrorlist: http://mirrorlist.repoforge.org/el7/mirrors-rpmforge
    enabled: no

# Handler showing how to clean yum metadata cache
- name: yum-clean-metadata
  command: yum clean metadata
  args:
    warn: no

# Example removing a repository and cleaning up metadata cache
- name: Remove repository (and clean up left-over metadata)
  yum_repository:
    name: epel
    state: absent
  notify: yum-clean-metadata

- name: Remove repository from a specific repo file
  yum_repository:
    name: epel
    file: external_repos
    state: absent

Значения возврата

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

Ключ Возвращаемое значение Описание
repo
string
success
имя репозитория

Пример:
epel
state
string
success
состояние цели после выполнения

Пример:
present


Статус

Этот модуль помечен как stableinterface, что означает, что разработчики этого модуля гарантируют, что не будут вносить обратные изменения в интерфейс.

Техническое обслуживание

Этот модуль помечен как core, что означает, что его обслуживает Ansible Core Team. Подробнее см. Техническое обслуживание и поддержка модулей.

Список других модулей, также поддерживаемых Ansible Core Team, см. здесь.

Поддержка

Дополнительную информацию о поддержке этого модуля компанией Red Hat см. в этой статье базы знаний

Автор

  • Jiri Tyr (@jtyr)

Подсказка

Если вы обнаружите какие-либо проблемы в этом руководстве, вы можете отредактировать этот документ, чтобы улучшить его.

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.6/modules/yum_repository_module.html

Spec-Zone.ru

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