Ben şöyle bir oyun kitabı koşucu kullanın: gayetAnsible Python API'sini kullanarak kodumdaki görev düzeyi çıktılarına nasıl erişebilirim?
{"status": 1, "result": {"127.0.0.1": {"unreachable": 0, "skipped": 0, "ok": 3, "changed": 2, "failures": 0}}}
:
stats = callbacks.AggregateStats()
playbook_cb = callbacks.PlaybookCallbacks(verbose=1)
runner_cb = callbacks.PlaybookRunnerCallbacks(stats, verbose=1)
pb = ansible.playbook.PlayBook(
... # basic info
)
results = pb.run()
sonuç değişkeni aşağıdaki gibi çıktısını içerir. Ama aynı zamanda dict gibi görev seviyesi çıkışı aşağıda gösterilen gerekir:
changed: [127.0.0.1] => {"changed": true, "name": "apache2", "state": "started"}
Ben Verbosity'ini değiştirmeyi denedim, ama bu istediği bu değildi.
etrafında kazma sonra ben şöyle bir günlük dosyasına çıktı başardı:
from ansible import constants as C
C.DEFAULT_LOG_PATH = 'project.log'
reload(callbacks)
Ama benim kodunda bu bilgilere erişimi gerekir.