まとめ
- register を使う。
- 使うときは、”{{ variable_name.stdout }}” などととする (ダブルクオーテーションは必要) 。
使い方
--- - name: get OS name command: uname -s register: uname_s - name: get machine name command: uname -m register: uname_m - name: test debug: msg: "{{ uname_s }}, {{ uname_m }}" - name: install Docker Compose get_url: url: "https://github.com/docker/compose/releases/download/1.22.0/docker-compose-{{ uname_s.stdout }}-{{ uname_m.stdout }}" dest: /usr/local/bin/docker-compose mode: "+x"
実際に使った例
TASK [docker : get OS name] **************************************************** changed: [default] TASK [docker : get machine name] *********************************************** changed: [default] TASK [docker : test] *********************************************************** ok: [default] => { "msg": [ { "changed": true, "cmd": [ "uname", "-s" ], "delta": "0:00:00.003300", "end": "2018-08-17 08:19:18.202651", "failed": false, "rc": 0, "start": "2018-08-17 08:19:18.199351", "stderr": "", "stderr_lines": [], "stdout": "Linux", "stdout_lines": [ "Linux" ] }, { "changed": true, "cmd": [ "uname", "-m" ], "delta": "0:00:00.003275", "end": "2018-08-17 08:19:18.501063", "failed": false, "rc": 0, "start": "2018-08-17 08:19:18.497788", "stderr": "", "stderr_lines": [], "stdout": "x86_64", "stdout_lines": [ "x86_64" ] } ] } TASK [docker : install Docker Compose] ***************************************** changed: [default]
おわりに
いつもどうやるのでしたか、、、と調べ直していましたので、改めて抜き出し、投稿いたしました。今までの投稿とも重複していそうですけれども、気にしません♪
本投稿とは直接関係ありませんが、タスクを書く際に参考になったサイトです。ありがとうございます!
- get_url – Downloads files from HTTP, HTTPS, or FTP to node — Ansible Documentation
- unameコマンド(OSまたはハードウェアの情報を表示する) : JP1/Advanced Shell
以上です。