使用變數

  1. 腳本 deploy1.yml,在 dev 群組主機安裝套件,套件名稱為變數 item。
    ceuser@deyu:~/ansible_pb$ vi deploy1.yml
    ceuser@deyu:~/ansible_pb$ cat deploy1.yml 
    ---
    - hosts: dev
      tasks:
        - name: Install the latest version of ...
          ansible.builtin.dnf:
            name: "{{item}}"
            state: latest
    
  2. 命令列使用 ansible-playbook 執行 deploy1.xml 腳本時,使用 –extra-vars 提供變數 "item=php",成功安裝 php 套件。
    ceuser@deyu:~/ansible_pb$ ansible-playbook deploy1.yml --extra-vars "item=php"
    
    PLAY [dev] *********************************************************************
    
    TASK [Gathering Facts] *********************************************************
    ok: [kvm11]
    
    TASK [Install the latest version of ...] ***************************************
    changed: [kvm11]
    
    PLAY RECAP *********************************************************************
    kvm11 : ok=2 changed=1  unreachable=0  failed=0  skipped=0  rescued=0  ignored=0
    
  3. 使用 ad-hoc 命令安裝 dev 的 php 套件,回傳 "changed": false, 表示 php 套件已經安裝,沒有做任何改變。
    ceuser@deyu:~/ansible_pb$ ansible dev -m dnf -a "name=php state=present"
    kvm11 | SUCCESS => {
        "ansible_facts": {
            "discovered_interpreter_python": "/usr/bin/python3"
        },
        "changed": false,
        "msg": "Nothing to do",
        "rc": 0,
        "results": []
    }