rundeck - 如何将父作业的选项值作为子作业的“作业名称”传递?
问题描述
我在“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)定义一个主控制作业,我可以选择主机名、应用程序组件、环境名称等的某种组合并执行正确的子作业。关键是不必筛选多个作业(或作业组)来运行特定的子作业。
谢谢!
解决方案
一个很好的选择是使用 API 或 RD CLI 包装在 shell 脚本上,传递 bash 变量上的选项。
API参考:
https://docs.rundeck.com/docs/api/
一个非常好的 Rundeck API 示例:
https://documenter.getpostman.com/view/95797/rundeck/7TNfX9k#intro
研发命令行:
推荐阅读
- sql - 如何将数字四舍五入到十(总是向上)
- java - TYPE_APPLICATION_OVERLAY 不适用于 Android 10
- python - Python服务器在没有相同网络的情况下获取套接字消息
- jq - jq提取包括ObjectId的数据
- reactjs - 无法在反应中管理多个 jssip 电话会话请求
- c - chdir 在 WINDOWS 环境中使用函数给出不同的输出
- spring - Spring 升级导致 JPA 日期字段以错误的格式序列化
- python - 反转二叉树(递归)
- c# - 当我尝试向我的数据库添加新记录时收到 HTTP ERROR 405
- sql - 如何在 postgresql 中检查 dblink 连接的状态?