ansible/windows/win_template.py

50 lines
2.3 KiB
Python
Raw Normal View History

2015-05-22 20:25:05 +02:00
# this is a virtual module that is entirely implemented server side
DOCUMENTATION = '''
---
module: win_template
version_added: "1.9.2"
2015-05-22 20:25:05 +02:00
short_description: Templates a file out to a remote server.
description:
- Templates are processed by the Jinja2 templating language
(U(http://jinja.pocoo.org/docs/)) - documentation on the template
formatting can be found in the Template Designer Documentation
(U(http://jinja.pocoo.org/docs/templates/)).
2015-06-11 17:35:49 +02:00
- "Six additional variables can be used in templates: C(ansible_managed)
2015-05-22 20:25:05 +02:00
(configurable via the C(defaults) section of C(ansible.cfg)) contains a string
which can be used to describe the template name, host, modification time of the
2015-06-11 17:35:49 +02:00
template file and the owner uid, C(template_host) contains the node name of
2015-05-22 20:25:05 +02:00
the template's machine, C(template_uid) the owner, C(template_path) the
2015-06-11 17:35:49 +02:00
absolute path of the template, C(template_fullpath) is the absolute path of the
2015-05-22 20:25:05 +02:00
template, and C(template_run_date) is the date that the template was rendered. Note that including
a string that uses a date in the template will result in the template being marked 'changed'
each time."
options:
src:
description:
- Path of a Jinja2 formatted template on the local server. This can be a relative or absolute path.
required: true
dest:
description:
- Location to render the template to on the remote machine.
required: true
notes:
- "templates are loaded with C(trim_blocks=True)."
- By default, windows line endings are not created in the generated file.
2015-06-11 17:35:49 +02:00
- "In order to ensure windows line endings are in the generated file, add the following header
as the first line of your template: #jinja2: newline_sequence:'\r\n' and ensure each line
of the template ends with \r\n"
- Beware fetching files from windows machines when creating templates
because certain tools, such as Powershell ISE, and regedit's export facility
2015-06-11 17:35:49 +02:00
add a Byte Order Mark as the first character of the file, which can cause tracebacks.
- Use "od -cx" to examine your templates for Byte Order Marks.
author: "Jon Hawkesworth (@jhawkesworth)"
2015-05-22 20:25:05 +02:00
'''
EXAMPLES = '''
# Playbook Example (win_template can only be run inside a playbook)
2015-06-11 17:35:49 +02:00
- win_template: src=/mytemplates/file.conf.j2 dest=C:\\temp\\file.conf
2015-05-22 20:25:05 +02:00
'''