首页 > 解决方案 > 如何将父作业的选项值作为子作业的“作业名称”传递?

问题描述

我在“Project-A”中定义了一个主要工作“父母”和两个子工作“Child_1”和“Child_2”。

父作业有 1 个选项名称:“childname”,允许值“Child_1,Child_2” 从下拉列表中只能选择一个值。

在 Parent 中,有一个 Job Reference 步骤,我试图在“Job Name”字段中传递 ${option.childname} 来调用选定的子作业。

但是,它会导致错误:

Job [${option.childname}] not found, project: Project-A

如何让父母以这种方式运行子作业?如果不是,那么选择子作业的替代方法是什么?

我的最终目标是:

1) 在项目中定义几个工作。

2)定义一个主控制作业,我可以选择主机名、应用程序组件、环境名称等的某种组合并执行正确的子作业。关键是不必筛选多个作业(或作业组)来运行特定的子作业。

谢谢!

标签: rundeck

解决方案


一个很好的选择是使用 API 或 RD CLI 包装在 shell 脚本上,传递 bash 变量上的选项。

API参考:

https://docs.rundeck.com/docs/api/

一个非常好的 Rundeck API 示例:

https://documenter.getpostman.com/view/95797/rundeck/7TNfX9k#intro

研发命令行:

https://rundeck.github.io/rundeck-cli/


推荐阅读