From 375aa92315961a75032d13d02315e94ae6a4377e Mon Sep 17 00:00:00 2001 From: Allen Sanabria Date: Tue, 30 Aug 2016 15:52:59 -0700 Subject: Updated documentation for PR http://github.com/ansible/ansible/pull/17207 --- utilities/logic/include_vars.py | 52 +++++++++++++++++++++++++++++++++++++---- 1 file changed, 47 insertions(+), 5 deletions(-) (limited to 'utilities') diff --git a/utilities/logic/include_vars.py b/utilities/logic/include_vars.py index a0b3280d..811fd99e 100644 --- a/utilities/logic/include_vars.py +++ b/utilities/logic/include_vars.py @@ -10,28 +10,47 @@ DOCUMENTATION = ''' --- -author: "Benno Joy (@bennojoy)" +author: "Allen Sanabria (@linuxdynasty)" module: include_vars short_description: Load variables from files, dynamically within a task. description: - - Loads variables from a YAML/JSON file dynamically during task runtime. It can work with conditionals, or use host specific variables to determine the path name to load from. + - Loads variables from a YAML/JSON files dynamically from within a file or + from a directory recursively during task runtime. If loading a directory, the files are sorted alphabetically before being loaded. options: file: version_added: "2.2" description: - The file name from which variables should be loaded. - If the path is relative, it will look for the file in vars/ subdirectory of a role or relative to playbook. + dir: + version_added: "2.2" + description: + - The directory name from which the variables should be loaded. + - If the path is relative, it will look for the file in vars/ subdirectory of a role or relative to playbook. + default: null name: version_added: "2.2" description: - The name of a variable into which assign the included vars, if omitted (null) they will be made top level vars. default: null + depth: + version_added: "2.2" + description: + - By default, this module will recursively go through each sub directory and load up the variables. By explicitly setting the depth, this module will only go as deep as the depth. + default: 0 + files_matching: + version_added: "2.2" + description: + - Limit the variables that are loaded within any directory to this regular expression. + default: null + ignore_files: + version_added: "2.2" + description: + - List of file names to ignore. The defaults can not be overridden, but can be extended. + default: null free-form: description: - This module allows you to specify the 'file' option directly w/o any other options. -notes: - - The file is always required either as the explicit option or using the free-form. -version_added: "1.4" ''' EXAMPLES = """ @@ -54,4 +73,27 @@ EXAMPLES = """ # bare include (free-form) - include_vars: myvars.yml +# Include all yml files in vars/all and all nested directories +- include_vars: + dir: 'vars/all' + +# Include all yml files in vars/all and all nested directories and save the output in test. +- include_vars: + dir: 'vars/all' + name: test + +# Include all yml files in vars/services +- include_vars: + dir: 'vars/services' + depth: 1 + +# Include only bastion.yml files +- include_vars: + dir: 'vars' + files_matching: 'bastion.yml' + +# Include only all yml files exception bastion.yml +- include_vars: + dir: 'vars' + ignore_files: 'bastion.yml' """ -- cgit v1.2.1