代码之家  ›  专栏  ›  技术社区  ›  TechChain

“Connection”对象在macOS上没有属性“ssh”ansible?

  •  0
  • TechChain  · 技术社区  · 6 年前

    我试图在ansible playbook中运行一个任务,如下所示。

    - name: Add user to a group
          user:
            name: "{{ansible_user}}"
            groups: docker
            append: yes
          become: yes
          when: node_type == "peer"
    

    'Connection' object has no attribute 'ssh' ansible .

    请告诉我会有什么问题?

    追溯问题

    ERROR! Unexpected Exception, this is probably a bug: 'Connection' object has no attribute 'ssh'
    the full traceback was:
    
    Traceback (most recent call last):
      File "/usr/local/bin/ansible-playbook", line 118, in <module>
        exit_code = cli.run()
      File "/Library/Python/2.7/site-packages/ansible/cli/playbook.py", line 122, in run
        results = pbex.run()
      File "/Library/Python/2.7/site-packages/ansible/executor/playbook_executor.py", line 156, in run
        result = self._tqm.run(play=play)
      File "/Library/Python/2.7/site-packages/ansible/executor/task_queue_manager.py", line 291, in run
        play_return = strategy.run(iterator, play_context)
      File "/Library/Python/2.7/site-packages/ansible/plugins/strategy/linear.py", line 267, in run
        results.extend(self._execute_meta(task, play_context, iterator, host))
      File "/Library/Python/2.7/site-packages/ansible/plugins/strategy/__init__.py", line 1098, in _execute_meta
        connection.reset()
      File "/Library/Python/2.7/site-packages/ansible/plugins/connection/paramiko_ssh.py", line 539, in reset
        self.close()
      File "/Library/Python/2.7/site-packages/ansible/plugins/connection/paramiko_ssh.py", line 606, in close
        self.ssh.close()
    AttributeError: 'Connection' object has no attribute 'ssh'
    

    编辑:

    我被要求检查一下 ansible.cfg 文件。但是我在mac上找不到这个文件。

    下面是我使用时的日志 ansible --version 命令

    config file = None
    

    配置的模块搜索路径=[u'/Users/dhiraj/.ansible/plugins/modules',u'/usr/share/ansible/plugins/modules'] ansible python模块位置=/Library/python/2.7/site-packages/ansible 可执行位置=/usr/local/bin/ansible

    0 回复  |  直到 6 年前
        1
  •  0
  •   TechChain    6 年前

    我在.ansible.cfg文件中添加了

    [默认值]

    我在ansible\u CONFIG环境变量中添加了.ansible.cfg的路径

    在完成所有这些步骤之后,我能够运行剧本。