On this page
theforeman.foreman.templates_import – Sync Templates from a repository
Note
This plugin is part of the theforeman.foreman collection (version 2.2.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.
To use it in a playbook, specify: theforeman.foreman.templates_import.
New in version 1.0.0: of theforeman.foreman
Synopsis
- Sync provisioning templates, report_templates, partition tables and job templates from external git repository or file system.
 - Based on foreman_templates plugin https://github.com/theforeman/foreman_templates.
 
Requirements
The below requirements are needed on the host that executes this module.
- requests
 
Parameters
| Parameter | Choices/Defaults | Comments | 
|---|---|---|
| associate
        
        string
         | 
      
       
  | 
      
        
        Associate to Operatingsystems, Locations and Organizations based on metadata.
         | 
     
| branch
        
        string
         | 
      
        
        Branch of the repo. Only for git-based repositories.
         | 
     |
| dirname
        
        string
         | 
      
        
        The directory within Git repo containing the templates.
         | 
     |
| filter
        
        string
         | 
      
        
        Sync only templates with name matching this regular expression, after prefix was applied.
        
       
        Case-insensitive, snippets are not filtered.
         | 
     |
| force
        
        boolean
         | 
      
       
  | 
      
        
        Update templates that are locked.
         | 
     
| locations
        
        list / elements=string
         | 
      
        
        List of locations the entity should be assigned to
         | 
     |
| lock
        
        boolean
         | 
      
       
  | 
      
        
        Lock imported templates.
         | 
     
| negate
        
        boolean
         | 
      
       
  | 
      
        
        Negate the filter condition.
         | 
     
| 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.
        | 
     |
| prefix
        
        string
         | 
      
        
        Adds specified string to beginning of all imported templates that do not yet have that prefix.
         | 
     |
| repo
        
        string
         | 
      
        
        Filesystem path or repo (with protocol), for example /tmp/dir or git://example.com/repo.git or https://example.com/repo.git.
         | 
     |
| 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.
        | 
     |
| 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
         | 
      
       
  | 
      
        
        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.
        | 
     
| verbose
        
        boolean
         | 
      
       
  | 
      
        
        Add template reports to the output.
         | 
     
Notes
Note
- Due to a bug in the foreman_templates plugin, this module won’t report 
changed=truewhen the only change is the Organization/Location association of the imported templates. Please see https://projects.theforeman.org/issues/29534 for details. - Default values for all module options can be set using theforeman.foreman.setting for TemplateSync category or on the settings page in WebUI.
 
Examples
- name: Sync templates from git repo
  theforeman.foreman.templates_import:
    repo: https://github.com/theforeman/community-templates.git
    branch: 1.24-stable
    associate: new
    server_url: "https://foreman.example.com"
    username: "admin"
    password: "changeme"
  Return Values
Common return values are documented here, the following are the fields unique to this module:
| Key | Returned | Description | |
|---|---|---|---|
| message
        
        dictionary
         | 
      success | 
        
        Information about the import.
          | 
     |
| branch
        
        string
         | 
      success | 
        
        Branch used in the repository.
          | 
     |
| repo
        
        string
         | 
      success | 
        
        Repository, the templates were imported from.
          | 
     |
| report
        
        dictionary
         | 
      success | 
        
        Report of the import.
          | 
     |
| changed
        
        list / elements=string
         | 
      success | 
        
        List of templates that have been updated.
          | 
     |
| new
        
        list / elements=string
         | 
      success | 
        
        List of templates that have been created.
          | 
     |
| templates
        
        dictionary
         | 
      success | 
        
        Final state of the templates.
          | 
     |
Authors
- Anton Nesterov (@nesanton)
 
© 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/theforeman/foreman/templates_import_module.html