Reputation: 170460
I have a complex shell script that is run by ansible and I do want to communicate from it to ansible when changes were made on the system, so Ansible will know that the host was modified.
This is achieve by using changed_when: condition
but the problem is that I cannot really rely on a specific exit code to be used for success_with_change instead of success_without_change.
What other options are available? Can I use register:
and use the registered variable inside changed_when:
in order to check for a placeholder string in the output?
Upvotes: 6
Views: 11768
Reputation: 68269
Yes, you can use registered variable. For example:
- shell: mycommand.sh
register: script_res
changed_when: "'changed' in script_res.stdout"
Upvotes: 11