Skip to content

Commit

Permalink
Update playbooks_error_handling.rst
Browse files Browse the repository at this point in the history
Add example for using own variables in conditions
  • Loading branch information
S1ructure committed Nov 3, 2024
1 parent d6eb6c9 commit 356a5b8
Showing 1 changed file with 23 additions and 0 deletions.
23 changes: 23 additions & 0 deletions docs/docsite/rst/playbook_guide/playbooks_error_handling.rst
Original file line number Diff line number Diff line change
Expand Up @@ -136,6 +136,29 @@ If you have too many conditions to fit neatly into one line, you can split it in
(ret.stderr != '') or
(ret.rc == 10)
If you want to introduce your own variables, to avoid repeating a certain term, you can simply reference them in your conditionals

.. code-block:: yaml
- name: Example playbook
hosts: myHosts
vars:
log_path: /home/ansible/logfolder/
log_file: log.log
tasks:
- name: Create empty log file
ansible.builtin.shell: mkdir {{ log_path }} || touch {{log_path }}{{ log_file }}
register: tmp
changed_when:
- tmp.rc == 0
- 'tmp.stderr != "mkdir: cannot create directory ‘" ~ log_path ~ "’: File exists"'
.. note::
Notice the missing ``{{ }}`` around log_path. Conditionals are already executed in a templating context, which makes the ``{{ }}`` superfluous.

If you still use ansible will raise a warning ``[WARNING]: conditional statements should not include jinja2 templating delimiters such as {{ }} or {% %}.``

.. _override_the_changed_result:

Defining "changed"
Expand Down

0 comments on commit 356a5b8

Please sign in to comment.