问题描述
我有一个 ansible 任务,它调用 api (nodejs) 来准备数据库。根据环境的不同,此任务可能需要几秒钟到几分钟的时间。
- name: "Create tables"
uri:
url: "http://myapi/tables/{{item}}/initialize"
method: "POST"
user: "{{admin.userName}}"
password: "{{admin.password}}"
headers:
Content-Type: "application/json"
force_basic_auth: yes
status_code: 201
validate_certs: no
timeout: 60
with_items: "{{entities}}"
retries: 10
delay: 2
register: result
until: ('status' in result) and (result.status == 201)
changed_when: false
任务当前配置的超时时间为 60,最多重试 10 次。
API 立即返回 HTTP 201 状态,然后随着数据库准备工作的进展开始流式传输 json。有没有办法将 ansible 配置为仅在自上次流数据返回以来已超过 60 秒时才超时,而不是在任务需要 60 秒以上才能完成时超时?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)