我已经成功使用定制psagers/ansible-ldap模块一段时间了。然而就在最近,我开始遇到一个问题,我似乎无法过去。任何人都知道什么可能会导致以下错误?Ansible ldap_entry模块失败,出现“ldap例程参数错误”
TASK [ldap-server : ldap_entry] ************************************************
fatal: [52.90.82.65]: FAILED! => {"changed": false, "exc": "Traceback (most recent call last):\n File \"/tmp/ansible_arqhOa/ansible_module_ldap_entry.py\", line 133, in main\n LdapEntry(module).main()\n File \"/tmp/ansible_arqhOa/ansible_module_ldap_entry.py\", line 194, in main\n action()\n File \"/tmp/ansible_arqhOa/ansible_module_ldap_entry.py\", line 206, in \n action = lambda: self.connection.add_s(self.dn, modlist)\n File \"/usr/lib/python2.7/dist-packages/ldap/ldapobject.py\", line 194, in add_s\n msgid = self.add(dn,modlist)\n File \"/usr/lib/python2.7/dist-packages/ldap/ldapobject.py\", line 191, in add\n return self.add_ext(dn,modlist,None,None)\n File \"/usr/lib/python2.7/dist-packages/ldap/ldapobject.py\", line 176, in add_ext\n return self._ldap_call(self._l.add_ext,dn,modlist,RequestControlTuples(serverctrls),RequestControlTuples(clientctrls))\n File \"/usr/lib/python2.7/dist-packages/ldap/ldapobject.py\", line 99, in _ldap_call\n result = func(*args,**kwargs)\nPARAM_ERROR: {'matched': 'dc=hhsdevcloud,dc=us', 'desc': 'Bad parameter to an ldap routine'}\n", "failed": true, "msg": "{'matched': 'dc=hhsdevcloud,dc=us', 'desc': 'Bad parameter to an ldap routine'}"}
似乎与从Ansible 2.0.1.0迁移到2.2.0.0有关。这是一个从这个Ansible任务,这并没有改变未来(和Ansible版本隆起之前的工作):
- ldap_entry:
bind_dn: 'cn=admin,dc=hhsdevcloud,dc=us'
bind_pw: "{{ ldap_root_password }}"
dn: 'ou=people,dc=hhsdevcloud,dc=us'
objectClass: ['organizationalUnit']
如果我猜的话,它是与此相关的模块如何处理ARGS(如objectClass
不定义为模块arg,但该模块旨在查找并使用它)。 Ansible是否会改变最近处理模块参数的方式?