Remotes 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 管理 remotes 的定义,包含在 Conan 主目录中的 “remotes.json” 文件中,支持 remotes 的添加、删除、更新、重命名、启用、禁用。这些操作不联系服务器,也不检查它们的存在。如果它们不可用,则稍后在使用时会失败。

user_xxx 方法执行与身份验证相关的任务,其中一些方法将联系服务器以执行此类身份验证

list(pattern=None, only_enabled=True)

获取与模式匹配的 Remote 对象列表。

参数:
  • patternNone,单个 strstr 列表。如果为 None,将返回所有 remotes(等效于 pattern="*")。

  • only_enabled – 布尔值,默认情况下仅返回已启用的 remotes

返回值:

Remote 对象列表

disable(pattern)

禁用与 pattern 匹配的所有 remotes

参数:

pattern – 单个 strstr 列表。如果模式是像“*”这样没有通配符的精确名称,并且未找到与该精确名称匹配的 remote,则会引发错误。

返回值:

已禁用的 Remote 对象列表(即使它们已被禁用)

enable(pattern)

启用与 pattern 匹配的所有 remotes。

参数:

pattern – 单个 strstr 列表。如果模式是像“*”这样没有通配符的精确名称,并且未找到与该精确名称匹配的 remote,则会引发错误。

返回值:

已启用的 Remote 对象列表(即使它们已被启用)

get(remote_name)

获取 Remote 对象

参数:

remote_name – 要返回的 remote 的确切名称

返回值:

Remote 对象,如果 remote 不存在,则引发异常。

add(remote: Remote, force=False, index=None)

将新的 Remote 对象添加到现有对象

参数:
  • remote – 要添加的 Remote 对象

  • force – 如果 remote 已存在则不失败(但默认情况下会失败)

  • index – 如果未定义,则新的 remote 将是最后一个。传递一个整数以将 remote 插入到该位置而不是最后一个位置

remove(pattern)

删除与 pattern 匹配的 remotes

参数:

pattern – 单个 strstr 列表。如果模式是像“*”这样没有通配符的精确名称,并且未找到与该精确名称匹配的 remote,则会引发错误。

返回值:

已删除的 Remote 对象列表

update(remote_name: str, url=None, secure=None, disabled=None, index=None, allowed_packages=None)

更新现有的 remote

参数:
  • remote_name – 要更新的 remote 的名称,必须存在

  • url – 可选的 url 以进行更新,如果未定义,则不会更新

  • secure – 可选的 ssl 安全连接以进行更新

  • disabled – 可选的禁用状态

  • index – 可选整数以更改 remote 的顺序

  • allowed_packages – 允许从此 remote 获取的包的可选列表

rename(remote_name: str, new_name: str)

更改现有 remote 的名称

参数:
  • remote_name – 之前的现有名称

  • new_name – 新名称

user_login(remote: Remote, username: str, password: str)

使用提供的用户名和密码对给定的 remote 执行用户身份验证

参数:
  • remoteRemote 对象

  • username – 用户登录名,类型为 str

  • password – 密码 str

user_logout(remote: Remote)

从给定的 Remote 注销

参数:

remote – 要注销的 Remote 对象