New Ansible module Copr
We created a new Ansible module for Copr, which was added to the community general collection in Ansible galaxy during the release of the latest version 2.0.0. The module code can be found in the GitHub repository of the mentioned collection.
Synopsis
This module can enable, disable or remove the specified repository.
Quick setup
To install a collection hosted in Galaxy:
ansible-galaxy collection install community.general
You can also install the ansible-collection-community-general
package with our module as soon as the Fedora package version is updated to version 2.0 (currently available version is 1.0):
dnf install ansible-collection-community-general
Or you can use the tarball (version 2.0.0):
ansible-galaxy collection install https://github.com/ansible-collections/community.general/archive/2.0.0.tar.gz -p ./collections
Module usage
To use it in a playbook, specify: community.general.copr
.
Examples of use in a playbook
Use state enabled
to enable the Copr project, then use the name of the user/project and the chroot you wish to enable.
- name: Enable project Test of the user schlupov
community.general.copr:
host: copr.fedorainfracloud.org
state: enabled
name: schlupov/Test
chroot: fedora-31-x86_64
Use state absent
to remove the Copr project. The host is optional and copr.fedorainfracloud.org is used as the default. Likewise, chroot is not required, so if you use the module on fedora 32 and the x86_64 architecture, fedora-32-x86_64 will be used as chroot option.
- name: Remove project copr of the group copr
community.general.copr:
state: absent
name: @copr/copr
Use state disabled
to disable the Copr project. The repository can be seen in the /etc/yum.repos.d/ directory, but is set to disabled. On the other hand, in case of state absent, the repo file is completely removed from the system.
- name: Disable project copr of the group copr
community.general.copr:
state: disabled
name: @copr/copr
chroot: fedora-32-x86_64
Parameters
Parameter | Choices/Defaults | Comments | Required |
---|---|---|---|
host | Default: “copr.fedorainfracloud.org” | The Copr host to work with | No |
protocol | Default: “https” | This indicate which protocol to use with the host | No |
name | Copr project name, for example @copr/copr-dev | Yes | |
state | Default: “enabled”, Choices: “enabled”, “disabled”, “absent” | Whether to set this project as enabled, disabled or absent | No |
chroot | Default: your “os-os_version-architecture” | The name of the chroot that you want to enable/disable/remove in the project, for example epel-7-x86_64. Default chroot is determined by the operating system, version of the operating system, and architecture on which the module is run | No |