ansible.builtin.apt_repository – Add and remove APT repositories

From Get docs
Ansible/docs/2.11/collections/ansible/builtin/apt repository module


ansible.builtin.apt_repository – Add and remove APT repositories

Note

This module is part of ansible-base and included in all Ansible installations. In most cases, you can use the short module name apt_repository even without specifying the collections: keyword. Despite that, we recommend you use the FQCN for easy linking to the module documentation and to avoid conflicting with other collections that may have the same module name.


New in version 0.7: of ansible.builtin


Synopsis

  • Add or remove an APT repositories in Ubuntu and Debian.

Requirements

The below requirements are needed on the host that executes this module.

  • python-apt (python 2)
  • python3-apt (python 3)

Parameters

Parameter Choices/Defaults Comments

codename

string

added in 2.3 of ansible.builtin

Override the distribution codename to use for PPA repositories. Should usually only be set when working with a PPA on a non-Ubuntu target (for example, Debian or Mint).

filename

string

added in 2.1 of ansible.builtin

Sets the name of the source list file in sources.list.d. Defaults to a file name based on the repository source url. The .list extension will be automatically added.

install_python_apt

boolean

  • no
  • yes

Whether to automatically try to install the Python apt library or not, if it is not already installed. Without this library, the module does not work.

Runs apt-get install python-apt for Python 2, and apt-get install python3-apt for Python 3.

Only works with the system Python 2 or Python 3. If you are using a Python on the remote that is not the system Python, set install_python_apt=false and ensure that the Python apt library for your Python version is installed some other way.

mode

raw

added in 1.6 of ansible.builtin

The octal mode for newly created files in sources.list.d.

Default is what system uses (probably 0644).

repo

string / required

A source string for the repository.

state

string

  • absent
  • present

A source string state.

update_cache

boolean

  • no
  • yes

Run the equivalent of apt-get update when a change occurs. Cache updates are run after making changes.


aliases: update-cache

update_cache_retries

integer

added in 2.10 of ansible.builtin

Default:

5

Amount of retries if the cache update fails. Also see update_cache_retry_max_delay.

update_cache_retry_max_delay

integer

added in 2.10 of ansible.builtin

Default:

12

Use an exponential backoff delay for each retry (see update_cache_retries) up to this max delay in seconds.

validate_certs

boolean

added in 1.8 of ansible.builtin

  • no
  • yes

If no, SSL certificates for the target repo will not be validated. This should only be used on personally controlled sites using self-signed certificates.



Notes

Note

  • This module works on Debian, Ubuntu and their derivatives.
  • This module supports Debian Squeeze (version 6) as well as its successors.
  • Supports check_mode.


Examples

- name: Add specified repository into sources list
  ansible.builtin.apt_repository:
    repo: deb http://archive.canonical.com/ubuntu hardy partner
    state: present

- name: Add specified repository into sources list using specified filename
  ansible.builtin.apt_repository:
    repo: deb http://dl.google.com/linux/chrome/deb/ stable main
    state: present
    filename: google-chrome

- name: Add source repository into sources list
  ansible.builtin.apt_repository:
    repo: deb-src http://archive.canonical.com/ubuntu hardy partner
    state: present

- name: Remove specified repository from sources list
  ansible.builtin.apt_repository:
    repo: deb http://archive.canonical.com/ubuntu hardy partner
    state: absent

- name: Add nginx stable repository from PPA and install its signing key on Ubuntu target
  ansible.builtin.apt_repository:
    repo: ppa:nginx/stable

- name: Add nginx stable repository from PPA and install its signing key on Debian target
  ansible.builtin.apt_repository:
    repo: 'ppa:nginx/stable'
    codename: trusty

Authors

  • Alexander Saltanov (@sashka)

© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/ansible/builtin/apt_repository_module.html