タイトルの通り、シェルの実行結果によって、Ansibleの挙動を制御する方法を考える。 Ansibleで何か実行する場合、通常、その目的を達成するモジュールを探すわけですが、モジュールだけでは細かい制御ができないことが多く、シェルを実行するモジュールにシェルコマンドを渡すことが多くなります。 そういった際にシェルの実行結果を取得し、結果によって別の動きをする条件分岐を行えると便利です。 例えば、 grep 'hello' test.txtのように、test.txt文中に「hello」という文字列があるか? ということを調べる場合、以下のような形でYMLを書きます。 - name: check hello shell: "grep 'hello' text.txt" register: check_hello failed_when: check_hello.rc not in [0,1]直
![[Ansible]シェルの実行結果によって条件分岐する|gano](https://cdn-ak-scissors.b.st-hatena.com/image/square/5c4b391c2f1d53e4e3533062d48411e9096506bd/height=288;version=1;width=512/https%3A%2F%2Fd2l930y2yx77uc.cloudfront.net%2Fassets%2Fdefault%2Fdefault_profile_5-043439195e40e86fd7641a3a1daf982637d77ec6f14b67d3fc98ab92374404ac.png)