Ansible:有没有办法使用Ansible变量或将Ansible变量传递给我正在部署的bash脚本?

Ansible:有没有办法使用Ansible变量或将Ansible变量传递给我正在部署的bash脚本?,bash,ansible,pam,Bash,Ansible,Pam,我正在开发一个Ansible解决方案,将notify.shbash脚本部署为pam.d/pam_exec配置的一部分 脚本使用了一组变量,我被告知这些变量需要成为单独的yml文件的一部分(以便其他人可以更改或更新它们),而不是直接在脚本中定义,这是我通常所做的 我构建了vars文件,在其中定义了脚本在运行时应该使用的变量 现在我的问题是,我希望能够从我正在部署的bash脚本中以标准格式{{my_variable}}访问ansible变量 这可能吗?如果不可能,您对在脚本安装后将变量插入脚本有什么

我正在开发一个Ansible解决方案,将notify.shbash脚本部署为pam.d/pam_exec配置的一部分

脚本使用了一组变量,我被告知这些变量需要成为单独的yml文件的一部分(以便其他人可以更改或更新它们),而不是直接在脚本中定义,这是我通常所做的

我构建了vars文件,在其中定义了脚本在运行时应该使用的变量

现在我的问题是,我希望能够从我正在部署的bash脚本中以标准格式{{my_variable}}访问ansible变量

这可能吗?如果不可能,您对在脚本安装后将变量插入脚本有什么建议

我有一种感觉,我已经接近答案了,但嘲笑负责任的帮助文件还没有产生任何效果

我唯一想做的是在安装了shell脚本之后使用lineinfle模块来更新shell脚本,但我觉得这可能有点太粗糙了,这里可能有一个更优雅的解决方案


非常感谢您的回答。

当然可以–可以自动使用/vars/main.yml中的任何内容,也可以使用加载自定义文件。然后,使用模板并按如下方式部署脚本:

 template:
    src: script_template.j2
    dest: "path/notifiy.sh"
    mode: 700

您是否尝试过使用环境变量?我是说用你的bash环境变量和ansible一起阅读?