当前位置: 首页 > 面试题库 >

在詹金斯中找不到环境变量

荆乐
2023-03-14
问题内容

我想在詹金斯中设置很多变量。我试图把他们的.bashrc.bash_profile.profile该的jenkins用户,但是当构建正在发生詹金斯无法找到他们。

唯一可行的方法是将所有env变量放入其中,Jenkinsfile如下所示:

env.INTERCOM_APP_ID = '12312'
env.INTERCOM_PERSONAL_ACCESS_TOKEN = '1231'
env.INTERCOM_IDENTITY_VERIFICATION_KEY='asadfas'

但是我不认为这是个好方法。

在詹金斯中设置环境变量的正确方法是什么?


问题答案:

在我看来,这很正常。INTERCOM_PERSONAL_ACCESS_TOKEN并且INTERCOM_IDENTITY_VERIFICATION_KEY应被视为文本凭据,您可以使用environment

指令添加环境变量。

stages {
    stage('Example') {
        environment {
            INTERCOM_APP_ID = '12312'
            INTERCOM_PERSONAL_ACCESS_TOKEN = credentials('TokenCrednetialsID')
            INTERCOM_IDENTITY_VERIFICATION_KEY = credentials('VerificationCrednetialsID')
        }
        steps {
            echo "Hello ${env.INTERCOM_APP_ID}"
        }
    }
}

如果你需要保持环境变量分开JenkinsFile,你可以创建一个包含所有的常规文件,然后将该文件加载到Jenkinsfile使用

load "$JENKINS_HOME/.envvars/stacktest-staging.groovy"

有关更多信息,请查看以下链接

https://jenkins.io/doc/pipeline/steps/workflow-
cps/



 类似资料:
  • 问题内容: 我希望能够执行以下操作: 并安排詹金斯。 Jenkins中的“ 环境变量” 部分不这样做。而是设置了。 如何让Jenkins评估Shell命令并将输出分配给环境变量? 最终,我希望能够将作业的执行者分配给可以传递到其他脚本或由其他脚本使用的环境变量。 问题答案: 可以通过以下方式通过EnvInject插件完成此操作: 创建一个运行的“执行外壳”构建步骤: 创建一个“ 注入”环境变量 构

  • 问题内容: 尝试粘贴到我安装了Java JDK的位置,但是Jenkins一直说: 还尝试并得到: 任何人最后一个文件夹/文件应该是什么?我假设bin \ java,但这给我带来麻烦。 问题答案: 应该指向

  • 问题内容: 我有一个包含differents变量的docker-compose.yml文件 在我的外壳中,我导出RegistryUrl和image_version 这在我的本地环境中有效(我正在使用boot2Docker),但在Jenkins中则无效。我发错消息了。 我尝试通过EnvInject插件传递env变量,但它也不起作用。 问题答案: 您在jenkins shell中的环境变量将不会自动导

  • 问题内容: 我有一个docker撰写文件 而且我已经配置了詹金斯工作以通过调用另一个外壳文件“ environment.sh”来执行此文件,但是它尝试执行以下错误: 我如何在jenkins服务器中下载和配置docker-compose,也没有可用的插件!,适用于docker-compose 问题答案: $ PATH环境变量中可能不存在您。 首先,您应该删除所有冲突的内容- 在大多数Linux系统上

  • 我对Jenkins很熟悉,但对Maven很陌生,我正试图找出如何阻止我们在Jenkins中的Maven工作在文件中扩展环境变量。 在我们的应用程序ontext.xml文件中,我们引用了一个环境变量${DeployMode},Tomcat在加载/运行时扩展该环境变量: 问题是,在Jenkins运行的Maven构建中,如果构建机器上设置了环境变量,那么构建的WEB-INF/Application at

  • 问题内容: 我需要在我们的jenkins服务器(在Windows上运行)上使用特定的conda环境运行jenkins构建。我认为这和运行一样容易: 但这似乎导致构建甚至在脚本启动之前退出。这是jenkins控制台日志: 如果删除激活行,则python脚本可以正常执行。 仅供参考,我正在运行的脚本: 有人知道发生了什么吗?我应该直接调用相关的python可执行文件吗? 问题答案: 使用以防止激活从它