An ansible collection for managing Pulp 2.x resources.
This collection includes modules to adjust certain resources within a Pulp server. It is compatible with Pulp 2 and incompatible with Pulp 3.
All operations are performed using HTTP requests to Pulp's API.
This collection is not currently published on galaxy.ansible.com. It may be installed directly from the git repo:
ansible-galaxy collection install git+https://github.com/release-engineering/ansible-pulp2-api.git,main
If you are using an older version of ansible which does not support installing from git, you can install from a tarball of the latest stable release:
ansible-galaxy collection install https://github.com/release-engineering/ansible-pulp2-api/releases/latest/download/collection.tar.gz
Note: this documentation is a summary only. Complete docs may be reviewed using
the ansible-doc
tool if the collection is installed.
These arguments are supported by all modules:
Argument | Notes |
---|---|
pulp_url | Base URL of the Pulp service, including trailing "/pulp/api/v2". |
validate_certs | As for ansible.builtin.uri. |
url_username | As for ansible.builtin.uri. |
url_password | As for ansible.builtin.uri. |
http_agent | As for ansible.builtin.uri. |
force_basic_auth | As for ansible.builtin.uri. |
follow_redirects | As for ansible.builtin.uri. |
client_cert | As for ansible.builtin.uri. |
client_key | As for ansible.builtin.uri. |
Create, update or delete a Pulp user.
Argument | Notes |
---|---|
login | Unique login for the user account. |
state | absent or present . |
name | A name for the user. |
password | Password for the account; if unset or blank, password is not managed. |
randomize_password | If True , a strong random password will be set. |
Create, update or delete a Pulp role.
Argument | Notes |
---|---|
id | Unique identifier for the role. |
state | absent or present . |
display_name | Arbitrary human-readable name for the role. |
description | Arbitrary human-readable description for the role. |
permissions | A resource => permission mapping associated with the role. |
users | List of users associated with the role; if omitted, users are not managed. |
- hosts: localhost
collections:
- release_engineering.pulp2_api
tasks:
# Create accounts for alice & bob.
- name: Ensure user
pulp_user:
pulp_url: "https://pulp.example.com/pulp/api/v2"
client_cert: pulpadmin.crt
client_key: pulpadmin.key
login: "{{ item }}"
loop: ["bob", "alice"]
# Ensure alice & bob can manipulate repositories & repo groups.
- name: Ensure role
pulp_role:
pulp_url: "https://pulp.example.com/pulp/api/v2"
client_cert: pulpadmin.crt
client_key: pulpadmin.key
id: repo-manager
permissions:
"/v2/repositories": ["CREATE", "UPDATE", "EXECUTE", "DELETE"]
"/v2/repo_groups": ["CREATE", "UPDATE", "EXECUTE", "DELETE"]
users: ["bob", "alice"]
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.