jenkins - 带有 ConanClient 的 Jenkins Artifactory 插件:巨大的 BuildInfo 引用了 ConanClient 返回的不相关包
问题描述
由于某种原因BuildInfo
,该方法返回的对象ConanClient.run()
包含对许多不相关的柯南包作为“模块”的引用。似乎这些包也是建立在同一个 Jenkins slave 上的,但当然是在不同的工作中。
这是一个最小的例子,导致巨大BuildInfo
的被发布到 Artifactory:
def conanUploadClient = Artifactory.newConanClient()
def buildInfoTest = conanUploadClient.run command: "upload ${aliasID} -r ${remoteName}".toString()
artifactoryServer.publishBuildInfo buildInfoTest
所有其他之前的柯南命令(如conan install
使用另一个 ConanClient 实例执行)以确保不会从这些操作中继承有关无关包的错误信息。
这是一个“控制实验”,导致BuildInfo
没有任何关联的柯南包/“模块”被发布到 Artifactory。
def conanUploadClient = Artifactory.newConanClient()
def buildInfoTest = Artifactory.newBuildInfo()
artifactoryServer.publishBuildInfo buildInfoTest
来自其他构建的错误信息从何而来?
柯南 1.8.2、Windows 10、Jenkins Artifactory 插件 2.16.2
解决方案
似乎 Jenkins 插件读取了整个内容$CONAN_USER_HOME/conan_log.log
并将其BuildInfo
放入ConanClient.run()
. 我在构建之前删除了文件,现在信息正常。
推荐阅读
- python - Python - 如何异步接收 WMI 事件
- sharepoint - SharePoint REST - 为什么更新元数据返回 204 而不是 200?
- javascript - 了解javascript中的原型/构造函数
- arrays - 如何计算数组内矩阵的相关系数?
- r - ggplot2 图的子集数据
- git - Git 和 Chef 最佳实践
- python - Python 子进程 nbtstat “找不到文件”
- google-cloud-platform - 上传的文件夹不显示
- kubernetes - 启用 ExpandPersistentVolume
- debugging - 为什么我在使用 Xtensa Tensilica OCD 时收到“调试域已关闭”错误消息?