系统提供镜像占位符、预置占位符、自定义占位符,帮助您快速编排应用。本文为您介绍占位符相关特性、如何使用占位符和变量。
背景信息
- 镜像占位符
名称 | 类型 | 描述 | 使用说明 |
---|
image.[自定义镜像名称] | 字符串 | 输入镜像的备注信息,可以为空。 | - image.[自定义镜像名称] 是系统预设的镜像占位符,支持自定义镜像名称,默认为 image.backend。
- 在 YAML 编辑区域敲击
{{ .AppDeliver.image.[自定义镜像名称] }} 即可引用镜像占位符。 - 取值为镜像地址,在运行时由用户动态传入,方便应用的镜像升级、多环境差异化部署等场景。
|
- 预置占位符
预置占位符是系统预设的占位符,预置占位符的值不支持修改。
名称 | 类型 | 值来源 | 值 | 使用说明 |
---|
appName | 字符串 | 变量 | AppName | - appName 为系统预设的应用标识占位符,帮助您快速区分应用。取值 AppName 为预置配置项,表示当前应用的应用标识,不支持修改。
- 在 YAML 编辑区域敲击
{{ .AppDeliver.appName }} ,即可引用当前预置占位符。
|
envName | 字符串 | 变量 | EnvName | - envName 为系统预设的环境标识占位符,帮助您快速区分应用部署的环境。取值 EnvName 为预置配置项,表示当前应用的环境标识,不支持修改。
- 在 YAML 编辑区域敲击
{{ .AppDeliver.envName }} 即可引用该预置占位符。
|
- 自定义占位符
自定义占位符是用户设置的占位符。值来源可以是变量(系统预置配置项、自定义配置项)或常量。将自定义占位符和变量一起使用,可以实现一套应用编排在不同环境下的差异化部署。
系统提供的默认 YAML 模板中提供了 namespace、port、replicas 等自定义占位符,并且已预设推荐的默认值。您可以根据需要进行新增、修改或删除。
前提条件
- 已创建环境。本示例创建开发环境 1 和测试环境 1。
- 已提前创建变量。本示例创建自定义配置项 Label。
操作步骤
下文以新增一个自定义占位符 label,实现开发环境和测试环境使用不同的 Deployment 标签为例:
- 登录当前应用。
- 登录 持续交付控制台。
- 在左侧导航栏选择 工作区。
- 单击目标工作区名称,进入当前工作区。
- 在左侧导航栏选择 应用交付 > 应用管理。
- 单击目标应用卡片,进入当前应用。
- 单击 应用编排,切换至应用编排页签。
- 单击 编辑,进入应用编排页面。
- 在 YAML 编辑区域, metadata.labels.run 参数下方输入
run: "{{ .Values.label }} "
。 - 单击 提取占位符,右侧自定义占位符区域同步展示新增的自定义占位符 label。
- 设置自定义占位符 label 的信息。
配置项 | 说明 |
---|
名称 | 显示提取到的自定义占位符的名称。本示例为 label。 注意 如需修改名称,请务必同步修改 YAML 编辑区域的自定义占位符名称。本示例选择变量。 |
类型 | 根据需要选择当前占位符的类型,默认为字符串。支持字符串、整数、浮点数、布尔值。 |
值来源 | 支持常量和变量。变量用于实现不同环境的差异化部署。本示例选择变量。 |
值 | 输入配置项的值。本示例使用提前创建的自定义配置项 Label。 - 值来源选择常量时,直接输入对应类型的值即可。
- 值来源选择变量时,支持使用预置配置项或您创建的自定义配置项。
|
- 单击 确定,在弹出的信息框中设置生效环境。本示例选择提前创建好的开发环境 1 和测试环境 1。
- 设置完成后,单击 创建。
后续操作
在开发环境 1 和测试环境 1 中分别启用自定义配置项 Label,赋值 aaa 和 bbb。即完成了一套编排在不同环境下 Deployment 标签不同的配置。开发环境 1 部署时,将 aaa 赋值给 label;测试环境 1 部署时,将 bbb 赋值给 label。