1
Ansible 1.9を使用していたコールバックプラグインを継承しました。私たちは2.1にアップグレードし、もう動作しません。Ansible 2.0コールバックによる変数へのアクセス
プレイリストオブジェクトにアクセスしようとしているようですが、「v2_playbook_on_stats」には渡されません。私のPythonは錆びているので、どのようにしてそのデータにアクセスできるか分かりません。私は、「エクストラvarsの」変数にアクセスするためにtryijngだが、私に次のエラー与えている:それはあなたが達成しようとしているかを推測するのは難しい
[WARNING]: Failure using method (v2_playbook_on_stats) in callback plugin
(</home/deployment/scripts/playbooks-2.0/callback/log_to_mongo.CallbackModule object at 0x2b8cf90>): 'NoneType' object has no attribute 'extra_vars'
コード
class CallbackModule(object):
"""
An ansible callback module for saving Ansible output to a database log
"""
def __init__(self):
self.playbook = None
self.playbook_name = None
self.play = None
self.task = None
def v2_playbook_on_stats(self, stats):
global jira_ticket
global deployed_modules
global ocd_job_id
global environment_id
deployed_modules = []
jira_ticket = self.playbook.extra_vars['jira_ticket']
ocd_job_id = self.playbook.extra_vars['ocd_job_id']
environment_id = self.playbook.extra_vars['environment_id']
ああ、それは私の問題だと思います。私は 'v2_playbook_on_start'の代わりに' v2_playbook_on_stats'に 'self.playbook'を割り当てようとしました。私は後でそれをくそってあげるよ。私は 'v2_playbook_on_stats'で余分な車にアクセスしようとしています – luckytaxi