Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
ansible
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
OpenEdx
ansible
Commits
7ed734df
Commit
7ed734df
authored
Mar 21, 2012
by
Michael DeHaan
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
move callbacks to seperate file, anticipating callbacks for Runner() as well
parent
7883f414
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
83 additions
and
60 deletions
+83
-60
bin/ansible-playbook
+2
-59
lib/ansible/callbacks.py
+80
-0
lib/ansible/runner.py
+1
-1
No files found.
bin/ansible-playbook
View file @
7ed734df
...
...
@@ -26,69 +26,12 @@ import ansible.playbook
import
ansible.constants
as
C
from
ansible
import
errors
from
ansible
import
utils
#######################################################
class
PlaybookCallbacks
(
object
):
def
__init__
(
self
):
pass
def
set_playbook
(
self
,
playbook
):
self
.
playbook
=
playbook
def
on_start
(
self
):
print
"
\n
"
def
on_task_start
(
self
,
name
,
is_conditional
):
print
utils
.
task_start_msg
(
name
,
is_conditional
)
def
on_setup_primary
(
self
):
print
"SETUP PHASE ****************************
\n
"
def
on_setup_secondary
(
self
):
print
"
\n
VARIABLE IMPORT PHASE ******************
\n
"
def
on_unreachable
(
self
,
host
,
msg
):
print
"unreachable: [
%
s] =>
%
s"
%
(
host
,
msg
)
def
on_failed
(
self
,
host
,
results
):
invocation
=
results
.
get
(
'invocation'
,
None
)
if
not
invocation
or
invocation
.
startswith
(
'setup '
)
or
invocation
.
startswith
(
'async_status '
):
print
"failed: [
%
s] =>
%
s
\n
"
%
(
host
,
utils
.
smjson
(
results
))
else
:
print
"failed: [
%
s] =>
%
s =>
%
s
\n
"
%
(
host
,
invocation
,
utils
.
smjson
(
results
))
def
on_ok
(
self
,
host
,
host_result
):
invocation
=
host_result
.
get
(
'invocation'
,
None
)
if
not
invocation
or
invocation
.
startswith
(
'setup '
)
or
invocation
.
startswith
(
'async_status '
):
print
"ok: [
%
s]
\n
"
%
(
host
)
else
:
print
"ok: [
%
s] =>
%
s
\n
"
%
(
host
,
invocation
)
def
on_import_for_host
(
self
,
host
,
imported_file
):
print
"
%
s: importing
%
s"
%
(
host
,
imported_file
)
def
on_not_import_for_host
(
self
,
host
,
missing_file
):
print
"
%
s: not importing file:
%
s"
%
(
host
,
missing_file
)
def
on_play_start
(
self
,
pattern
):
print
"PLAY [
%
s] ****************************
\n
"
%
pattern
def
on_async_confused
(
self
,
msg
):
print
msg
def
on_async_poll
(
self
,
jid
,
host
,
clock
,
host_result
):
print
utils
.
async_poll_status
(
jid
,
host
,
clock
,
host_result
)
def
on_dark_host
(
self
,
host
,
msg
):
print
"exception: [
%
s] =>
%
s"
%
(
host
,
msg
)
from
ansible
import
callbacks
def
summarize
(
results
):
''' print out per host statistics '''
print
"PLAY RECAP ******************************
\n
"
hosts
=
sorted
(
results
.
keys
())
for
host
in
hosts
:
print
"
%
s :
%
s"
%
(
host
,
utils
.
smjson
(
results
[
host
]))
...
...
@@ -129,7 +72,7 @@ def main(args):
forks
=
options
.
forks
,
verbose
=
True
,
remote_pass
=
sshpass
,
callbacks
=
PlaybookCallbacks
(),
callbacks
=
callbacks
.
PlaybookCallbacks
(),
timeout
=
options
.
timeout
)
try
:
...
...
lib/ansible/callbacks.py
0 → 100755
View file @
7ed734df
#!/usr/bin/python -tt
# (C) 2012, Michael DeHaan, <michael.dehaan@gmail.com>
# This file is part of Ansible
#
# Ansible is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# Ansible is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with Ansible. If not, see <http://www.gnu.org/licenses/>.
#######################################################
import
sys
import
utils
#######################################################
class
PlaybookCallbacks
(
object
):
def
__init__
(
self
):
pass
def
set_playbook
(
self
,
playbook
):
self
.
playbook
=
playbook
def
on_start
(
self
):
print
"
\n
"
def
on_task_start
(
self
,
name
,
is_conditional
):
print
utils
.
task_start_msg
(
name
,
is_conditional
)
def
on_setup_primary
(
self
):
print
"SETUP PHASE ****************************
\n
"
def
on_setup_secondary
(
self
):
print
"
\n
VARIABLE IMPORT PHASE ******************
\n
"
def
on_unreachable
(
self
,
host
,
msg
):
print
"unreachable: [
%
s] =>
%
s"
%
(
host
,
msg
)
def
on_failed
(
self
,
host
,
results
):
invocation
=
results
.
get
(
'invocation'
,
None
)
if
not
invocation
or
invocation
.
startswith
(
'setup '
)
or
invocation
.
startswith
(
'async_status '
):
print
"failed: [
%
s] =>
%
s
\n
"
%
(
host
,
utils
.
smjson
(
results
))
else
:
print
"failed: [
%
s] =>
%
s =>
%
s
\n
"
%
(
host
,
invocation
,
utils
.
smjson
(
results
))
def
on_ok
(
self
,
host
,
host_result
):
invocation
=
host_result
.
get
(
'invocation'
,
None
)
if
not
invocation
or
invocation
.
startswith
(
'setup '
)
or
invocation
.
startswith
(
'async_status '
):
print
"ok: [
%
s]
\n
"
%
(
host
)
else
:
print
"ok: [
%
s] =>
%
s
\n
"
%
(
host
,
invocation
)
def
on_import_for_host
(
self
,
host
,
imported_file
):
print
"
%
s: importing
%
s"
%
(
host
,
imported_file
)
def
on_not_import_for_host
(
self
,
host
,
missing_file
):
print
"
%
s: not importing file:
%
s"
%
(
host
,
missing_file
)
def
on_play_start
(
self
,
pattern
):
print
"PLAY [
%
s] ****************************
\n
"
%
pattern
def
on_async_confused
(
self
,
msg
):
print
msg
def
on_async_poll
(
self
,
jid
,
host
,
clock
,
host_result
):
print
utils
.
async_poll_status
(
jid
,
host
,
clock
,
host_result
)
def
on_dark_host
(
self
,
host
,
msg
):
print
"exception: [
%
s] =>
%
s"
%
(
host
,
msg
)
lib/ansible/runner.py
View file @
7ed734df
...
...
@@ -301,7 +301,7 @@ class Runner(object):
# needed for the setup module
args
=
" "
.
join
([
"
\"
%
s
\"
"
%
str
(
x
)
for
x
in
module_args
])
else
:
args
=
" "
.
join
([
str
(
x
)
for
x
in
module_args
])
args
=
" "
.
join
([
str
(
x
)
for
x
in
module_args
])
# by default the args to substitute in the action line are those from the setup cache
inject_vars
=
self
.
setup_cache
.
get
(
conn
.
host
,{})
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment