Frage Wie aktiviere ich zusätzliche Debugging-Ausgaben von Ansible und Vagrant?


Ich untersuche Ansible für die Server- und Anwendungsbereitstellung. Meine Anwendung wird derzeit mit Shell-Skripts in Vagrant bereitgestellt. Anstatt meine Skripte neu zu schreiben, nahm ich an eine Probe und versuchte es zu implementieren.

Es scheint gut zu funktionieren, aber ich habe eine Fehlermeldung nach einer Reihe von erfolgreichen Schritten gesehen:

» vagrant provision                                       ~/vm/blvagrant 1 ↵
[default] Running provisioner: ansible...

PLAY [web-servers] ************************************************************

GATHERING FACTS ***************************************************************
ok: [192.168.9.149]

TASK: [install python-software-properties] ************************************
ok: [192.168.9.149] => {"changed": false, "item": ""}

TASK: [add nginx ppa if it ubuntu 10.04 and up] *******************************
ok: [192.168.9.149] => {"changed": false, "item": "", "repo": "ppa:nginx/stable", "state": "present"}

TASK: [update apt repo] *******************************************************
ok: [192.168.9.149] => {"changed": false, "item": ""}

TASK: [install nginx] *********************************************************
ok: [192.168.9.149] => {"changed": false, "item": ""}

TASK: [copy fixed init for nginx] *********************************************
ok: [192.168.9.149] => {"changed": false, "gid": 0, "group": "root", "item": "", "mode": "0755", "owner": "root", "path": "/etc/init.d/nginx", "size": 2321, "state": "file", "uid": 0}

TASK: [service nginx] *********************************************************
ok: [192.168.9.149] => {"changed": false, "item": "", "name": "nginx", "state": "started"}

TASK: [write nginx.conf] ******************************************************
ok: [192.168.9.149] => {"changed": false, "gid": 0, "group": "root", "item": "", "mode": "0644", "owner": "root", "path": "/etc/nginx/nginx.conf", "size": 1067, "state": "file", "uid": 0}

PLAY RECAP ********************************************************************
192.168.9.149              : ok=8    changed=0    unreachable=0    failed=0

Ansible failed to complete successfully. Any error output should be
visible above. Please fix these errors and try again.

Wie gehe ich vor, um zusätzliche Debug-Informationen zu erhalten? Ich habe schon hinzugefügt ansible.verbose = true zu meiner vagrant config, was dazu führt, dass die Wörterbücher in der obigen Ausgabe angezeigt werden.


36
2017-08-19 02:18


Ursprung


Gemäß github.com/mitchellh/vagrant/issues/2004 Dies ist ein Fehler mit der aktuellen Vagrant-Version. Ich war in der Lage, /Applications/Vagrant/embedded/gems/gems/vagrant-1.2.7/plugins/provisioners/ansible/provisioner.rb manuell zu patchen github.com/mitchellh/vagrant/commit/.... - Brian Lyttle


Antworten:


Sie können dies auch in Ihre Vagrant-Datei einfügen:

ansible.verbose = "vvv"

Dies müsste gehen, wo Sie die Bereitstellung starten, wie folgt:

config.vm.provision "ansible" do |ansible|
    ansible.verbose = "vvv"
end

Dies setzt die ausführliche Option von ansible:

-v, --verbose         verbose mode (-vvv for more, -vvvv to enable
                        connection debugging)

Einstellen auf vvvv (vier v's) ist nützlich für das Debuggen von SSH-Verbindungsfehlern - aber es erstellt ein enorm Anzahl der Debug-Ausgaben, verwenden Sie also nur vier vs, wenn Sie Verbindungsprobleme haben.


51
2017-07-08 20:52





Ich konnte die Ausgabe so erhalten:

tasks:
- name: Run puppet
  command: /root/puppet/run_puppet --noop
  register: puppet_output

- name: Show puppet output
  debug: msg="{{ puppet_output.stdout_lines }}"

Das zeigt mir zumindest die Ausgabe, aber leider immer noch nicht gut lesbar formatiert.


9
2017-11-07 14:51