zypper_repository - Add and remove Zypper repositories

New in version 1.4.

Synopsis

Requirements

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

  • zypper >= 1.0 # included in openSuSE >= 11.1 or SuSE Linux Enterprise Server/Desktop >= 11.0
  • python-xml

Parameters

Parameter Choices/Defaults Comments
auto_import_keys
bool

(added in 2.2)
    Choices:
  • no ←
  • yes
Automatically import the gpg signing key of the new or changed repository.
Has an effect only if state is present. Has no effect on existing (unchanged) repositories or in combination with absent.
Implies runrefresh.
Only works with .repo files if `name` is given explicitly.
autorefresh
bool
    Choices:
  • no
  • yes ←
Enable autorefresh of the repository.

aliases: refresh
description
A description of the repository
disable_gpg_check
bool
    Choices:
  • no ←
  • yes
Whether to disable GPG signature checking of all packages. Has an effect only if state is present.
Needs zypper version >= 1.6.2.
enabled
bool

(added in 2.2)
    Choices:
  • no
  • yes ←
Set repository to enabled (or disabled).
name
A name for the repository. Not required when adding repofiles.
overwrite_multiple
bool

(added in 2.1)
    Choices:
  • no ←
  • yes
Overwrite multiple repository entries, if repositories with both name and URL already exist.
priority
(added in 2.1)
Set priority of repository. Packages will always be installed from the repository with the smallest priority number.
Needs zypper version >= 1.12.25.
repo
URI of the repository or .repo file. Required when state=present.
runrefresh
bool

(added in 2.2)
    Choices:
  • no ←
  • yes
Refresh the package list of the given repository.
Can be used with repo=* to refresh all repositories.
state
    Choices:
  • absent
  • present ←
A source string state.

Examples

# Add NVIDIA repository for graphics drivers
- zypper_repository:
    name: nvidia-repo
    repo: 'ftp://download.nvidia.com/opensuse/12.2'
    state: present

# Remove NVIDIA repository
- zypper_repository:
    name: nvidia-repo
    repo: 'ftp://download.nvidia.com/opensuse/12.2'
    state: absent

# Add python development repository
- zypper_repository:
    repo: 'http://download.opensuse.org/repositories/devel:/languages:/python/SLE_11_SP3/devel:languages:python.repo'

# Refresh all repos
- zypper_repository:
    repo: '*'
    runrefresh: yes

# Add a repo and add it's gpg key
- zypper_repository:
    repo: 'http://download.opensuse.org/repositories/systemsmanagement/openSUSE_Leap_42.1/'
    auto_import_keys: yes

# Force refresh of a repository
- zypper_repository:
    repo: 'http://my_internal_ci_repo/repo'
    name: my_ci_repo
    state: present
    runrefresh: yes

Status

This module is flagged as preview which means that it is not guaranteed to have a backwards compatible interface.

Maintenance

This module is flagged as community which means that it is maintained by the Ansible Community. See Module Maintenance & Support for more info.

For a list of other modules that are also maintained by the Ansible Community, see here.

Author

  • Matthias Vogelgesang (@matze)

Hint

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