theforeman.foreman.partition_table module – Manage Partition Table Templates
Note
This module is part of the theforeman.foreman collection (version 3.11.0).
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 theforeman.foreman
.
You need further requirements to be able to use this module,
see Requirements for details.
To use it in a playbook, specify: theforeman.foreman.partition_table
.
New in theforeman.foreman 1.0.0
Synopsis
Manage Partition Table Templates
Requirements
The below requirements are needed on the host that executes this module.
requests
Parameters
Parameter |
Comments |
---|---|
The path of a template file, that shall be imported. Either this or layout is required as a source for the Partition Template “content”. |
|
The content of the Partitioning Table Template Either this or file_name is required as a source for the Partition Template “content”. |
|
List of locations the entity should be assigned to |
|
Determines whether the template shall be locked Choices:
|
|
The name of the Partition Table. If omited, will be determined from the The special value “*” can be used to perform bulk actions (modify, delete) on all existing Partition Tables. |
|
List of organizations the entity should be assigned to |
|
The OS family the template shall be assigned with. Choices:
|
|
Password of the user accessing the Foreman server. If the value is not specified in the task, the value of environment variable |
|
URL of the Foreman server. If the value is not specified in the task, the value of environment variable |
|
State of the entity
Choices:
|
|
New name of the template. When this parameter is set, the module will not be idempotent. |
|
Username accessing the Foreman server. If the value is not specified in the task, the value of environment variable |
|
Whether or not to verify the TLS certificates of the Foreman server. If the value is not specified in the task, the value of environment variable Choices:
|
Attributes
Attribute |
Support |
Description |
---|---|---|
Support: full |
Can run in check_mode and return changed status prediction without modifying the entity |
|
Support: full |
Will return details on what has changed (or possibly needs changing in check_mode), when in diff mode |
Examples
# Keep in mind, that in this case, the inline parameters will be overwritten
- name: "Create a Partition Table inline"
theforeman.foreman.partition_table:
username: "admin"
password: "changeme"
server_url: "https://foreman.example.com"
name: A New Partition Template
state: present
layout: |
<%#
name: A Partition Template
%>
zerombr
clearpart --all --initlabel
autopart
locations:
- Gallifrey
organizations:
- TARDIS INC
- name: "Create a Partition Template from a file"
theforeman.foreman.partition_table:
username: "admin"
password: "changeme"
server_url: "https://foreman.example.com"
file_name: timeywimey_template.erb
state: present
locations:
- Gallifrey
organizations:
- TARDIS INC
- name: "Delete a Partition Template"
theforeman.foreman.partition_table:
username: "admin"
password: "changeme"
server_url: "https://foreman.example.com"
name: timeywimey
layout: |
<%#
dummy:
%>
state: absent
- name: "Create a Partition Template from a file and modify with parameter(s)"
theforeman.foreman.partition_table:
username: "admin"
password: "changeme"
server_url: "https://foreman.example.com"
file_name: timeywimey_template.erb
name: Wibbly Wobbly Template
state: present
locations:
- Gallifrey
organizations:
- TARDIS INC
# Providing a name in this case wouldn't be very sensible.
# Alternatively make use of with_filetree to parse recursively with filter.
- name: "Parsing a directory of partition templates"
theforeman.foreman.partition_table:
username: "admin"
password: "changeme"
server_url: "https://foreman.example.com"
file_name: "{{ item }}"
state: present
locations:
- SKARO
organizations:
- DALEK INC
with_fileglob:
- "./arsenal_templates/*.erb"
# If the templates are stored locally and the ansible module is executed on a remote host
- name: Ensure latest version of all Ptable Community Templates
theforeman.foreman.partition_table:
server_url: "https://foreman.example.com"
username: "admin"
password: "changeme"
state: present
layout: '{{ lookup("file", item.src) }}'
with_filetree: '/path/to/partition/tables'
when: item.state == 'file'
# with name set to "*" bulk actions can be performed
- name: "Delete *ALL* partition tables"
theforeman.foreman.partition_table:
username: "admin"
password: "changeme"
server_url: "https://foreman.example.com"
name: "*"
state: absent
- name: "Assign all partition tables to the same organization(s)"
theforeman.foreman.partition_table:
username: "admin"
password: "changeme"
server_url: "https://foreman.example.com"
name: "*"
state: present
organizations:
- DALEK INC
- sky.net
- Doc Brown's garage
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key |
Description |
---|---|
Final state of the affected entities grouped by their type. Returned: success |
|
List of partition tables. Returned: success |