2017-01-31 6 views
0

Я борюсь с проблемой, связанной с путями управления SSH, когда они работают с Дженкинсом, используя незаменимый плагин. Проблема проявляется при использовании длинных FQDNS для хостов в инвентаре.Несвязанный в Jenkins Ansible плагин, игнорирует конфигурацию SSH

Я попытался следующие:

  • создания коротких имен хостов и путей управления в файле SSH конфигурации пользователя Дженкинс

  • настройка SSH арг в /etc/ansible/ansible.cfg настройки, например:

    [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" 
    
  • опция командной строки --ssh-extra-args= в диалоговом окне плагина Jenkins

Я не могу убедить анзибль использовать короткий путь управления, как показано на следующем:

" /tmp/ssh-%C" 

Я все еще получаю:

/var/jenkins_home/.ansible/ ф/анзибль-SSH-бастион-dev.westeurope.cloudapp.azure.com-22-jenkins.ivQ6vi6TPB3BrYta \»слишком долго для Unix сокет домена

, который не делает Corre Примените вариант, который я устанавливаю повсюду.

Кто-нибудь знает, как убедить плагин Ansible прекратить игнорировать параметры SSH?

ответ

1

Работает отлично для меня с Ansible 2.2.1.0 и Jenkins ver. 2.32.1.

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

Примечание двойной знак процента в %%C (иначе анзибль не может отформатировать).

Я бы порекомендовал вам проверить узел сборки (если у вас есть ведомые устройства jenkins, вы можете изменять настройки на главном, но задание выполняется на одном из подчиненных) и запускать playbook с дополнительными флагами -vvvv, чтобы узнать, какие файлы конфигурации используются.

+0

Благодарим вас за то, что указали, что из-за проблемы с n00b я обвиняю временную слепоту – barrymac

+0

@barrymac, возможно, представить это как отчет об ошибке для Ansible, чтобы исправить необходимость в 2% или лучше документировать это. – Mxx

 Смежные вопросы

  • Нет связанных вопросов^_^