如何在Codefresh(CI/CD)中创建下拉类型流水线变量
Codefresh 下拉类型流水线变量实现方法
Codefresh 原生支持为流水线变量配置下拉选择列表,不需要接入第三方工具,直接在流水线配置文件中定义枚举规则即可,手动触发流水线时对应变量会自动渲染为下拉选择组件。
基础配置方式
打开流水线对应的codefresh.yml配置文件,在spec.runtime.variables字段下定义目标变量,通过enum字段列出所有可选值即可,参考配置如下:spec: runtime: variables: - name: ENVIRONMENT description: 选择流水线运行的目标环境 required: true enum: - env1 - env2 - env3 default: env1配置完成后手动触发流水线时,
ENVIRONMENT变量就会以下拉框形式展示,只能从预设的3个值里选择。配置规则说明
enum数组内的所有条目就是下拉列表的可选值,后续新增、删除可选选项直接修改这个数组即可- 配置
default字段可以指定下拉框的默认选中项 - 如果给变量设置
required: true,触发流水线时必须完成选择才能启动运行 - 定时触发、API触发流水线时,如果传入的变量值不在
enum预设列表中,流水线会直接做参数校验拦截,避免非法传参导致运行异常
进阶自定义配置
如果需要给可选值增加更清晰的提示,可以给每个枚举项分别配置实际传值和下拉框展示文本,用户触发时能看到更易懂的说明,实际运行时仍会使用绑定的枚举值,参考配置:spec: runtime: variables: - name: ENVIRONMENT description: 选择流水线运行的目标环境 required: true enum: - value: env1 displayName: 开发测试环境(供内部功能验证使用) - value: env2 displayName: 预发布环境(连接生产类资源做上线前校验) - value: env3 displayName: 生产正式环境(面向终端用户提供服务) default: env1
注:该配置能力属于Codefresh流水线运行时参数的标准能力,不需要额外开启功能开关,所有SaaS版本和本地部署版本均支持。
内容的提问来源于stack exchange,提问作者Amit Rout
相关产品推荐
相关产品推荐

