diff options
-rw-r--r-- | ansible-profile/LICENSE | 20 | ||||
-rw-r--r-- | ansible-profile/README.rst | 34 | ||||
-rw-r--r-- | ansible-profile/callback_plugins/profile_tasks.py | 34 |
3 files changed, 34 insertions, 54 deletions
diff --git a/ansible-profile/LICENSE b/ansible-profile/LICENSE deleted file mode 100644 index 1c0495384..000000000 --- a/ansible-profile/LICENSE +++ /dev/null @@ -1,20 +0,0 @@ -The MIT License (MIT) - -Copyright (c) 2014 Jharrod LaFon - -Permission is hereby granted, free of charge, to any person obtaining a copy of -this software and associated documentation files (the "Software"), to deal in -the Software without restriction, including without limitation the rights to -use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software is furnished to do so, -subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS -FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR -COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/ansible-profile/README.rst b/ansible-profile/README.rst deleted file mode 100644 index 5c2e9069f..000000000 --- a/ansible-profile/README.rst +++ /dev/null @@ -1,34 +0,0 @@ -=============== -ansible-profile -=============== - -An Ansible plugin for timing tasks. - - -Usage -^^^^^ - -Make a directory called `callback_plugins` next to your playbook and put `profile_tasks.py` inside of it. - -.. code-block:: bash - - mkdir callback_plugins - cd callback_plugins - wget https://raw.githubusercontent.com/jlafon/ansible-profile/master/callback_plugins/profile_tasks.py - -Now, run your playbook just as you normally would! - -.. code-block:: bash - - ansible <args here> - <normal output here> - PLAY RECAP ******************************************************************** - really slow task | Download project packages-----------------------------11.61s - security | Really slow security policies-----------------------------------7.03s - common-base | Install core system dependencies-----------------------------3.62s - common | Install pip-------------------------------------------------------3.60s - common | Install boto------------------------------------------------------3.57s - nginx | Install nginx------------------------------------------------------3.41s - serf | Install system dependencies-----------------------------------------3.38s - duo_security | Install Duo Unix SSH Integration----------------------------3.37s - loggly | Install TLS version-----------------------------------------------3.36s diff --git a/ansible-profile/callback_plugins/profile_tasks.py b/ansible-profile/callback_plugins/profile_tasks.py index dc74ee291..e9728a803 100644 --- a/ansible-profile/callback_plugins/profile_tasks.py +++ b/ansible-profile/callback_plugins/profile_tasks.py @@ -1,3 +1,31 @@ +# The MIT License (MIT) + +# Copyright (c) 2014 Jharrod LaFon + +# Permission is hereby granted, free of charge, to any person obtaining a copy of +# this software and associated documentation files (the "Software"), to deal in +# the Software without restriction, including without limitation the rights to +# use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +# the Software, and to permit persons to whom the Software is furnished to do so, +# subject to the following conditions: + +# The above copyright notice and this permission notice shall be included in all +# copies or substantial portions of the Software. + +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +# FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +# COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +# IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +''' +A plugin for timing tasks + +This plugin records the time spent in each task. +At the end of the playbook, it displays the time spent in the 10 slowest tasks. +''' + import time @@ -9,6 +37,9 @@ class CallbackModule(object): self.stats = {} self.current = None + # Reason: The is_conditional parameter is part of the Ansible plugin API + # Status: permanently disabled + # pylint: disable=unused-argument def playbook_on_task_start(self, name, is_conditional): """ Logs the start of each task @@ -21,6 +52,9 @@ class CallbackModule(object): self.current = name self.stats[self.current] = time.time() + # Reason: The stats parameter is part of the Ansible plugin API + # Status: permanently disabled + # pylint: disable=unused-argument def playbook_on_stats(self, stats): """ Prints the timings |