diff --git a/set_fact b/set_fact new file mode 100644 index 00000000000..62dfcffba16 --- /dev/null +++ b/set_fact @@ -0,0 +1,54 @@ +#!/usr/bin/python +# -*- coding: utf-8 -*- + +# Copyright 2013 Dag Wieers +# +# This file is part of Ansible +# +# Ansible is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# Ansible is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with Ansible. If not, see . + +DOCUMENTATION = ''' +--- +author: Dag Wieers +module: set_fact +short_description: Set host facts from a task +description: + - This module allows you to set host facts from a task. This can be + useful for setting facts conditionally or allows to 'export' play + variables set by 'vars:' or 'vars_files:' to the playbook scope . + - In comparison to variables defined in the playbook, global variables + can be set conditionally (like any module) and are available in other + plays. +options: + key_value: + description: + - The C(set_fact) module takes key=value pairs as variables to set + in the playbook scope. Or alternatively, accepts complex arguments + using the C(args:) statement. + required: true + default: null +version_added: "1.2" +examples: + - description: "Example setting host facts using key=value pairs" + code: | + action: set_fact fact="something" global_fact="${local_var}"' + - description: "Example setting host facts using complex arguments" + code: | + action: set_fact + args: + fact: something + global_fact: ${local_var} +notes: + - You can set play variables using the C(set_var) module. +'''