On this page
theforeman.foreman.operatingsystem – Manage Operating Systems
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.operatingsystem.
New in version 1.0.0: of theforeman.foreman
Synopsis
- Manage Operating Systems
 
Requirements
The below requirements are needed on the host that executes this module.
- requests
 
Parameters
| Parameter | Choices/Defaults | Comments | |
|---|---|---|---|
| architectures
        
        list / elements=string
         | 
      
        
        architectures, the operating system can be installed on
         | 
     ||
| description
        
        string
         | 
      
        
        Description of the Operating System
         | 
     ||
| major
        
        string
         | 
      
        
        major version of the Operating System
         | 
     ||
| media
        
        list / elements=string
         | 
      
        
        list of installation media
         | 
     ||
| minor
        
        string
         | 
      
        
        minor version of the Operating System
         | 
     ||
| name
        
        string / required
         | 
      
        
        Name of the Operating System
         | 
     ||
| os_family
        
        string
         | 
      
       
  | 
      
        
        Distribution family of the Operating System
        
       aliases: family  | 
     |
| parameters
        
        list / elements=dictionary
         | 
      
        
        Operating System specific host parameters
         | 
     ||
| name
        
        string / required
         | 
      
        
        Name of the parameter
         | 
     ||
| parameter_type
        
        string
         | 
      
       
  | 
      
        
        Type of the parameter
         | 
     |
| value
        
        raw / required
         | 
      
        
        Value of the parameter
         | 
     ||
| 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.
        | 
     ||
| password_hash
        
        string
         | 
      
       
  | 
      
        
        hashing algorithm for passwd
         | 
     |
| provisioning_templates
        
        list / elements=string
         | 
      
        
        List of provisioning templates that are associated with the operating system.
        
       
        Specify the full list of template names you want to associate with your OS.
        
       
        For example ["Kickstart default", "Kickstart default finish", "Kickstart default iPXE", "custom"].
        
       
        After specifying the template associations, you can set the default association in
        
       
        the theforeman.foreman.os_default_template module.
         | 
     ||
| ptables
        
        list / elements=string
         | 
      
        
        list of partitioning tables
         | 
     ||
| release_name
        
        string
         | 
      
        
        Release name of the operating system (recommended for debian)
         | 
     ||
| 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.
        | 
     ||
| state
        
        string
         | 
      
       
  | 
      
        
        State of the entity
        
       present_with_defaults will ensure the entity exists, but won't update existing ones
        | 
     |
| updated_name
        
        string
         | 
      
        
        New operating system name. When this parameter is set, the module will not be idempotent.
         | 
     ||
| 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.
        | 
     |
Examples
- name: "Create an Operating System"
  theforeman.foreman.operatingsystem:
    username: "admin"
    password: "changeme"
    server_url: "https://foreman.example.com"
    name: Debian
    release_name: stretch
    family: Debian
    major: 9
    parameters:
      - name: additional-packages
        value: python vim
    state: present
- name: "Ensure existence of an Operating System (provide default values)"
  theforeman.foreman.operatingsystem:
    username: "admin"
    password: "changeme"
    server_url: "https://foreman.example.com"
    name: Centos
    family: Redhat
    major: 7
    password_hash: SHA256
    state: present_with_defaults
- name: "Delete an Operating System"
  theforeman.foreman.operatingsystem:
    username: "admin"
    password: "changeme"
    server_url: "https://foreman.example.com"
    name: Debian
    family: Debian
    major: 9
    state: absent
  Return Values
Common return values are documented here, the following are the fields unique to this module:
| Key | Returned | Description | |
|---|---|---|---|
| entity
        
        dictionary
         | 
      success | 
        
        Final state of the affected entities grouped by their type.
          | 
     |
| operatinsystems
        
        list / elements=dictionary
         | 
      success | 
        
        List of operatinsystems.
          | 
     |
Authors
- Matthias M Dellweg (@mdellweg) ATIX AG
 - Bernhard Hopfenmüller (@Fobhep) ATIX AG
 
© 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/operatingsystem_module.html