Spec-Zone.ru › Ansible 2.5

apt — Управляет пакетами apt

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

Обзор

  • Управляет пакетами apt (такими как для Debian/Ubuntu).

Требования

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

  • python-apt (python 2)
  • python3-apt (python 3)
  • aptitude (до версии 2.4)

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
allow_unauthenticated
(добавлено в 2.1)
    Варианты:
  • нет ←
  • да
Игнорировать, если пакеты не могут быть проверены. Это полезно для среды начальной настройки, которая управляет собственной настройкой apt-ключа.
autoclean
(добавлено в 2.4)
    Варианты:
  • нет ←
  • да
Если yes, очищает локальный репозиторий от полученных файлов пакетов, которые больше нельзя загрузить.
autoremove
(добавлено в 2.1)
    Варианты:
  • нет ←
  • да
Если yes, удаляет неиспользуемые зависимые пакеты для всех состояний модуля, кроме build-dep. Также может использоваться в качестве единственного параметра.
До версии 2.4, autoclean также был алиасом для autoremove, теперь это отдельный командлет. Смотрите документацию для получения дополнительной информации.
cache_valid_time По умолчанию:
0
Обновить кэш apt, если он старше, чем cache_valid_time. Этот параметр задается в секундах. Начиная с Ansible 2.4, это подразумевает установку update_cache, если оно установлено.
deb
(добавлено в 1.6)
Путь к пакету .deb на удаленной машине.
Если в пути есть ://, Ansible попытается загрузить deb перед установкой. (Версия добавлена 2.1)
default_release
Соответствует параметру -t для apt и устанавливает приоритеты пинов.
dpkg_options По умолчанию:
force-confdef,force-confold
Добавить опции dpkg к команде apt. По умолчанию — '-o "Dpkg::Options::=--force-confdef" -o "Dpkg::Options::=--force-confold"'
Опции должны быть перечислены через запятую.
force
    Варианты:
  • нет ←
  • да
Соответствует параметру --force-yes для apt-get и подразумевает allow_unauthenticated: yes.
Этот параметр отключит проверку подписей пакетов и сертификатов веб-серверов, с которых они загружаются.
Этот параметр *не* эквивалентен передаче флага -f к apt-get в командной строке
**Это деструктивное действие, которое может повредить вашу систему, и его следует использовать крайне редко.** Подробнее см. man apt-get.
force_apt_get
(добавлено в 2.4)
    Варианты:
  • нет ←
  • да
Принудительное использование apt-get вместо aptitude
install_recommends
    Варианты:
  • нет
  • да
Соответствует параметру --no-install-recommends для apt. yes устанавливает рекомендуемые пакеты. no не устанавливает рекомендуемые пакеты. По умолчанию Ansible будет использовать те же значения, что и операционная система. Рекомендуемые пакеты никогда не устанавливаются.

алиасы: install-recommends
name
Список имён пакетов, например, foo, или указание пакета с версией, например, foo=1.0. Также поддерживаются маски имен (fnmatch) типа apt* и маски версий типа foo=1.0*.

алиасы: package, pkg
only_upgrade
(добавлено в 2.1)
    Варианты:
  • нет ←
  • да
Только обновление пакета, если он уже установлен.
purge
    Варианты:
  • нет ←
  • да
Принудительно очистит конфигурационные файлы, если состояние модуля установлено как absent.
state
    Варианты:
  • absent
  • build-dep
  • latest
  • present ←
Указывает желаемое состояние пакета. latest гарантирует, что установлена последняя версия. build-dep гарантирует, что установлены зависимости для сборки пакета.
update_cache
    Варианты:
  • нет ←
  • да
Выполнить эквивалент apt-get update перед операцией. Может выполняться как часть установки пакета, так и в качестве отдельного шага.
upgrade
    Варианты:
  • dist
  • full
  • нет ←
  • safe
  • да
Если да или safe, выполняет безопасное обновление aptitude.
Если full, выполняет полное обновление aptitude.
Если dist, выполняет apt-get dist-upgrade.
Примечание: Это не обновляет конкретный пакет, для этого используйте state=latest.
Примечание: С версии 2.4, apt-get используется как резервный вариант, если aptitude отсутствует.

Примечания

Примечание

  • Три режима обновления (full, safe и его псевдоним yes) требовали aptitude до версии 2.3, начиная с 2.4, apt-get используется как резервный вариант.
  • apt по умолчанию запускает недавно установленные службы; это то, что делает базовое средство; для предотвращения этого можно установить переменную окружения RUNLEVEL в значение 1.
  • Командная строка apt-get поддерживает неявные совпадения с регулярными выражениями, но мы этого не делаем, так как это может пропустить ошибки (если вы ошибочно наберете foo вместо fo, apt-get установит пакеты, содержащие «fo» в своём имени, с предупреждением и запросом на подтверждение у пользователя. Поскольку у нас нет предупреждений и запросов перед установкой, мы не допускаем этого. Используйте явное сопоставление fnmatch, если вам нужно использование подстановочных символов)
  • При использовании с loop:, каждый пакет обрабатывается индивидуально; гораздо эффективнее передать список напрямую параметру name.

Примеры

- name: Update repositories cache and install "foo" package
  apt:
    name: foo
    update_cache: yes

- name: Install apache service but avoid starting it immediately
  apt: name=apache2 state=present
  environment:
    RUNLEVLEL: 1

- name: Remove "foo" package
  apt: name=foo state=absent

- name: Install the package "foo"
  apt:
    name: foo
    state: present

- name: Install the version '1.00' of package "foo"
  apt:
    name: foo=1.00
    state: present

- name: Update the repository cache and update package "nginx" to latest version using default release squeeze-backport
  apt:
    name: nginx
    state: latest
    default_release: squeeze-backports
    update_cache: yes

- name: Install latest version of "openjdk-6-jdk" ignoring "install-recommends"
  apt:
    name: openjdk-6-jdk
    state: latest
    install_recommends: no

- name: Upgrade all packages to the latest version
  apt:
    name: "*"
    state: latest

- name: Update all packages to the latest version
  apt:
    upgrade: dist

- name: Run the equivalent of "apt-get update" as a separate step
  apt:
    update_cache: yes

- name: Only run "update_cache=yes" if the last one is more than 3600 seconds ago
  apt:
    update_cache: yes
    cache_valid_time: 3600

- name: Pass options to dpkg on run
  apt:
    upgrade: dist
    update_cache: yes
    dpkg_options: 'force-confold,force-confdef'

- name: Install a .deb package
  apt:
    deb: /tmp/mypackage.deb

- name: Install the build dependencies for package "foo"
  apt:
    pkg: foo
    state: build-dep

- name: Install a .deb package from the internet.
  apt:
    deb: https://example.com/python-ppq_0.1-1_all.deb

- name: Remove useless packages from the cache
  apt:
    autoclean: yes

- name: Remove dependencies that are no longer required
  apt:
    autoremove: yes

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

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

Ключ Возвращаемое значение Описание
cache_update_time
int
успех, в некоторых случаях
время последнего обновления кэша (0, если неизвестно)

Пример:
1425828348000
cache_updated
boolean
успех, в некоторых случаях
обновлен ли кэш или нет

Пример:
True
stderr
строка
успех, при необходимости
вывод ошибок apt

Пример:
AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to ...
stdout
строка
успех, при необходимости
вывод apt

Пример:
Reading package lists... Building dependency tree... Reading state information... The following extra packages will be installed: apache2-bin ...


Статус

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

Поддержка

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

Автор

  • Matthew Williams (@mgwilliams)

Подсказка

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

© 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/apt_module.html

Spec-Zone.ru

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