config
¶
-
class
fabric.config.
Config
(*args, **kwargs)¶ 安
invoke.config.Config
具有额外结构相关行为的子类。这个类的行为如下
invoke.config.Config
在所有方面,除了以下例外:- 它的
global_defaults
StaticMethod已扩展为添加/修改一些默认设置(有关详细信息,请参阅下面的文档); - 它触发加载特定于结构的env vars(例如
FABRIC_RUN_HIDE=true
而不是INVOKE_RUN_HIDE=true
)和文件名(例如/etc/fabric.yaml
而不是/etc/invoke.yaml
) - 它将API扩展到用于加载的帐户
ssh_config
文件(存储为附加属性,与常规配置数据/层次结构没有直接关系。) - 它添加了一个新的可选构造函数,
from_v1
哪一个 generates configuration data from Fabric 1 .
用于
Connection
,如使用香草invoke.config.Config
对象需要用户手动定义port
,user
诸如此类。2.0 新版功能.
-
__init__
(*args, **kwargs)¶ 创建一个新的特定于结构的配置对象。
有关大多数API详细信息,请参阅
invoke.config.Config.__init__
. 下面列出了此子类的新参数。参数: - ssh_config -- 自定义/显式
paramiko.config.SSHConfig
对象。如果给定,则阻止加载任何ssh配置文件。违约:None
. - runtime_ssh_path (str) -- 要加载的运行时ssh配置路径。如果给定,则阻止加载系统/用户文件。违约:
None
. - system_ssh_path (str) -- 系统级ssh配置文件的位置。违约:
/etc/ssh/ssh_config
. - user_ssh_path (str) -- 用户级ssh配置文件的位置。违约:
~/.ssh/config
. - lazy (bool) -- 与父类具有相同的含义'
lazy
,但还控制是否延迟ssh配置文件加载(需要手动调用load_ssh_config
例如,可能需要等待用户输入才能调用set_runtime_ssh_path
,这将确切地说明load_ssh_config
做。
- ssh_config -- 自定义/显式
-
clone
(*args, **kwargs)¶ 返回此配置对象的副本。
新对象在配置的源和任何加载(或用户操作)的数据方面都是相同的,但将是一个具有尽可能少的共享可变状态的独特对象。
具体来说,所有
dict
配置中的值被递归地重新创建,非dict叶值服从copy.copy
(注: notcopy.deepcopy
,因为这可能导致各种对象(如编译的regexen或线程锁)出现问题,这些对象通常隐藏在API或DB客户机等富聚合的深层。因此,可能最终在配置及其克隆之间共享的唯一剩余配置值是那些不共享的“富”对象
copy.copy
干净地,或组合非dict对象(如列表或元组)。参数: into -- A Config
新克隆应“升级”到的子类。由拥有自己的客户端库使用Config
子类,例如定义额外的默认值;克隆到这些子类中的一个子类,可以确保任何新的键/子树被优雅地添加,而不会覆盖任何预先定义的内容。违约:None
(克隆到另一个常规Config
)返回: A Config
或类的实例into
.加薪: TypeError
如果into
给定了一个值,而该值不是Config
子类。1.0 新版功能.
-
classmethod
from_v1
(env, **kwargs)¶ 使用结构1的备用构造函数
env
听写设置。除此之外的所有关键字参数
env
将不受干扰地传递给主构造函数,但overrides
,内部使用,最终将类似于env
上面有用户提供的覆盖。警告
因为您自己的配置覆盖将从
env
,确保只设置值 打算 改变你的v1环境!详细说明
env
var是导入的,它们在新的API中会变成什么,请参见 v1-env-var-imports .参数: env -- 显式结构1 env
口述(技术上,任何fabric.utils._AttributeDict
实例应该可以)从中提取配置。2.4 新版功能.
-
static
global_defaults
()¶ 默认配置值和行为切换。
Fabric只扩展此方法,以便对Invoke的
global_defaults
;请参阅其文档以了解基本值,例如配置子树控制run
或如何tasks
表现。有关调用级别默认值的特定于结构的修改和添加,请参阅我们自己的配置文档: 默认配置值 .
2.0 新版功能.
-
load_ssh_config
()¶ 从磁盘加载ssh配置文件。
另外(预先)确保调用级别config re:runtime ssh config文件路径被考虑在内。
2.0 新版功能.
-
set_runtime_ssh_path
(path)¶ 配置运行时级别的ssh配置文件路径。
如果设置,这将导致
load_ssh_config
跳过系统和用户文件,就像openssh一样。2.0 新版功能.
- 它的