ansible - 将 bash 命令评估为 ansible 变量
问题描述
我想创建与命令等效的 ansible:
apt-get install linux-headers-$(uname -r)
要求:linux-headers-$(uname -r)
必须通过 Ansible 变量配置包。
在外部文件中配置了一个很大的包列表。linux-headers-$(uname -r)
现在,必须通过 shell 任务单独处理名称被延迟评估的包。
我正在寻找一种方法来摆脱此类异常并将它们与其他异常一样存储在变量列表中。
解决方案
使用管道插件。例如
- set_fact:
linux_headers_pkg: "{{ 'linux-headers-' ~ lookup('pipe', 'uname -r') }}"
- debug:
var: linux_headers_pkg
给
"linux_headers_pkg": "linux-headers-5.0.0-31-generic"
推荐阅读
- java - Intellij 2019.1 Gradle 委托的 IDE 调试以错误告终
- android - 如何使用recycleview修复对话框错误?
- angular - 在另一个组件的Angular 7运行方法中没有刷新当前页面?
- react-native - 如何修复 item.split 不是函数
- php - Laravel 使用 Accessors & Mutators 上传多个文件
- java - 项目构建成功,应用程序正在运行,但 R 类保持红色
- amazon-s3 - 使用 API 网关、Lambda 函数将图像上传到 S3 存储桶
- python - 我可以在我的设置函数中调用基类方法吗
- angular - “EventTypes”类型的参数不可分配给字符串类型的参数
- laravel - 当我将数组传递给查看时,出现错误“尝试获取非对象的属性”