Fabric常用API

Fabric常用API

local   执行本地命令,如local('uname -s')
lcd     切换本地目录,如lcd('/home')
cd      切换远程目录
run     执行远程命令
sudo  sudo   方式执行远程命令,如sudo('/etc/init.d/httpd start')
put          上传本地文件到远程主机,如put('/home/user.info', '/data/user.info')
get          从远程主机下载文件到本地,如get('/data/user.info', '/home/user.info')
prompt       获得用户输入信息,如prompt('please input user password:')
confirm      获得提示信息确认,如confirm('Test faild, Continue[Y/N]?')
reboot       重启远程主机,如reboot()
 
@task        函数装饰符,标识的函数为fab可调用,非标记对fab不可见,纯业务逻辑
@runs_once   函数装饰符,标识的函数只会执行一次,不受多台主机影响

编辑fabtest.py文件,给showColor函数添加@task装饰符

from fabric.api import *
from fabric.colors import *	
env.roledefs = {
			'slave1server':['root@slave1',],
			'slave2server':['root@slave2',],
			'slave3server':['root@slave3',]
			}
#env.password = '123qwe!@#'

@roles('slave1server')
def task1():
	run('/usr/zookeeper/bin/zkServer.sh restart')
	run('/usr/zookeeper/bin/zkServer.sh status')

@roles('slave2server')
def task2():
	run('/usr/zookeeper/bin/zkServer.sh restart')
	run('/usr/zookeeper/bin/zkServer.sh status')

@roles('slave3server')
def task3():
	run('/usr/zookeeper/bin/zkServer.sh restart')
	run('/usr/zookeeper/bin/zkServer.sh status')
	
def dotask():
	execute(task1)
	execute(task2)
	execute(task3)
#*************************************************	

def task4():
	local('/usr/zookeeper/bin/zkServer.sh restart')
	local('/usr/zookeeper/bin/zkServer.sh status')

def task5():
	local('ls -ls /usr')
	
def taskLocal():
	task4()
	task5()
@task	
def showColor():
	print green('success')
	print red('fail')
	print yellow('yellow')
执行命令
[root@master ~]# fab -f fabtest.py -l
Available commands:

    showColor
[root@master ~]#

[root@master ~]# fab -f fabtest.py taskLocal

Warning: Command(s) not found:
    taskLocal

Available commands:

    showColor
[root@master ~]#



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值