首页 > 解决方案 > 詹金斯工作的 Ansible 提示

问题描述

我正在运行一个 Ansible 剧本,其中添加了一个“提示”命令来根据用户输入安装一个或其他软件。

在詹金斯下的剧本执行中,有:“警告:不等待响应提示,因为标准输入不是交互式的”。

我受到了几个主题的启发

pause ansible playbook 以供用户确认,是否运行休息任务

或者

Ansible - 使用用户输入选择变量

或者

角色的 Ansible vars_prompt

进行一些尝试,但每次都会出现相同的警告。

我想知道是否在 ansible.cfg 文件中添加了一个参数来强制交互模式,或者在剧本中写一些“强制”的东西(我在https://docs.ansible.com/上搜索过) ,但在 GooXX 上也一无所获。

标签: jenkinsansibleprompt

解决方案


您所描述的是 Jenkins 功能。Jenkins 以非交互模式启动作业,因此在作业执行时您将无法从 ansible playbook获取参数。

但是,您可以将所需的参数移动到 Jenkins 作业以供用户输入,然后传递给 ansible。例如,在詹金斯管道参数块的情况下可以使用。然后可以通过--extra-vars和/或ansibleextras插件的选项将这些参数传递给 ansible 。


推荐阅读