Ansible

在變數中使用 ansible –ask-become-pass

  • April 23, 2021

我需要在期望腳本中使用我的 –ask-become-pass 密碼。有什麼方法可以使用在變數中啟動 ansible_playbook 時輸入的密碼?

虛擬碼:

# ansible-playbook --become --ask-become-pass -i testing master.yml
BECOME password: secretpassword

然後在任務中

- name: use pw variable in task
 expect:
  command: /bin/bash -c "/usr/bin/my_command"
  responses:
    Password: "{{ prompted_pass }}"

我希望在閱讀“密碼”提示時輸入“密碼”

我知道 become_user,不幸的是它對我的情況沒有幫助,因為遠端伺服器要求輸入密碼 - 但它與 become_password 相同。

我嘗試轉儲變數和環境,但找不到任何有用的東西。

謝謝,託拜厄斯

不可以。互動式成為密碼不適用於 playbook。

一種替代方法是不使用,--ask-become-pass而是提供成為密碼作為變數。將變數定義ansible_become_password為查找表達式,它從您使用的任何秘密儲存中獲取密碼。也將此 var 用於其他程序的密碼。

引用自:https://serverfault.com/questions/1061344