community.general.zypper_repository – Add and remove Zypper repositories

Note

This plugin is part of the community.general collection (version 3.8.1).

You might already have this collection installed if you are using the ansible package. It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.

To install it, use: ansible-galaxy collection install community.general.

To use it in a playbook, specify: community.general.zypper_repository.

Synopsis

  • Add or remove Zypper repositories on SUSE and openSUSE

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
boolean
    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
boolean
    Choices:
  • no
  • yes
Enable autorefresh of the repository.

aliases: refresh
description
string
A description of the repository
disable_gpg_check
boolean
    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
boolean
    Choices:
  • no
  • yes
Set repository to enabled (or disabled).
name
string
A name for the repository. Not required when adding repofiles.
overwrite_multiple
boolean
    Choices:
  • no
  • yes
Overwrite multiple repository entries, if repositories with both name and URL already exist.
priority
integer
Set priority of repository. Packages will always be installed from the repository with the smallest priority number.
Needs zypper version >= 1.12.25.
repo
string
URI of the repository or .repo file. Required when state=present.
runrefresh
boolean
    Choices:
  • no
  • yes
Refresh the package list of the given repository.
Can be used with repo=* to refresh all repositories.
state
string
    Choices:
  • absent
  • present
A source string state.

Examples

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

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

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

- name: Refresh all repos
  community.general.zypper_repository:
    repo: '*'
    runrefresh: yes

- name: Add a repo and add its gpg key
  community.general.zypper_repository:
    repo: 'http://download.opensuse.org/repositories/systemsmanagement/openSUSE_Leap_42.1/'
    auto_import_keys: yes

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

Authors

  • Matthias Vogelgesang (@matze)

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