apt_repository – Add and remove APT repositories

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
-
Override the distribution codename to use for PPA repositories. Should usually only be set when working with a PPA on a non-Ubuntu target (e.g. Debian or Mint)
filename
-
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.
mode
-
Default:
"0644"
The octal mode for newly created files in sources.list.d
repo
- / required
A source string for the repository.
state
-
    Choices:
  • absent
  • present ←
A source string state.
update_cache
boolean
    Choices:
  • no
  • yes ←
Run the equivalent of apt-get update when a change occurs. Cache updates are run after making changes.
validate_certs
boolean
    Choices:
  • 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.

Examples

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

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

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

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

# Add nginx stable repository from PPA and install its signing key.
# On Ubuntu target:
- apt_repository:
    repo: ppa:nginx/stable

# On Debian target
- apt_repository:
    repo: 'ppa:nginx/stable'
    codename: trusty

Status

Red Hat Support

More information about Red Hat’s support of this module is available from this Red Hat Knowledge Base article.

Authors

  • Alexander Saltanov (@sashka)

Hint

If you notice any issues in this documentation, you can edit this document to improve it.