@ -146,7 +146,27 @@ EXAMPLES = '''
state : present
'''
RETURN = ''' # '''
RETURN = '''
repo :
description : A source string for the repository
returned : always
type : str
sample : " deb https://artifacts.elastic.co/packages/6.x/apt stable main "
sources_added :
description : List of sources added
returned : success , sources were added
type : list
sample : [ " /etc/apt/sources.list.d/artifacts_elastic_co_packages_6_x_apt.list " ]
version_added : " 2.15 "
sources_removed :
description : List of sources removed
returned : success , sources were removed
type : list
sample : [ " /etc/apt/sources.list.d/artifacts_elastic_co_packages_6_x_apt.list " ]
version_added : " 2.15 "
'''
import copy
import glob
@ -688,15 +708,18 @@ def main():
sources_after = sourceslist . dump ( )
changed = sources_before != sources_after
if changed and module . _diff :
diff = [ ]
for filename in set ( sources_before . keys ( ) ) . union ( sources_after . keys ( ) ) :
diff . append ( { ' before ' : sources_before . get ( filename , ' ' ) ,
' after ' : sources_after . get ( filename , ' ' ) ,
' before_header ' : ( filename , ' /dev/null ' ) [ filename not in sources_before ] ,
' after_header ' : ( filename , ' /dev/null ' ) [ filename not in sources_after ] } )
else :
diff = { }
diff = [ ]
sources_added = set ( )
sources_removed = set ( )
if changed :
sources_added = set ( sources_after . keys ( ) ) . difference ( sources_before . keys ( ) )
sources_removed = set ( sources_before . keys ( ) ) . difference ( sources_after . keys ( ) )
if module . _diff :
for filename in set ( sources_added . union ( sources_removed ) ) :
diff . append ( { ' before ' : sources_before . get ( filename , ' ' ) ,
' after ' : sources_after . get ( filename , ' ' ) ,
' before_header ' : ( filename , ' /dev/null ' ) [ filename not in sources_before ] ,
' after_header ' : ( filename , ' /dev/null ' ) [ filename not in sources_after ] } )
if changed and not module . check_mode :
try :
@ -728,7 +751,7 @@ def main():
revert_sources_list ( sources_before , sources_after , sourceslist_before )
module . fail_json ( msg = to_native ( ex ) )
module . exit_json ( changed = changed , repo = repo , s tate= state , diff = diff )
module . exit_json ( changed = changed , repo = repo , s ources_added= sources_added , sources_removed = sources_removed , s tate= state , diff = diff )
if __name__ == ' __main__ ' :