Makul görevler idempotent olmalıdır . Örneğin. görev hiçbir şeyi değiştirmezse, ok
yerine dönmelidir changed
. Çoğu yerleşik modül ve görev zaten, ancak gibi görevler için command
ve shell
ansible biraz yardım etmek gerekir.
Tamamen kontrol eden ve hiçbir şeyi değiştirmeyen bir görev için şunları eklemelisiniz:
changed_when: False
always_run: yes
İkincisi, görevin kontrol modunda bile çalışmasına izin verir .
Tamlık uğruna, bu tür görevler genellikle gerçek değişikliği yapan bir diğeri ile birleştirilir, örneğin:
- command: check command that returns true when no change needed
register: result
changed_when: False
always_run: yes
- command: modify command
when: result.rc != 0