ansible.builtin.yum_repository – Добавить или удалить репозитории YUM
Примечание
Этот модуль является частью ansible-base и включён во все установки Ansible. В большинстве случаев можно использовать короткое имя модуля yum_repository, даже не указывая ключевое слово collections:. Несмотря на это, мы рекомендуем использовать полное имя класса (FQCN) для удобной ссылки на документацию по модулю и для предотвращения конфликтов с другими коллекциями, которые могут иметь то же самое имя модуля.
Новое в версии 2.1: of ansible.builtin
Описание
- Добавление или удаление репозиториев YUM в дистрибутивах Linux на базе RPM.
- Если требуется обновить существующее определение репозитория, используйте community.general.ini_file вместо этого.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| async boolean |
| Если установлено значение yes, Yum будет загружать пакеты и метаданные с этого репозитория параллельно, если это возможно. |
| attributes string добавлено в 2.3 ansible.builtin | Атрибуты, которые должны быть у результирующего файла или каталога. Для получения поддерживаемых флагов обратитесь к странице руководства chattr на целевой системе. Эта строка должна содержать атрибуты в том же порядке, что и при отображении командой lsattr. Оператор = предполагается по умолчанию, в противном случае операторы + или - необходимо включить в строку.псевдонимы: attr | |
| bandwidth string | Значение по умолчанию: 0 | Максимальная доступная пропускная способность сети в байтах в секунду. Используется с параметром throttle. Если throttle — это процент, а bandwidth — 0, то ограничение пропускной способности будет отключено. Если throttle выражается как скорость передачи данных (байты/сек), то этот параметр игнорируется. Значение по умолчанию — 0 (ограничение пропускной способности отключено). |
| baseurl string | URL каталога, где находится каталог «repodata» репозитория yum. Также может быть списком нескольких URL. Этот параметр, а также параметры metalink или mirrorlist необходимы, если параметр state установлен на present. | |
| cost string | Значение по умолчанию: 1000 | Относительная стоимость доступа к этому репозиторию. Полезно для взвешивания пакетов одного репозитория как больше/меньше, чем других. |
| deltarpm_metadata_percentage string | Значение по умолчанию: 100 | Когда относительный размер метаданных deltarpm по отношению к пакетам больше этого значения, метаданные deltarpm не загружаются из репозитория. Обратите внимание, что можно задавать значения больше 100, например, 200 означает, что метаданные должны быть вполовину меньше размера пакетов. Используйте 0 для отключения этой проверки и всегда загружайте метаданные. |
| deltarpm_percentage string | Значение по умолчанию: 75 | Когда относительный размер дельт по отношению к пакету больше этого значения, дельта не используется. Используйте 0 для отключения обработки дельта-rpm. В локальных репозиториях (с `file://` в параметре baseurl) дельта-rpm отключены по умолчанию. |
| description string | Строка, читаемая человеком, описывающая репозиторий. Этот параметр соответствует свойству «name» в файле репозитория. Этот параметр требуется только если параметр state установлен на present. | |
| enabled boolean |
| Указывает Yum использовать или не использовать этот репозиторий. |
| enablegroups boolean |
| Определяет, будет ли yum использовать группы пакетов для этого репозитория. |
| exclude string | Список пакетов, которые нужно исключить из обновлений или установок. Должен быть списком, разделенным пробелами. Разрешены оболочки командной строки с использованием символов подстановки (например, * и ?).Список также может быть обычным YAML-массивом. | |
| failovermethod string |
| roundrobin случайным образом выбирает URL из списка URL для начала и последовательно переходит к каждому из них при возникновении ошибки соединения с хостом.priority начинается с первого указанного baseurl и последовательно проходит по ним. |
| file string | Имя файла без расширения .repo для сохранения репозитория. По умолчанию используется значение параметра name. | |
| gpgcakey string | URL, указывающий на файл CA-ключа репозитория в ASCII-armored формате. | |
| gpgcheck boolean |
| Указывает yum, необходимо ли проверять подписи GPG пакетов. Значение по умолчанию не установлено. Если значение не задано, будет использоваться системное значение из /etc/yum.conf или системное значение по умолчанию no. |
| gpgkey string | URL, указывающий на файл ключа GPG репозитория в ASCII-armored формате. Также может быть списком нескольких URL. | |
| group string | Имя группы, которая должна владеть файлом/каталогом, как это делается в команде chown. | |
| http_caching string |
| Определяет, как кэши HTTP-серверов обрабатывают HTTP-загрузки, которые выполняет Yum. all означает, что все HTTP-загрузки должны быть кэшированы.packages означает, что должны кэшироваться только загрузки RPM-пакетов (но не метаданных репозитория).none означает, что HTTP-загрузки не должны кэшироваться. |
| include string | Включение внешнего файла конфигурации. Поддерживаются как локальный путь, так и URL. Файл конфигурации будет вставлен в позицию строки include=. Включенные файлы могут содержать дополнительные строки включения. Yum завершит выполнение с ошибкой, если будет обнаружен цикл включения. | |
| includepkgs string | Список пакетов, которые вы хотите использовать только из репозитория. Список должен быть разделен пробелами. Разрешены оболочки командной строки с использованием символов подстановки (например, * и ?). Поддерживаются переменные подстановки (например, $releasever).Список также может быть обычным YAML-массивом. | |
| ip_resolve string |
| Определяет, как yum разрешает имена хостов. 4 или IPv4 — разрешение только на IPv4-адреса.6 или IPv6 — разрешение только на IPv6-адреса. |
| keepalive boolean |
| Указывает yum использовать или не использовать HTTP/1.1 keepalive с этим репозиторием. Это может улучшить скорость передачи, используя одно подключение при загрузке нескольких файлов из репозитория. |
| keepcache string |
| Либо 1, либо 0. Определяет, хранит ли yum кэш заголовков и пакетов после успешной установки. |
| metadata_expire string | Значение по умолчанию: 21600 | Время (в секундах), после которого метаданные истекают. Значение по умолчанию — 6 часов. |
| metadata_expire_filter string |
| Фильтрует время 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 string | Указывает URL на файл metalink для repomd.xml. Список зеркал для всего репозитория генерируется путём преобразования зеркал для файла repomd.xml в baseurl. Этот параметр, а также параметры baseurl или mirrorlist необходимы, если параметр state установлен на present. | |
| mirrorlist string | Указывает URL на файл, содержащий список baseurl. Этот параметр, а также параметры baseurl или metalink необходимы, если параметр state установлен на present. | |
| mirrorlist_expire string | Значение по умолчанию: 21600 | Время (в секундах), после которого кэшированный локально список зеркал истекает. Значение по умолчанию — 6 часов. |
| режим raw | Разрешения, которые должен иметь получившийся файл или каталог. Для тех, кто привык к /usr/bin/chmod, помните, что режимы фактически являются восьмеричными числами. Вы должны либо добавить ведущую нуль, чтобы парсер YAML Ansible знал, что это восьмеричное число (например, 0644 или 01777) или заключить его в кавычки (например, '644' или '1777'), чтобы Ansible получил строку и выполнил собственное преобразование строки в число.Если вы передадите Ansible число без соблюдения одного из этих правил, оно будет интерпретировано как десятичное число, что приведёт к непредвиденным результатам. Начиная с Ansible 1.8, режим может быть указан в символической форме (например, u+rwx или u=rw,g=r,o=r). | |
| имя строка / обязательно | Уникальный идентификатор репозитория. Этот параметр формирует имя раздела репозитория в файле repo. Этот параметр требуется только если состояние установлено в present или absent. | |
| владелец строка | Имя пользователя, который должен владеть файлом/каталогом, как если бы оно было передано в chown. | |
| пароль строка | Пароль, который следует использовать с именем пользователя для аутентификации по протоколу Basic. | |
| приоритет строка | По умолчанию: 99 | Принудительное упорядоченное обеспечение защиты репозиториев. Значение должно быть целым числом от 1 до 99. Этот параметр работает только если установлен плагин YUM Priorities. |
| защита логическое |
| Защитить пакеты от обновлений из других репозиториев. |
| прокси строка | URL прокси-сервера, который yum должен использовать. Установите в _none_ для отключения глобальной настройки прокси. | |
| пароль_прокси строка | Пароль для данного прокси. | |
| имя_пользователя_прокси строка | Имя пользователя для использования с прокси. | |
| repo_gpgcheck логическое |
| Указывает yum, должен ли он выполнять проверку подписи GPG для данных репозитория из этого репозитория. |
| reposdir строка | По умолчанию: "/etc/yum.repos.d" | Директория, в которой будут храниться файлы .repo. |
| повторные_попытки строка | По умолчанию: 10 | Установите количество попыток повторного получения файла перед возвратом ошибки. Установка значения в 0 означает, что yum будет пытаться бесконечно. |
| s3_enabled логическое |
| Включает поддержку репозиториев S3. Этот параметр работает только если установлен плагин YUM S3. |
| selevel строка | Часть контекста файла SELinux, относящаяся к уровню. Это атрибут MLS/MCS, иногда известный как range.Если установлено значение _default, будет использоваться часть политики level, если она доступна. | |
| serole строка | Часть контекста файла SELinux, относящаяся к роли. Если установлено значение _default, будет использоваться часть политики role, если она доступна. | |
| setype строка | Часть контекста файла SELinux, относящаяся к типу. Если установлено значение _default, будет использоваться часть политики type, если она доступна. | |
| seuser строка | Часть контекста файла SELinux, относящаяся к пользователю. По умолчанию используется политика system, если применимо.Если установлено значение _default, будет использоваться часть политики user, если она доступна. | |
| skip_if_unavailable логическое |
| Если установлено значение yes, yum продолжит работу, даже если к этому репозиторию по какой-либо причине невозможно подключиться. Этот параметр следует устанавливать с осторожностью, поскольку для каждого данного задания проверяются все репозитории. |
| ssl_check_cert_permissions логическое |
| Определяет, должна ли yum проверять разрешения на пути к сертификатам репозитория (как удалённого, так и локального). Если невозможно прочитать любой из файлов, yum принудительно установит значение skip_if_unavailable в yes. Это наиболее полезно для процессов, не выполняемых от имени root, которые используют yum для репозиториев с файлами сертификатов клиента, доступными только для root. |
| sslcacert строка | Путь к каталогу, содержащему базы данных центров сертификации, которые yum должен использовать для проверки SSL-сертификатов. псевдонимы: ca_cert | |
| sslclientcert строка | Путь к SSL-сертификату клиента, который yum должен использовать для подключения к репозиториям/удалённым сайтам. псевдонимы: client_cert | |
| sslclientkey строка | Путь к SSL-ключу клиента, который yum должен использовать для подключения к репозиториям/удалённым сайтам. псевдонимы: client_key | |
| sslverify логическое |
| Определяет, должен ли yum вообще проверять SSL-сертификаты/хосты. псевдонимы: validate_certs |
| состояние строка |
| Состояние файла репозитория. |
| throttle строка | Включить ограничение пропускной способности для загрузок. Этот параметр может быть выражен как абсолютная скорость передачи данных в байтах/сек. К значению пропускной способности может быть добавлен префикс СИ (к, М или Г). | |
| timeout строка | По умолчанию: 30 | Количество секунд ожидания подключения перед истечением времени ожидания. |
| ui_repoid_vars строка | По умолчанию: "releasever basearch" | При отображении идентификатора репозитория, добавьте эти переменные yum к строке, если они используются в baseurl/etc. Переменные добавляются в указанном порядке (и если они найдены). |
| unsafe_writes логическое добавлен в 2.2 ansible.builtin |
| Влияние на использование атомарных операций для предотвращения повреждения данных или несогласованных чтений из целевого файла. По умолчанию этот модуль использует атомарные операции для предотвращения повреждения данных или несогласованных чтений из целевых файлов, но иногда системы настроены или просто неисправны таким образом, что это невозможно. Пример — смонтированные файлы Docker, которые не могут быть обновлены атомарно изнутри контейнера и могут быть записаны только ненадёжным способом. Этот параметр позволяет Ansible перейти к небезопасным методам обновления файлов, когда атомарные операции завершаются неудачно (тем не менее, он не заставляет Ansible выполнять небезопасные записи). ВАЖНО! Небезопасные записи подвержены проблемам гонок и могут привести к повреждению данных. |
| имя_пользователя строка | Имя пользователя для использования с базовой аутентификацией для репозитория или любого 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 |
| состояние строка | успех | состояние целевого объекта после выполнения Пример: есть |
Авторы
- 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.10/collections/ansible/builtin/yum_repository_module.html