如何使用Fabric进行ForwardAgent?

时间:2011-10-11 16:24:19

标签: python deployment automation fabric

我使用私钥对在远程服务器上成功run() ning命令。

但是,我想使用我的本地密钥(或使用我所在的本地ssh代理)在远程服务器上执行git clone ssh://private/repo

如何使用面料做到这一点?

2 个答案:

答案 0 :(得分:53)

由于版本1.4 fabric具有environment option,因此可以启用代理转发。

env.forward_agent = True

UPD fabric之前的此功能was buggy 1.4.2

答案 1 :(得分:1)

简短的回答是,Fabric使用paramiko的分叉版本,而paramiko不支持ssh代理转发。

答案很长,fabricparamiko都存在问题。即使在结构问题中存在comment,其中包含指向结构和具有ssh转发支持的分叉paramiko版本的分支的链接。因此,如果您想要使用该功能,您需要从那里获取最新版本或等待一段时间,直到它正式发布。