快速捕获模板输出


8

我需要在目标服务器上运行仅通过stdin接受数据的命令。我要提供的数据来自模板文件,其中包含敏感数据,因此我宁愿不要将其放置在文件系统中一秒钟。

我正在尝试寻找一种方法来获取模板任务的输出,以便将其传递给命令。就像是:

- name: generate data
  template:
    src: data.j2
    dest: [I'd rather not have any files written]
  register: myvar

- name: run command
  shell: "command < {{ myvar }}"

有更好的方法来解决此问题,而无需编写临时文件,将其提供给命令然后进行擦除吗?


如您所描述的那样,使用临时文件一次。创建了适用于ansible的
Pavel

Answers:



2

处理需要输入的命令的正确方法stdinExpect模块。

Ansible Vault是处理Ansible敏感数据的正确方法。当Ansible创建Python脚本来执行任务下定义的命令时,数据将以一种或多种方式未加密地位于文件系统上。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.