カテゴリー
Linux

Ansible で一時的に変数を使用するやり方メモ

まとめ

  • 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]

おわりに

いつもどうやるのでしたか、、、と調べ直していましたので、改めて抜き出し、投稿いたしました。今までの投稿とも重複していそうですけれども、気にしません♪

本投稿とは直接関係ありませんが、タスクを書く際に参考になったサイトです。ありがとうございます!

以上です。

コメントを残す