Coba periksa untuk melihat apakah sama dengan string kosong atau tidak?
- hosts: myhosts
tasks:
- name: echo hello
command: echo hello
register: result
- command: somecommand {{ result.stdout }}
when: result.stdout != ""
- command: someothercommand
when: result.stdout == ""
Pada 2018, cara yang disarankan untuk menguji apakah output kosong adalah:
when: result.stdout | length > 0
Itu adalah cara pythonic mengevaluasi kebenaran, null, string kosong, daftar kosong semuanya dievaluasi sebagai salah.
Alternatif lama lainnya tidak disarankan atau bahkan tidak berfungsi:
result.stdout != ""
tidak akan lulus pemeriksaan serat yang memungkinkan!result.stdout | bool
TIDAK akan berfungsi karena sebagian besar string akan dievaluasi sebagai False, hanya kasus di mana ia akan mengembalikan true adalah jika stdout kebetulan salah satu daritrue
,yes
,... jenis string.result.stdout
dulu berfungsi tetapi sekarang memicu:
[PERINGATAN DEPRECASI]:mengevaluasi sebagai variabel kosong, perilaku ini akan hilang dan Anda mungkin perlu menambahkan |bool ke ekspresi di masa mendatang. Lihat juga tombol konfigurasi CONDITIONAL_BARE_VARS.. Fitur ini akan dihapus di versi 2.12. Peringatan penghentian dapat dinonaktifkan dengan mengatur deprecation_warnings=False inansible.cfg.`
Segarkan net.core.somaxcomm (atau properti sysctl apa pun) untuk wadah buruh pelabuhan
Lokasi JConsole di Linux