Skip to main content

fabric 2.5.0添加类似env配置文件,减少执行命令重复操作

fabric 2.5.0添加类似env配置文件,减少执行命令重复操作

fabric 2.5.0添加类似env配置文件,减少执行命令重复操作

fabric 2.5.0可以通过添加类似env配置文件,从而达到减少执行命令的重复操作,比如减少每次执行任务的用户名和密码的输入

如果将用户名和密码写入fabric.py这种项目文件中,并提交到git仓库的话也是非常不安全的

但是根据用户来创建一个可自己访问和执行的文件就比较方便,尤其是在linux系统下,多个用户多一个操作系统都有权限的话,每个用户下面只要有个~/.fabric.yaml文件

便可以执行fabric的任务操作,从而避免了将重要密码暴漏给所有人,或者将自己的密码共享给所有人

创建配置文件

touch ~/.fabric.yaml

在配置文件中添加类似如下的配置信息

user: dpzhang
pwd: 123456

然后在fabric.py中添加任务

# -*- coding: utf-8 -*-
# @Author: durban.zhang
# @Date:   2019-12-04 16:52:35
# @Last Modified by:   durban.zhang
# @Last Modified time: 2019-12-20 18:50:44

import getpass
from fabric import Connection, task

@task
def test(c):
    print(c.user)
    print(c.pwd)

命令行下执行

fab test

得到输出的结果如下

dpzhang
123456

如果将test方法修改如下

# -*- coding: utf-8 -*-
# @Author: durban.zhang
# @Date:   2019-12-04 16:52:35
# @Last Modified by:   durban.zhang
# @Last Modified time: 2019-12-20 18:50:44

import getpass
from fabric import Connection, task

@task
def test(c):
    print(c.user)
    print(c.pwd)
    print(c.hosts.host)

同时修改~/.fabric.yaml,内容修改后如下

user: dpzhang
pwd: 123456
hosts:
    host: 127.0.0.1

再次运行

fab test

得到的输出结果如下

dpzhang
123456
127.0.0.1

 

版权声明

版权声明

张大鹏 创作并维护的 Walkerfree 博客采用 创作共用保留署名-非商业-禁止演绎4.0国际许可证。本文首发于 Walkerfree 博客(http://www.walkerfree.com/),版权所有,侵权必究。本文永久链接:http://www.walkerfree.com/article/277