首页 > 解决方案 > Ansible 阻止标准输出显示在输出日志上

问题描述

我正在执行此任务,我正在尝试使用密码对文件进行分类,并通过 ansible stdout 将其附加到另一个文件中。

- name: get  password value
  shell: "cat {{ playbook_dir }}/../PASSWORD/PASSWORD.txt"
  register: PASSWORD_VALUE
- debug: var=PASSWORD_VALUE.stdout

- name: echo PASSWORD password value to another file
  shell: "echo {{ PASSWORD_VALUE.stdout }} > PASSWORD_VALUE.txt"
  args:
    chdir: "{{ playbook_dir }}/../PASSWORD"

但是,当执行 ansible 时,它​​会显示日志中的密码PASSWORD_NG_POGING_LALAKI

    TASK [get  password value] **********************************************
    changed: [localhost]

    TASK [debug] ************************************************************
    ok: [localhost] => {
        "PASSWORD_VALUE.stdout": "PASSWORD_NG_POGING_LALAKI"
    }

    TASK [echo PASSWORD password value to another file] *********************
    changed: [localhost]

有没有办法可以防止 PASSWORD_VALUE.stdout 从日志中隐藏它的值?

标签: ansible

解决方案


解决了,我只是在调试行下面添加了no_log: true

- name: get  password value
  shell: "cat {{ playbook_dir }}/../PASSWORD/PASSWORD.txt"
  register: PASSWORD_VALUE
- debug: var=PASSWORD_VALUE.stdout
  no_log: true

- name: echo PASSWORD password value to another file
  shell: "echo {{ PASSWORD_VALUE.stdout }} > PASSWORD_VALUE.txt"
  args:
    chdir: "{{ playbook_dir }}/../PASSWORD"

输出

TASK [get  password value] **********************************************
changed: [localhost]

TASK [debug] ************************************************************
ok: [localhost]

TASK [echo PASSWORD password value to another file] *********************
changed: [localhost]

推荐阅读