mirror of https://github.com/ansible/ansible.git
ported timer.py callback to v2
parent
a41caf722d
commit
d149ea5222
@ -0,0 +1,35 @@
|
|||||||
|
import os
|
||||||
|
import datetime
|
||||||
|
from datetime import datetime, timedelta
|
||||||
|
|
||||||
|
from ansible.plugins.callback import CallbackBase
|
||||||
|
|
||||||
|
class CallbackModule(CallbackBase):
|
||||||
|
"""
|
||||||
|
This callback module tells you how long your plays ran for.
|
||||||
|
"""
|
||||||
|
CALLBACK_VERSION = 2.0
|
||||||
|
CALLBACK_TYPE = 'aggregate'
|
||||||
|
|
||||||
|
start_time = datetime.now()
|
||||||
|
|
||||||
|
def __init__(self, display):
|
||||||
|
|
||||||
|
super(CallbackModule, self).__init__(display)
|
||||||
|
|
||||||
|
start_time = datetime.now()
|
||||||
|
self._display.warning("Timerv2 plugin is active from included callbacks.")
|
||||||
|
|
||||||
|
def days_hours_minutes_seconds(self, timedelta):
|
||||||
|
minutes = (timedelta.seconds//60)%60
|
||||||
|
r_seconds = timedelta.seconds - (minutes * 60)
|
||||||
|
return timedelta.days, timedelta.seconds//3600, minutes, r_seconds
|
||||||
|
|
||||||
|
def playbook_on_stats(self, stats):
|
||||||
|
self.v2_playbook_on_stats(stats)
|
||||||
|
|
||||||
|
def v2_playbook_on_stats(self, stats):
|
||||||
|
end_time = datetime.now()
|
||||||
|
timedelta = end_time - self.start_time
|
||||||
|
self._display.display("Playbook run took %s days, %s hours, %s minutes, %s seconds" % (self.days_hours_minutes_seconds(timedelta)))
|
||||||
|
|
Loading…
Reference in New Issue