jenkins - 如何通过jenkins在docker容器中调用conan?错误 无法执行脚本 conan

标签 jenkins cmake conan

使用 Docker 作为构建环境,我的 jenkinsfile 启动指定的 docker 容器并调用 CMake,使用 conan 等触发构建过程。不幸的是,管道失败,输出如下:

-- Conan: checking conan executable
-- Conan: Found program /usr/bin/conan
-- Conan: Version found [148] Failed to execute script conan
 Traceback (most recent call last):
  File "conan/conans/conan.py", line 11, in <module>
 File "conan/conans/conan.py", line 7, in run
 File "conan/conans/client/command.py", line 2151, in main
 File "conan/conans/client/conan_api.py", line 222, in factory
 File "conan/conans/client/conan_api.py", line 234, in __init__
 File "conan/conans/client/migrations.py", line 26, in __init__
 File "conan/conans/client/cache/cache.py", line 78, in __init__
File "conan/conans/client/cache/cache.py", line 150, in config
  File "conan/conans/util/files.py", line 190, in save
 FileNotFoundError: [Errno 2] No such file or directory: '/.conan/conan.conf'
-- Conan executing: /usr/bin/conan install . -s build_type=Release -s compiler=clang -s compiler.version=10 -s compiler.libcxx=libstdc++11 -g=cmake --build=missing
[176] Failed to execute script conan
 Traceback (most recent call last):

不知道问题出在哪里。如果我启动容器并手动构建它,它就可以工作。 如果我手动创建它,则会收到以下错误:

Conan: Version found ERROR: Can't write version file in /.conan/version.txt

最佳答案

我将以下环境变量添加到我的 jenkinsfile 中。然后就可以了!我试图在 docker 容器中定义环境变量,但失败了

  environment {
        CONAN_USER_HOME = "${env.WORKSPACE}/"
        CONAN_NON_INTERACTIVE = 1
    } 

关于jenkins - 如何通过jenkins在docker容器中调用conan?错误 无法执行脚本 conan,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62135723/

相关文章:

c++ - Conan 包从官方仓库迁移到本地私有(private)仓库

maven - 具有Maven,Jenkins,Nexus的基础架构

cmake - 从 cmake 构建中删除特定文件

ios - 柯南错误 :I need to cross build packages for os:iOS with my Macos, 但是当第一个包完成时,它在测试时破坏了我的 cpt

linux - 制作共享对象时不能使用;使用 -fPIC 重新编译

c++ - CMAKE:重复调用具有不同参数的函数会产生相同的结果

Jenkins 松弛发送: channel alert notifications for @here or specific user

java - 只有通过 Jenkins 构建才能找到元素

java - jenkins 和 install4j 集成