Open gord1306 opened 4 years ago
you can put any string in the password.txt file. it looks like the ANSIble 2.8.7 do not accept empty password file for vault
Thanks @lguohan, the vault fille issue can pass. And there is a new issue. It looks like the miss python (or ansible?) modules shlex and cookiejar in the sonic-mgmt container.
First, I encounter this one ImportError: cannot import name shlex_quote
TASK [Read dut minigraph] ***************************************************************************************************************************************
task path: /var/sonic/sonic-mgmt/ansible/testbed_add_vm_topology.yml:70
Tuesday 17 December 2019 07:21:03 +0000 (0:00:00.091) 0:00:00.501 ******
Using module file /var/sonic/sonic-mgmt/ansible/library/conn_graph_facts.py
Pipelining is enabled.
<localhost> ESTABLISH LOCAL CONNECTION FOR USER: sonic
<localhost> EXEC /bin/sh -c '/usr/bin/python && sleep 0'
The full traceback is:
Traceback (most recent call last):
File "<stdin>", line 114, in <module>
File "<stdin>", line 106, in _ansiballz_main
File "<stdin>", line 45, in invoke_module
File "/tmp/ansible_conn_graph_facts_payload_LrJNDY/ansible_conn_graph_facts_payload.zip/ansible/module_utils/basic.py", line 171, in <module>
ImportError: cannot import name shlex_quote
fatal: [STR-ACS-SERV-02-2 -> localhost]: FAILED! => {
"changed": false,
"module_stderr": "Traceback (most recent call last):\n File \"<stdin>\", line 114, in <module>\n File \"<stdin>\", line 106, in _ansiballz_main\n File \"<stdin>\", line 45, in invoke_module\n File \"/tmp/ansible_conn_graph_facts_payload_LrJNDY/ansible_conn_graph_facts_payload.zip/ansible/module_utils/basic.py\", line 171, in <module>\nImportError: cannot import name shlex_quote\n",
"module_stdout": "",
"msg": "MODULE FAILURE\nSee stdout/stderr for the exact error",
"rc": 1
}
[STR-ACS-SERV-02-2] TASK: Read dut minigraph (debug)>
[STR-ACS-SERV-02-2] TASK: Read dut minigraph (debug)>
And then, I manully comment shlex_quote in /usr/local/lib/python2.7/dist-packages/ansible/module_utils/basic.py
,
from ansible.module_utils.six.moves import map, reduce#, shlex_quote
The playbook can continue, but encounter another fail - No module named http_cookiejar
TASK [vm_set : Install necessary packages] **********************************************************************************************************************
task path: /var/sonic/sonic-mgmt/ansible/roles/vm_set/tasks/main.yml:57
Tuesday 17 December 2019 08:56:14 +0000 (0:00:00.054) 0:00:03.497 ******
Using module file /usr/local/lib/python2.7/dist-packages/ansible/modules/packaging/os/apt.py
Pipelining is enabled.
<10.250.2.44> ESTABLISH SSH CONNECTION FOR USER: sonic
<10.250.2.44> SSH: EXEC sshpass -d11 ssh -o ControlMaster=auto -o ControlPersist=120s -o UserKnownHostsFile=/dev/null -o ServerAliveInterval=30 -o StrictHostKeyChecking=no -o 'User="sonic"' -o ConnectTimeout=10 -o ControlPath=/var/sonic/.ansible/cp/9b9ed4861b 10.250.2.44 '/bin/sh -c '"'"'sudo -H -S -p "[sudo via ansible, key=dwtzudthxaxpkwpuhndiuxwgpvwjpyni] password:" -u root /bin/sh -c '"'"'"'"'"'"'"'"'echo BECOME-SUCCESS-dwtzudthxaxpkwpuhndiuxwgpvwjpyni ; /usr/bin/python'"'"'"'"'"'"'"'"' && sleep 0'"'"''
Escalation succeeded
<10.250.2.44> (1, '', 'Traceback (most recent call last):\n File "<stdin>", line 114, in <module>\n File "<stdin>", line 106, in _ansiballz_main\n File "<stdin>", line 49, in invoke_module\n File "/tmp/ansible_apt_payload_KfJfDq/__main__.py", line 281, in <module>\n File "/tmp/ansible_apt_payload_KfJfDq/ansible_apt_payload.zip/ansible/module_utils/urls.py", line 53, in <module>\nImportError: No module named http_cookiejar\n')
<10.250.2.44> Failed to connect to the host via ssh: Traceback (most recent call last):
File "<stdin>", line 114, in <module>
File "<stdin>", line 106, in _ansiballz_main
File "<stdin>", line 49, in invoke_module
File "/tmp/ansible_apt_payload_KfJfDq/__main__.py", line 281, in <module>
File "/tmp/ansible_apt_payload_KfJfDq/ansible_apt_payload.zip/ansible/module_utils/urls.py", line 53, in <module>
ImportError: No module named http_cookiejar
The full traceback is:
Traceback (most recent call last):
File "<stdin>", line 114, in <module>
File "<stdin>", line 106, in _ansiballz_main
File "<stdin>", line 49, in invoke_module
File "/tmp/ansible_apt_payload_KfJfDq/__main__.py", line 281, in <module>
File "/tmp/ansible_apt_payload_KfJfDq/ansible_apt_payload.zip/ansible/module_utils/urls.py", line 53, in <module>
ImportError: No module named http_cookiejar
failed: [STR-ACS-SERV-02-2] (item=[u'qemu', u'openvswitch-switch', u'net-tools', u'bridge-utils', u'util-linux', u'iproute2', u'vlan', u'libvirt-bin', u'python-libvirt', u'python-pip', u'apt-transport-https', u'ca-certificates', u'curl', u'software-properties-common']) => {
"ansible_loop_var": "item",
"changed": false,
"item": [
"qemu",
"openvswitch-switch",
"net-tools",
"bridge-utils",
"util-linux",
"iproute2",
"vlan",
"libvirt-bin",
"python-libvirt",
"python-pip",
"apt-transport-https",
"ca-certificates",
"curl",
"software-properties-common"
],
"module_stderr": "Traceback (most recent call last):\n File \"<stdin>\", line 114, in <module>\n File \"<stdin>\", line 106, in _ansiballz_main\n File \"<stdin>\", line 49, in invoke_module\n File \"/tmp/ansible_apt_payload_KfJfDq/__main__.py\", line 281, in <module>\n File \"/tmp/ansible_apt_payload_KfJfDq/ansible_apt_payload.zip/ansible/module_utils/urls.py\", line 53, in <module>\nImportError: No module named http_cookiejar\n",
"module_stdout": "",
"msg": "MODULE FAILURE\nSee stdout/stderr for the exact error",
"rc": 1
}
Have you encountered this case? Thanks!
I manully comment import ookiejar in /usr/local/lib/python2.7/dist-packages/ansible/module_utils/urls.py
, the add topo can continue
#import ansible.module_utils.six.moves.http_cookiejar as cookiejar
Description I am trying to use the latest sonic-mgmt (update to ansible 2.8.7) to perform ansible testing. In the previous version, I can specify an empty file as the vault password file e.g.
./testbed-cli.sh add-topo 2-2_t0 ~/.password -e ptf_imagetag=201910
But for the latest version, it will report the error messages
Describe the results you received:
Describe the results you expected: Success to add topology without the vault error
Is anyone know what I miss to setup. Thanks