gpt4 book ai didi

thoughtworks-go - 我可以在 go 模板中引用环境变量吗?

转载 作者:行者123 更新时间:2023-12-04 17:35:04 26 4
gpt4 key购买 nike

试图从 go 模板中引用环境变量,但我认为这是不可能的?在文档和示例中看不到任何内容,我通过大量使用参数但从来没有看到环境变量。我想要的是类似的东西

<templates>
<pipeline name="TestEcho">
<stage name="Echo">
<jobs>
<job name="Echo">
<tasks>
<exec command="echo ${SOME_ENVIRONMENT_VARIABLE}">
</exec>
</tasks>
</job>
</jobs>
</stage>
</pipeline>
<templates>

提前致谢!

蒂姆

最佳答案

是的你可以 !

您应该使用 %SOME_ENVIRONMENT_VARIABLE% 而不是 ${SOME_ENVIRONMENT_VARIABLE} (在 Windows 代理上)。

我猜您正在使用 Windows 代理。 Thoughtworks 的文档专注于 Linux,这就是为什么他们的示例不适合您。

您可以使用所有 Go Standard environment variables在你的任务中。

您可以在以下位置设置环境变量:

  • 环境等级
  • 管道级别(覆盖环境级别)
  • 阶段级别(覆盖管道级别)

  • 您可以在任务中使用所有这些环境变量:

    <pipeline name="TestEcho">
    <stage name="Echo">
    <jobs>
    <job name="Echo">
    <tasks>
    <exec command="echo %SOME_ENVIRONMENT_VARIABLE%">
    </exec>
    </tasks>
    </job>
    </jobs>
    </stage>
    </pipeline>

    您可以在环境级别设置环境变量:

    <environments>
    <environment name="SomeEnvironment">
    <environmentvariables>
    <variable name="SomeVariable">
    <value>SomeValue</value>
    </variable>
    </environmentvariables>
    <pipelines>
    <pipeline name="TestEcho" />
    </pipelines>
    </environment>
    </environments>

    您可以在管道级别设置环境变量:

    <pipeline name="TestEcho">
    <environmentvariables>
    <variable name="SomeVariable">
    <value>SomeValue</value>
    </variable>
    </environmentvariables>
    <stage name="Echo">
    <jobs>
    <job name="Echo">
    <tasks>
    <exec command="echo %SomeVariable%">
    </exec>
    </tasks>
    </job>
    </jobs>
    </stage>
    </pipeline>

    您可以在阶段级别设置环境变量:

    <pipeline name="TestEcho">
    <stage name="Echo">
    <jobs>
    <job name="Echo">
    <environmentvariables>
    <variable name="SomeVariable">
    <value>SomeValue</value>
    </variable>
    </environmentvariables>
    <tasks>
    <exec command="echo %SomeVariable%">
    </exec>
    </tasks>
    </job>
    </jobs>
    </stage>
    </pipeline>

    您可以覆盖环境变量:

    <pipeline name="TestEcho">
    <environmentvariables>
    <variable name="SomeVariable">
    <value>Value1</value>
    </variable>
    </environmentvariables>
    <stage name="Echo">
    <jobs>
    <job name="Echo">
    <environmentvariables>
    <variable name="SomeVariable">
    <value>Value2</value>
    </variable>
    </environmentvariables>
    <tasks>
    <exec command="echo %SomeVariable%"><!-- Write Value2 -->
    </exec>
    </tasks>
    </job>
    <job name="Echo2">
    <tasks>
    <exec command="echo %SomeVariable%"><!-- Write Value1 -->
    </exec>
    </tasks>
    </job>
    </jobs>
    </stage>
    </pipeline>

    Source that helped me

    关于thoughtworks-go - 我可以在 go 模板中引用环境变量吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22806693/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com