如Using an SSH keyfile with Fabric中所述,可以使用env.key_filename
设置ssh密钥文件。此设置如何与env.roledefs
中定义远程主机进行交互?
如果我设置了key_filename,Fabric会尝试将该密钥用于所有主机吗?如果不同的主机需要不同的密钥怎么办?
解决方法是在每个主机集的单独任务中设置env.hosts
和env.key_filename
,但是有一种方法可以使用roledef功能吗?
答案 0 :(得分:2)
您可以将env.key_filename
设置为文件名列表,然后为每个连接尝试每个文件名。你需要编写任何更具体的脚本。
来自this doc。
所以回答:
..但有没有一种方法可以使用roledef功能?
没有