将自定义变量传递给审核中的脚本

时间:2019-04-22 21:51:55

标签: ansible ansible-inventory

我正在编写一个动态清单脚本以与Ansible Playbook一起使用。我正在寻找一种传递从清单脚本中提取的自定义变量的方法,以用于我的剧本任务中。

我的脚本清单提供了预期的以下信息

    "vars": {
        "ansible_ssh_user": ADMIN_ACCOUNT,
        "ansible_ssh_private_key_file": CERT_PART,
        "ansible_become": "yes",
        "ansible_become_method": "sudo",
        "server_name: $serverName,
    }

现在,我希望将$ serverName的值传递给剧本中一项任务中的脚本,例如:

  - name: Execute an audit script
    script: /etc/ansible/audit_server.sh {{ server_name }}
    register: output

例如,我的audit_server.sh仅需要接受$ serverName参数

serverName=$1
name=$(get something -s $serverName)

我不确定Ansible是否原生支持这种变量的使用。

1 个答案:

答案 0 :(得分:0)

我认为这应该对您有用:

  - name: Execute an audit script
    script: "/etc/ansible/audit_server.sh {{ server_name }}" 
    register: output