云客户?
免费开始>
在MyJFrog中升级>
云的新功能>





您正在查看此页面的旧版本。查看当前版本

与当前相比查看页面历史

«前版本22下一个”

概述

本页描述了管道中环境变量的可用性和用法。


您可以自定义您的工作流 通过使用运行时可用的环境变量。 例如,您的步骤可以根据管道名称和当前运行号构造文件名或构建ID。或者您的步骤可以根据资源的状态执行不同的命令。

JFrog Pipelines通过环境变量提供对管道和资源中有用的内部信息的访问。2022世界杯阿根廷预选赛赛程管道还提供了几种简单的方法,可以在管道执行期间将自己的环境变量注入运行时。

页面内容


标准环境变量

所有正在执行的管道都可以使用这些环境变量。

环境变量 描述

pipeline_name

名字当前正在执行的管道字符串。
run_number 当前正在执行的运行的数目。

run_id

运行的内部唯一ID。

step_name

名字在YAML中指定的步骤。

step_id

当前执行步骤的内部唯一ID。

step_type

类型在YAML字段中指定步骤(例如,“Bash”,“DockerBuild”等)

step_image_name

用于运行该步骤的Docker镜像的名称。pipelines-docker.jfrog.io / jfrog / pipelines-u16node).

step_image_tag

用于运行该步骤的Docker映像的标记。

step_node_name

用于运行步骤的节点名称(在添加节点时由用户配置)

体系结构

节点架构,例如x86_64

step_node_id

节点的内部唯一ID

step_node_pool_name 用于运行该步骤的节点池名称(创建池时配置的用户)。
project_name 项目名称
project_id JFrog pipeline中项目的ID
project_key 项目的关键。如果项目是默认项目,则此项为空。

step_url

直接链接到步骤

pipelines_api_url

API的URL

current_script_section

onStart / onExecute onComplete等等

operating_system

运行step的操作系统,例如Ubuntu_16.04

step_platform

一样操作系统

builder_api_token

用于在步骤执行期间调用管道API的令牌。内部使用,但可供用户访问。

step_triggered_by_resource_name

如果由资源触发,则名字资源的。否则,此环境变量为空。

step_triggered_by_step_name

如果是由其他步骤触发,则输入步骤的名称。其他的空

step_triggered_by_identity_name

如果是用户触发,则输入用户名。其他的空

step_affinity_group

亲和组步骤所属。默认值与步骤名称相同。

step_ <inputStepName> _statusName

这个环境变量在运行时自动可用,可以在任何步骤中使用。inputStepName输入步骤的名称。这个环境变量对于获取任何输入步骤的状态都很有用。
使用示例请参见使用step_ < inputStepName > _statusName

running_in_container

如果步骤在容器中运行,则为True。如果在主机上运行,则为False。

step_runtime

设置为“image”或“host”

JFROG_CLI_BUILD_NAME 如果没有在YML中设置为变量或添加为管道、运行或步骤变量,则将其设置为$pipeline_name。这在积累构建信息时使用。
JFROG_CLI_BUILD_NUMBER 如果没有在YML中设置为变量或添加为管道、运行或步骤变量,则将其设置为$run_number。这在积累构建信息时使用。
JFROG_CLI_BUILD_PROJECT 如果没有在YML中设置为变量或添加为管道、运行或步骤变量,则将其设置为$project_key。这在累积或发布构建信息时使用。

路径

当前执行的运行时环境中PATH的值。


管道

类中声明环境变量配置部分。这里声明的环境变量可用于管道中的所有步骤。

—名称:my_pipeline配置:environmentVariables: readOnly: env1: value1 env2: value2

步骤

方法中声明环境变量配置步骤在管道内的部分。来自此源的环境变量仅在声明它们的步骤中可用。

步骤:—name: step_1 type: Bash配置:environmentVariables: env1: value1 env2: value2

环境变量配置

除了键值语法之外,还可以在环境变量定义下使用以下属性来增强其配置:

财产 描述 必需的/可选
默认的 环境变量的默认值。 要求

描述 描述环境变量的使用情况。显示在自定义运行配置面板 可选
时可分配给环境变量的值列表在UI中使用自定义运行配置 可选
allowCustom 控件列表之外的自定义值是否允许用户使用。默认值为 可选

以下属性可用于两者中声明的环境变量管道步骤配置部分。

pipelines:—name: my_pipeline configuration: environmentVariables: readOnly: env1: value1 env2: default: value1 description: env2 description values:—value1—value2—value3 steps:—name: my_step type: Bash配置:environmentVariables: step_env1: default: value1 description: step env1 description values:—value1—value2—value3 allowCustom: true step_env2: value2

当你使用自定义配置触发运行, UI使用YAML文件中的配置来控制用户输入使用自定义配置运行面板:

如果allowCustom设为真正的,您可以为该字段输入任何值为运行定义自己的值。在上面的示例中,您可以为的输入自定义值step_env2,除了已经定义的值之外。请注意,自定义值仅对特定运行可用。


集成

使用集成的步骤可以通过环境变量访问集成的属性。环境变量的形式为:

int_ <集成名称> _ <标记>

例如,您可以访问一个的URL属性Artifactory集成命名myArtifactory通过环境变量:

$ printenv int_myArtifactory_url https://mycompany.com/artifactory/

您还可以通过使用集成的资源访问集成的属性。环境变量的形式为:

Res_ _<集成标签名称>_<标签>

例如,图像资源在其注册表标签。您可以访问Image资源所使用的Artifactory集成的URL模板如下:

$ printenv res_myImage_registry_url https://mycompany.com/artifactory/

有关更多信息,请参见管道集成


2022世界杯阿根廷预选赛赛程

中指定资源的步骤input2022世界杯阿根廷预选赛赛程resources可以通过环境变量访问该资源的属性。环境变量的形式为:

res_ <资源名称> _ <标记>

例如,您可以访问imageName的性质图像资源模板通过环境变量:

$ printenv res_myImage_imageName jfrog.local:5000/alpine37

一些资源维2022世界杯阿根廷预选赛赛程护可以作为环境变量访问的附加属性。这些资源类型包括:

欲了解更多信息,请参阅管道资源2022世界杯阿根廷预选赛赛程

基于资源的状态

中指定的资源中添加自己的属性output2022世界杯阿根廷预选赛赛程resources使用write_output效用函数。这可以用来创建有状态的管道

新附加的属性可以作为表单的环境变量访问res_{资源名称}_{密钥名称}例如,下面的代码将在资源中创建三个属性模板

write_output myImage sport="baseball" equipment="bat" field="diamond"

在步骤中指定资源时inputsource,这些属性可以作为以下环境变量访问:

$ printenv res_myImage_baseball $ printenv res_myImage_equipment bat $ printenv res_myImage_field diamond

有关运行状态的详细信息,请参见创建有状态管道


运行状态

您的管道可以定义自己的环境变量,并将它们添加到管道的运行状态。这些将对管道运行中的所有步骤可用。

使用运行状态管理的实用程序函数将新的环境变量添加到当前运行状态。例如,下面一行在一个步骤的执行块中:

add_run_variables英雄="Superman"反派="Lex Luthor"

将创建两个环境变量,可用于管道运行的当前和所有未来步骤:

英雄超人反派莱克斯·卢瑟

有关运行状态的详细信息,请参见创建有状态管道


管道状态

您的管道可以定义自己的环境变量,并将它们添加到管道状态。这些将适用于该管道的所有运行。

使用用于管道状态管理的实用函数将新的环境变量添加到当前运行状态。例如,下面一行在一个步骤的执行块中:

Add_pipeline_variables动物="狗"蔬菜="胡萝卜"

将创建两个环境变量,可用于定义它们的管道的所有运行:

动物狗蔬菜胡萝卜

有关管道状态的详细信息,请参见创建有状态管道


  • 没有标签
版权所有©2023 JFrog Ltd.