You are reading an unmaintained version of the Ansible documentation. Unmaintained Ansible versions can contain unfixed security vulnerabilities (CVE). Please upgrade to a maintained version. See the latest Ansible documentation.
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 be available to subsequent plays during an ansible-playbook run, but will not be saved across executions even if you use a fact cache.
This boolean indicates if the facts set will also be added to the fact cache, if fact caching is enabled.
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.
# Example setting host facts using key=value pairs, note that this always creates strings or booleans-set_fact:one_fact="something" other_fact="{{local_var}}"# Example setting host facts using complex arguments-set_fact:one_fact:somethingother_fact:"{{local_var*2}}"another_fact:"{{some_registered_var.results|map(attribute='ansible_facts.some_fact')|list}}"# Example setting facts so that they will be persisted in the fact cache-set_fact:one_fact:somethingother_fact:"{{local_var*2}}"cacheable:true# 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:trueother_fact:false
This module is flagged as stableinterface which means that the maintainers for this module guarantee that no backward incompatible interface changes will be made.
For more information about Red Hat’s this support of this module, please
refer to this knowledge base article<https://access.redhat.com/articles/rhel-top-support-policies>