08678 发表于 2015-11-25 15:45:23

ansible学习之--简单学习笔记3

  使用python调用playbook和shell脚本
  我的python脚本为:
  #!/usr/bin/env python
import ansible.playbook
from ansible import callbacks
from ansible import utils
import json
import commands
status, result = commands.getstatusoutput('sh /home/prod/svnrepos/test/install.sh')
print status, result
example_host = ansible.inventory.host.Host(
name = '10.204.186.92',
port = 22,
)
example_group = ansible.inventory.group.Group(
name = 'sample_group_name'
)
example_group.add_host(example_host)
example_inventory = ansible.inventory.Inventory()
example_inventory.add_group(example_group)
stats = callbacks.AggregateStats()
playbook_cb = callbacks.PlaybookCallbacks(verbose=utils.VERBOSITY)
runner_cb = callbacks.PlaybookRunnerCallbacks(stats,verbose=utils.VERBOSITY)
res=ansible.playbook.PlayBook(
playbook = 'playbook.yml',
stats = stats,
callbacks = playbook_cb,
runner_callbacks = runner_cb,
inventory = example_inventory,
subset = 'sample_group_name'
).run()
print json.dumps(res, sort_keys=True, indent=4, separators=(',', ': '))

  playbook为:

  shell脚本为:



  执行python脚本,结果为:

  加密之后向加密磁盘copy文件修改文件属性
  




  
页: [1]
查看完整版本: ansible学习之--简单学习笔记3