1
0
Fork 0
mirror of https://github.com/ansible-collections/community.general.git synced 2024-09-14 20:13:21 +02:00

Merge pull request #2109 from lorin/pipe_once_docs

Document new PIPE_ONCE macro
This commit is contained in:
Michael DeHaan 2013-02-17 09:57:50 -08:00
commit 15901e8585

View file

@ -567,7 +567,7 @@ Negative numbers are not supported. This works as follows::
Getting values from files Getting values from files
````````````````````````` `````````````````````````
.. versionadded: 0.8 .. versionadded:: 0.8
Sometimes you'll want to include the content of a file directly into a playbook. You can do so using a macro. Sometimes you'll want to include the content of a file directly into a playbook. You can do so using a macro.
This syntax will remain in future versions, though we will also will provide ways to do this via lookup plugins (see "More Loops") as well. What follows This syntax will remain in future versions, though we will also will provide ways to do this via lookup plugins (see "More Loops") as well. What follows
@ -583,6 +583,20 @@ is an example using the authorized_key module, which requires the actual text of
The "$PIPE" macro works just like file, except you would feed it a command string instead. It executes locally, not remotely, as does $FILE. The "$PIPE" macro works just like file, except you would feed it a command string instead. It executes locally, not remotely, as does $FILE.
Because Ansible uses lazy evaluation, a "$PIPE" macro will be executed each time it is used. For
example, it will be executed separately for each host, and if it is used in a variable definition,
it will be executed each time the variable is evaluated.
.. versionadded:: 1.1
The "$PIPE_ONCE" macro is an alternative that uses a caching strategy: it is executed only once, and
subsequent accesses use the cached value. One use case is for computing a timestamp that is intended
to be the same across all tasks and hosts that use it::
vars:
timestamp: $PIPE_ONCE(date +%Y%m%d-%H%M%S)
Selecting Files And Templates Based On Variables Selecting Files And Templates Based On Variables
```````````````````````````````````````````````` ````````````````````````````````````````````````