theforeman.foreman.foreman_smart_class_parameter (0.8.1) — module

Manage Foreman Smart Class Parameters using Foreman API

Authors: Baptiste Agasse (@bagasse)

preview | supported by community

Install collection

Install with ansible-galaxy collection install theforeman.foreman:==0.8.1


Add to requirements.yml

  collections:
    - name: theforeman.foreman
      version: 0.8.1

Description

Update Foreman Smart Class Parameters using Foreman API. Smart Class Paramters are created/deleted at on puppet classes import

and cannot be created or deleted via Foreman API.


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: "Update prometheus::server alertmanagers_config param default value"
  foreman_smart_class_parameter:
    puppetclass_name: "prometheus::server"
    parameter: alertmanagers_config
    override: true
    required: true
    default_value: /etc/prometheus/alert.yml
    server_url: "https://foreman.example.com"
    username: "admin"
    password: "secret"
    state: present
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: "Update prometheus::server alertmanagers_config param default value"
  foreman_smart_class_parameter:
    puppetclass_name: "prometheus::server"
    parameter: alertmanagers_config
    override: true
    override_value_order:
      - fqdn
      - hostgroup
      - domain
    required: true
    default_value: /etc/prometheus/alert.yml
    server_url: "https://foreman.example.com"
    username: "admin"
    password: "secret"
    override_values:
      - match: domain=example.com
        value: foo
      - match: domain=foo.example.com
        omit: true
    state: present

Inputs

    
omit:
    description:
    - Foreman will not send this parameter in classification output.
    - Puppet will use the value defined in the Puppet manifest for this parameter.
    type: bool

state:
    choices:
    - present
    - present_with_defaults
    default: present
    description: State of the entity.
    type: str

override:
    description: Whether the smart class parameter value is managed by Foreman
    type: bool

password:
    description: Password of the user accessing the Foreman server
    required: true
    type: str

required:
    description: If true, will raise an error if there is no default value and no matcher
      provide a value.
    type: bool

username:
    description: Username accessing the Foreman server
    required: true
    type: str

parameter:
    description: Name of the parameter
    required: true
    type: str

server_url:
    description: URL of the Foreman server
    required: true
    type: str

description:
    description: Description of the Smart Class Parameter
    type: str

hidden_value:
    description: When enabled the parameter is hidden in the UI.
    type: bool

default_value:
    description: Value to use by default.
    type: raw

merge_default:
    description: Include default value when merging all matching values.
    type: bool

parameter_type:
    choices:
    - string
    - boolean
    - integer
    - real
    - array
    - hash
    - yaml
    - json
    - none
    description: Types of variable values. If C(none), set the parameter type to empty
      value.
    type: str

validate_certs:
    aliases:
    - verify_ssl
    default: true
    description: Whether or not to verify the TLS certificates of the Foreman server
    type: bool

validator_rule:
    description: Used to enforce certain values for the parameter values.
    type: str

validator_type:
    choices:
    - regexp
    - list
    description: Types of validation values.
    type: str

merge_overrides:
    description: Merge all matching values (only array/hash type).
    type: bool

override_values:
    description: Value overrides
    elements: dict
    required: false
    suboptions:
      match:
        description: Override match
        required: true
        type: str
      omit:
        description: Foreman will not send this parameter in classification output, replaces
          use_puppet_default.
        type: bool
      value:
        description: Override value, required if omit is false
        type: raw
    type: list

avoid_duplicates:
    description: Remove duplicate values (only array type)
    type: bool

puppetclass_name:
    description: Name of the puppetclass that own the parameter
    required: true
    type: str

override_value_order:
    description: The order in which values are resolved.
    elements: str
    type: list