簡體   English   中英

Jenkins Ansible插件中的Ansible,忽略SSH配置

[英]Ansible in Jenkins Ansible plugin, ignores SSH config

當使用ansible插件與Jenkins一起運行時,我在ansible中遇到有關SSH控制路徑的問題。 當對清單中的主機使用長FQDNS時,就會出現此問題。

我嘗試了以下方法:

  • 在Jenkins用戶的SSH配置文件中設置短主機名和控制路徑

  • /etc/ansible/ansible.cfg設置中設置SSH參數,例如:

     [ssh_connection] ssh_args="-F /var/jenkins_home/.ssh/config -o ControlMaster=auto -o ControlPersist=30m -o ConnectTimeout=60 -o ControlPath=/tmp/ssh-%C" control_path="/tmp/ssh-%C" 
  • Jenkins插件對話框中的命令行選項--ssh-extra-args=

我似乎無法說服Ansible使用簡短的控制路徑,如下所示:

" /tmp/ssh-%C" 

我仍然得到:

/var/jenkins_home/.ansible/cp/ansible-ssh-bastion-dev.westeurope.cloudapp.azure.com-22-jenkins.ivQ6vi6TPB3BrYta \\“對於Unix域套接字來說太長了

這與我在各處設置的選項不對應。

有人知道如何說服Ansible插件停止忽略SSH選項嗎?

Ansible 2.2.1.0Jenkins ver. 2.32.1對我來說效果Ansible 2.2.1.0 Jenkins ver. 2.32.1 Jenkins ver. 2.32.1

$ cat /etc/ansible/ansible.cfg
[ssh_connection]
control_path = /tmp/ssh-%%C

請注意%%C雙百分號(否則Ansible無法格式化它)。

我建議您檢查構建節點(如果您有jenkins從屬服務器,則可以更改主服務器上的設置,但作業要在其中一個從屬服務器上執行),並使用-vvvv其他標志運行playbook來查看-vvvv使用的配置文件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM