.. Document meta :orphan: .. Anchors .. _ansible_collections.theforeman.foreman.job_template_module: .. Anchors: short name for ansible.builtin .. Anchors: aliases .. Title theforeman.foreman.job_template -- Manage Job Templates +++++++++++++++++++++++++++++++++++++++++++++++++++++++ .. Collection note .. note:: This plugin is part of the `theforeman.foreman collection `_ (version 2.1.2). To install it use: :code:`ansible-galaxy collection install theforeman.foreman`. To use it in a playbook, specify: :code:`theforeman.foreman.job_template`. .. version_added .. versionadded:: 1.0.0 of theforeman.foreman .. contents:: :local: :depth: 1 .. Deprecated Synopsis -------- .. Description - Manage Remote Execution Job Templates .. Aliases .. Requirements Requirements ------------ The below requirements are needed on the host that executes this module. - requests .. Options Parameters ---------- .. raw:: html
Parameter Choices/Defaults Comments
audit_comment
string
Content of the audit comment field
description_format
string
description of the job template. Template inputs can be referenced.
file_name
path
The path of a template file, that shall be imported.
Either this or template is required as a source for the Job Template "content".
job_category
string
The category the template should be assigend to
locations
list / elements=string
List of locations the entity should be assigned to
locked
boolean
    Choices:
  • no ←
  • yes
Determines whether the template shall be locked
name
string
The name of the Job Template.
If omited, will be determined from the name header of the template or the filename (in that order).
The special value "*" can be used to perform bulk actions (modify, delete) on all existing templates.
organizations
list / elements=string
List of organizations the entity should be assigned to
password
string / required
Password of the user accessing the Foreman server.
If the value is not specified in the task, the value of environment variable FOREMAN_PASSWORD will be used instead.
provider_type
string
Determines via which provider the template shall be executed
server_url
string / required
URL of the Foreman server.
If the value is not specified in the task, the value of environment variable FOREMAN_SERVER_URL will be used instead.
snippet
boolean
    Choices:
  • no
  • yes
Determines whether the template shall be a snippet
state
string
    Choices:
  • present ←
  • present_with_defaults
  • absent
State of the entity
present_with_defaults will ensure the entity exists, but won't update existing ones
template
string
The content of the Job Template.
Either this or file_name is required as a source for the Job Template "content".
template_inputs
list / elements=dictionary
The template inputs used in the Job Template
advanced
boolean
    Choices:
  • no
  • yes
Template Input is advanced
description
string
description of the Template Input
fact_name
string
Fact name to use.
Required when input_type=fact.
input_type
string / required
    Choices:
  • user
  • fact
  • variable
  • puppet_parameter
input type
name
string / required
name of the Template Input
options
list / elements=raw
Template values for user inputs. Must be an array of any type.
puppet_class_name
string
Puppet class name.
Required when input_type=puppet_parameter.
puppet_parameter_name
string
Puppet parameter name.
Required when input_type=puppet_parameter.
required
boolean
    Choices:
  • no
  • yes
Is the input required
resource_type
string
Type of the resource
value_type
string
    Choices:
  • plain
  • search
  • date
Type of the value
variable_name
string
Variable name to use.
Required when input_type=variable.
username
string / required
Username accessing the Foreman server.
If the value is not specified in the task, the value of environment variable FOREMAN_USERNAME will be used instead.
validate_certs
boolean
    Choices:
  • no
  • yes ←
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 FOREMAN_VALIDATE_CERTS will be used instead.

.. Notes .. Seealso .. Examples Examples -------- .. code-block:: yaml+jinja - name: "Create a Job Template inline" theforeman.foreman.job_template: username: "admin" password: "changeme" server_url: "https://foreman.example.com" name: A New Job Template state: present template: | <%# name: A Job Template %> rm -rf <%= input("toDelete") %> template_inputs: - name: toDelete input_type: user locations: - Gallifrey organizations: - TARDIS INC - name: "Create a Job Template from a file" theforeman.foreman.job_template: username: "admin" password: "changeme" server_url: "https://foreman.example.com" name: a new job template file_name: timeywimey_template.erb template_inputs: - name: a new template input input_type: user state: present locations: - Gallifrey organizations: - TARDIS INC - name: "remove a job template's template inputs" theforeman.foreman.job_template: username: "admin" password: "changeme" server_url: "https://foreman.example.com" name: a new job template template_inputs: [] state: present locations: - Gallifrey organizations: - TARDIS INC - name: "Delete a Job Template" theforeman.foreman.job_template: username: "admin" password: "changeme" server_url: "https://foreman.example.com" name: timeywimey state: absent - name: "Create a Job Template from a file and modify with parameter(s)" theforeman.foreman.job_template: 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 Job templates theforeman.foreman.job_template: 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 your Job Templates theforeman.foreman.job_template: server_url: "https://foreman.example.com" username: "admin" password: "changeme" state: present template: '{{ lookup("file", item.src) }}' with_filetree: '/path/to/job/templates' when: item.state == 'file' # with name set to "*" bulk actions can be performed - name: "Delete *ALL* Job Templates" theforeman.foreman.job_template: username: "admin" password: "changeme" server_url: "https://foreman.example.com" name: "*" state: absent - name: "Assign all Job Templates to the same organization(s)" theforeman.foreman.job_template: username: "admin" password: "changeme" server_url: "https://foreman.example.com" name: "*" state: present organizations: - DALEK INC - sky.net - Doc Brown's garage .. Facts .. Return values Return Values ------------- Common return values are documented :ref:`here `, the following are the fields unique to this module: .. raw:: html
Key Returned Description
entity
dictionary
success
Final state of the affected entities grouped by their type.

 
job_templates
list / elements=dictionary
success
List of job templates.

 
template_inputs
list / elements=dictionary
success
List of template inputs associated with the job template.



.. Status (Presently only deprecated) .. Authors Authors ~~~~~~~ - Manuel Bonk (@manuelbonk) ATIX AG - Matthias Dellweg (@mdellweg) ATIX AG .. Parsing errors