远程 API¶
警告
此特性为实验性功能,可能会有重大变更。更多信息请参见Conan 稳定性章节。
- class Remote(name, url, verify_ssl=True, disabled=False, allowed_packages=None, remote_type=None)¶
Remote
类代表一个远程软件包注册中心。它是一个只读的不透明对象,不应直接创建,而应通过相关的RemotesAPI
子 API 方法获取。
- class RemotesAPI(conan_api)¶
RemotesAPI
管理远程的定义,远程定义保存在 Conan home 目录下的“remotes.json”文件中,支持远程的添加、移除、更新、重命名、启用、禁用。这些操作不会联系服务器或检查它们是否存在。如果它们不可用,稍后在使用时将会失败。user_xxx
方法执行与身份验证相关的任务,其中一些方法会联系服务器执行身份验证。- list(pattern=None, only_enabled=True)¶
获取与模式匹配的 Remote 对象列表。
- 参数:
pattern –
None
,单个str
或str
列表。如果为None
,将返回所有远程(等同于pattern="*"
)。only_enabled – 布尔值,默认只返回已启用的远程
- 返回:
一个 Remote 对象列表
- disable(pattern)¶
禁用所有匹配
pattern
的远程- 参数:
pattern – 单个
str
或str
列表。如果模式是没有诸如“*”等通配符的精确名称,并且找不到与该精确名称匹配的远程,则会引发错误。- 返回:
已禁用的 Remote 对象列表(即使它们之前已被禁用)
- enable(pattern)¶
启用所有匹配
pattern
的远程。- 参数:
pattern – 单个
str
或str
列表。如果模式是没有诸如“*”等通配符的精确名称,并且找不到与该精确名称匹配的远程,则会引发错误。- 返回:
已启用的 Remote 对象列表(即使它们之前已被启用)
- add(remote: Remote, force=False, index=None)¶
添加一个新的 Remote 对象到现有列表
- 参数:
remote – 要添加的 Remote 对象
force – 如果远程已存在则不失败(默认会失败)
index – 如果未定义,新远程将位于末尾。传入一个整数可将远程插入到该位置而不是末尾
- remove(pattern)¶
移除匹配
pattern
的远程- 参数:
pattern – 单个
str
或str
列表。如果模式是没有诸如“*”等通配符的精确名称,并且找不到与该精确名称匹配的远程,则会引发错误。- 返回:
已移除的 Remote 对象列表
- update(remote_name: str, url=None, secure=None, disabled=None, index=None, allowed_packages=None)¶
更新现有远程
- 参数:
remote_name – 要更新的远程名称,必须存在
url – 要更新的可选 URL,如果未定义则不会更新
secure – 要更新的可选 SSL 安全连接设置
disabled – 可选的禁用状态
index – 可选整数,用于更改远程的顺序
allowed_packages – 可选列表,指定允许从该远程获取的包
- rename(remote_name: str, new_name: str)¶
更改现有远程的名称
- 参数:
remote_name – 之前的现有名称
new_name – 新名称