Export API¶
警告
此功能是实验性的,可能会发生重大更改。有关更多信息,请参阅 Conan 稳定性 部分。
警告
子 API 不应自行初始化。它们旨在仅通过主 ConanAPI 属性访问。
- class ExportAPI(conan_api, helpers)¶
此 API 提供将工件(包括配方和预编译的包二进制文件)从用户文件夹导出到 Conan 缓存的方法,作为 Conan 配方和 Conan 包二进制文件
- export(path, name: str = None, version: str = None, user: str = None, channel: str = None, lockfile=None, remotes: List[Remote] = None) Tuple[RecipeReference, ConanFile]¶
导出
conanfile.py配方及其相关文件到 Conan 缓存。将计算并分配一个“recipe-revision”。- 参数:
path – 要导出的 conanfile 的路径
name – 可选的包名称。通常不需要,因为它由配方属性或使用
set_name()方法动态定义。如果它在配方中和作为参数定义,但它们不匹配,将引发错误。version – 可选的版本。它可以在配方中使用 version 属性或使用 ‘set_version()’ 方法动态定义。如果它在配方中和作为参数定义,但它们不匹配,将引发错误。
user – 可选的用户。可以由配方属性定义。如果它在配方中和作为参数定义,但它们不匹配,将引发错误。
channel – 可选的通道。可以由配方属性定义。如果它在配方中和作为参数定义,但它们不匹配,将引发错误。
lockfile – 可选,仅当配方具有要锁定的 ‘python-requires’ 时相关
remotes – 可选,仅与解析 ‘python-requires’ 中的远程仓库相关
- 返回:
导出的 RecipeReference 和 ConanFile 对象组成的元组
- export_pkg_graph(path, ref: RecipeReference, profile_host, profile_build, remotes: List[Remote], lockfile=None, is_build_require=False, skip_binaries=False, output_folder=None)¶
为给定配置计算依赖关系图,用于 Conan 缓存中已存在的(先前导出的)配方。此方法计算完整的依赖关系图,使用配置文件、lockfile 和远程仓库信息,就像任何其他 install/graph/create 命令一样。这对于计算要导出到 Conan 缓存的二进制文件的“package_id”是必要的。生成的依赖关系图可以传递给
export_pkg()方法- 参数:
path – 用户文件夹中 conanfile.py 的路径
ref – 完整的 RecipeReference,包括 recipe-revision
profile_host – 主机上下文的配置文件
profile_build – 构建上下文的配置文件
lockfile – 可选的 lockfile
remotes – 远程仓库列表
is_build_require – 如果包打算用作 tool-requires
skip_binaries –
output_folder – 包含输出文件的文件夹,例如潜在的环境脚本
- 返回:
可以传递给
export_pkg()方法的 Graph 对象
- export_pkg(graph, output_folder=None) None¶
执行导出的配方的
package()方法,以便将工件从用户文件夹复制到 Conan 缓存包文件夹- 参数:
graph – Graph 对象
output_folder – 安装依赖项的环境脚本等生成文件的可选文件夹