yum_repository - Добавить или удалить репозитории YUM
Новая функция в версии 2.1.
Описание
- Добавляет или удаляет репозитории YUM в дистрибутивах Linux на базе RPM.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| async |
| Если установлено в yes, Yum будет загружать пакеты и метаданные из этого репозитория параллельно, если это возможно. |
| attributes (добавлен в 2.3) | Значение по умолчанию: Нет | Атрибуты, которые должен иметь файл или каталог. Чтобы получить поддерживаемые флаги, см. страницу man для 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 по сравнению с pkgs больше, чем это значение, метаданные deltarpm не загружаются из репозитория. Обратите внимание, что вы можете задавать значения больше 100, поэтому 200 означает, что метаданные должны составлять половину размера пакетов. Используйте 0 для отключения этой проверки и всегда загружайте метаданные. |
| deltarpm_percentage | Значение по умолчанию: 75 | Если относительный размер дельты по сравнению с pkg больше этого значения, дельта не используется. Используйте 0 для отключения обработки дельта rpm. В локальных репозиториях (с file:// baseurl) дельта rpm отключена по умолчанию. |
| description | Значение по умолчанию: Нет | Строка, читаемая человеком, описывающая репозиторий. Этот параметр требуется только если state установлено в present. |
| enabled |
| Это указывает yum, использовать ли этот репозиторий. |
| enablegroups |
| Определяет, позволит ли yum использовать группы пакетов для этого репозитория. |
| exclude | Значение по умолчанию: Нет | Список пакетов, которые нужно исключить из обновлений или установок. Это должен быть список, разделенный пробелами. Разрешены оболочки с использованием подстановочных символов (например, * и ?).Список также может быть обычным YAML массивом. |
| failovermethod |
| roundrobin случайным образом выбирает URL из списка URL, чтобы начать, и переходит через каждый из них при возникновении ошибки при обращении к хосту.priority начинается с первого указанного baseurl и считывает их последовательно. |
| file | Значение по умолчанию: Нет | Имя файла без расширения .repo для сохранения репозитория. По умолчанию используется значение name. |
| gpgcakey | Значение по умолчанию: Нет | URL, указывающий на файл CA-ключа в формате ASCII для репозитория. |
| gpgcheck |
| Указывает yum, нужно ли ему выполнять проверку подписи GPG пакетов. |
| gpgkey | Значение по умолчанию: Нет | URL, указывающий на файл ключа GPG в формате ASCII для репозитория. Также может быть списком нескольких URL. |
| group | Значение по умолчанию: Нет | Имя группы, которой должен принадлежать файл/каталог, как если бы он был передан в chown. |
| http_caching |
| Определяет, как upstream HTTP-кэши обрабатывают HTTP-загрузки, которые выполняет Yum. all означает, что все HTTP-загрузки должны кэшироваться.packages означает, что кэшироваться должны только загрузки пакетов RPM (но не загрузки метаданных репозитория).none означает, что никакие HTTP-загрузки не должны кэшироваться. |
| include | Значение по умолчанию: Нет | Включение внешнего файла конфигурации. Поддерживаются как локальный путь, так и URL. Файл конфигурации будет вставлен в позицию строки include=. Включенные файлы могут содержать дополнительные строки include. Yum прервется с ошибкой, если обнаружена петля включения. |
| includepkgs | Значение по умолчанию: Нет | Список пакетов, которые вы хотите использовать только из репозитория. Это должен быть список, разделенный пробелами. Разрешены оболочки с использованием подстановочных символов (например, * и ?). Здесь учитываются переменные подстановки (например, $releasever).Список также может быть обычным YAML массивом. |
| ip_resolve |
| Определяет, как yum разрешает имена хостов. 4 или IPv4 - разрешать только IPv4 адреса.6 или IPv6 - разрешать только IPv6 адреса. |
| keepalive |
| Это указывает yum, использовать ли HTTP/1.1 keepalive с этим репозиторием. Это может улучшить скорость передачи, используя одно соединение при загрузке нескольких файлов из репозитория. |
| keepcache |
| Либо 1, либо 0. Определяет, сохраняет ли yum кэш заголовков и пакетов после успешной установки. |
| metadata_expire | Значение по умолчанию: 21600 | Время (в секундах), после которого метаданные истекают. Значение по умолчанию - 6 часов. |
| metadata_expire_filter |
| Фильтрует время 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, помните, что режимы фактически являются восьмеричными числами (например, 0644 или 01777). Опущение ведущей нули, вероятно, приведет к непредвиденным результатам. С версии 1.8, режим может быть указан как символьный режим (например, u+rwx или u=rw,g=r,o=r). |
| name обязательно | Уникальный идентификатор репозитория. Этот параметр требуется только если state установлено в present или absent. |
| owner | Значение по умолчанию: None | Имя пользователя, который должен владеть файлом/каталогом, как это передаётся команде chown. |
| password | Значение по умолчанию: None | Пароль для использования с именем пользователя для аутентификации по принципу «имя пользователя/пароль». |
| priority | Значение по умолчанию: 99 | Принудительное упорядоченное обеспечение защиты репозиториев. Значение — целое число от 1 до 99. Эта опция работает только в случае установки плагина YUM Priorities. |
| protect |
| Защита пакетов от обновлений из других репозиториев. |
| proxy | Значение по умолчанию: None | URL сервера прокси, который должен использовать yum. Установите значение _none_, чтобы отключить глобальную настройку прокси. |
| proxy_password | Значение по умолчанию: None | Имя пользователя для использования с прокси. |
| proxy_username | Значение по умолчанию: None | Пароль для этого прокси. |
| repo_gpgcheck |
| Указывает yum, должен ли он выполнять проверку подписи GPG на repodata из этого репозитория. |
| reposdir | Значение по умолчанию: /etc/yum.repos.d | Директория, в которой будут храниться файлы .repo. |
| retries | Значение по умолчанию: 10 | Установите количество попыток повтора попытки получения файла перед возвратом ошибки. Установка значения 0 заставляет yum пытаться бесконечно. |
| s3_enabled |
| Включает поддержку репозиториев S3. Эта опция работает только при установке плагина YUM S3. |
| selevel | Значение по умолчанию: s0 | Часть контекста файла SELinux. Это атрибут MLS/MCS, иногда известный как range. Функция _default работает так же, как для seuser. |
| serole | Значение по умолчанию: None | Часть роли контекста файла SELinux, функция _default работает так же, как для seuser. |
| setype | Значение по умолчанию: None | Часть типа контекста файла SELinux, функция _default работает так же, как для seuser. |
| seuser | Значение по умолчанию: None | Часть пользователя контекста файла SELinux. По умолчанию будет использоваться политика системы, если применимо. Если установлено значение _default, будет использоваться часть user политики, если она доступна. |
| skip_if_unavailable |
| Если установлено значение yes, yum продолжит выполнение, если по какой-либо причине к этому репозиторию невозможно подключиться. Это следует устанавливать осторожно, так как все репозитории консультируются для любого данного командного задания. |
| ssl_check_cert_permissions |
| Указывает, должна ли yum проверять разрешения на пути к сертификатам в репозитории (как удалённом, так и локальном). Если мы не можем прочитать какие-либо файлы, yum принудительно установит значение skip_if_unavailable в yes. Это особенно полезно для процессов, не выполняемых от имени root, которые используют yum для репозиториев с файлами сертификатов клиента, доступными только для root. |
| sslcacert | Значение по умолчанию: None | Путь к каталогу, содержащему базы данных центров сертификации, которые yum должен использовать для проверки SSL-сертификатов. |
| sslclientcert | Значение по умолчанию: None | Путь к SSL-клиентскому сертификату, который yum должен использовать для подключения к репозиториям/удалённым сайтам. |
| sslclientkey | Значение по умолчанию: None | Путь к SSL-клиентскому ключу, который yum должен использовать для подключения к репозиториям/удалённым сайтам. |
| sslverify |
| Определяет, должен ли yum вообще проверять SSL-сертификаты/хосты. |
| state |
| Состояние файла репозитория. |
| throttle | Значение по умолчанию: None | Включить ограничение пропускной способности для загрузок. Эта опция может быть выражена как абсолютная скорость передачи данных в байтах/сек. К значению пропускной способности может быть добавлен префикс СИ (к, М или Г). |
| timeout | Значение по умолчанию: 30 | Количество секунд ожидания подключения перед истечением времени ожидания. |
| ui_repoid_vars | Значение по умолчанию: releasever basearch | При отображении идентификатора репозитория к строке добавляются эти переменные yum, если они используются в baseurl/etc. Переменные добавляются в указанном порядке (и найдены). |
| unsafe_writes (добавлено в 2.2) |
| В обычном режиме этот модуль использует атомарные операции для предотвращения повреждения данных или несовместимых чтений из целевых файлов. Иногда системы конфигурируются или просто выходят из строя таким образом, что это не позволяет сделать. Одним из примеров являются файлы, смонтированные в docker; они не могут быть обновлены атомарно и могут быть обновлены только небезопасным способом. Эта булевaя опция позволяет Ansible переходить к небезопасным методам обновления файлов в тех случаях, когда у вас нет другого выбора. Имейте в виду, что это подвержено гонкам и может привести к повреждению данных. |
| username | Значение по умолчанию: None | Имя пользователя для аутентификации по принципу «имя пользователя/пароль» в репозитории или любом 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 строка | успех | Имя репозитория Пример: epel |
| state строка | успех | Состояние целевого объекта после выполнения Пример: present |
Статус
Этот модуль помечен как stableinterface, что означает, что разработчики этого модуля гарантируют отсутствие несовместимых изменений интерфейса.
Поддержка
Дополнительную информацию о поддержке этого модуля компанией 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.5/modules/yum_repository_module.html