Documentation

set_fact - Set host facts from a task

Synopsis

This module allows setting new variables. Variables are set on a host-by-host basis just like facts discovered by the setup module. These variables will survive between plays during an Ansible run, but will not be saved across executions even if you use a fact cache.

Options

parameter required default choices comments
key_value
yes
    The set_fact module takes key=value pairs as variables to set in the playbook scope. Or alternatively, accepts complex arguments using the args: statement.

    Examples

    # Example setting host facts using key=value pairs
    - set_fact: one_fact="something" other_fact="{{ local_var }}"
    
    # Example setting host facts using complex arguments
    - set_fact:
         one_fact: something
         other_fact: "{{ local_var * 2 }}"
         another_fact: "{{ some_registered_var.results | map(attribute='ansible_facts.some_fact') | list }}"
    
    # As of 1.8, Ansible will convert boolean strings ('true', 'false', 'yes', 'no')
    # to proper boolean values when using the key=value syntax, however it is still
    # recommended that booleans be set using the complex argument style:
    - set_fact:
        one_fact: true
        other_fact: false
    

    This is a Core Module

    For more information on what this means please read Core Modules

    For help in developing on modules, should you be so inclined, please read Community Information & Contributing, Helping Testing PRs and Developing Modules.