我试图使用Ansible发布马拉松应用程序,然后我试图删除与我的Playbook相同的应用程序。一切都很好,唯一的问题是,我得到以下错误,当我运行我的剧本删除。
fatal: [localhost]: FAILED! =>
{
"cache_control":"no-cache, no-store, must-revalidate",
"changed":false,
"connection":"close",
"content":"{"version":"2016-10-12T16:51:47.641Z","deploymentId":"46edbf12-e837-45c5-9360-9824a4143868"}",
"content_length":"92",
"content_type":"application/json; qs=2",
"date":"Wed, 12 Oct 2016 16:51:02 GMT",
"expires":"0",
"failed":true,
"json":{
"deploymentId":"46edbf12-e837-45c5-9360-9824a4143868",
"version":"2016-10-12T16:51:47.641Z"
},
"msg":"Status code was not [201]: OK (92 bytes)",
"pragma":"no-cache",
"redirected":false,
"server":"openresty/1.7.10.2",
"status":200,
"url":"http://mywebsite.com:19092/v2/apps/demoansible",
"x_marathon_leader":"http://10.201.160.1:31392"
}
正如你在上面看到的,json显示成功响应,状态是200,当我检查马拉松UI时,应用程序被删除了。但是唯一的问题是致命的:[localhost]: FAILED!=>错误。有什么办法可以消除这个错误吗?
这是我的剧本删除:
---
- hosts: local
gather_facts: false
tasks:
-
uri:
body: "{{ lookup('file','app.json') }}"
body_format: json
force_basic_auth: true
method: DELETE
password: password
status_code: 201
url: "url/v2/apps/demoansible"
user: user1
我从你的剧本中看到的是,你正在使用它在你的马拉松上删除一个应用程序,你已经在url中给出了你的应用程序id,我认为你不需要一个身体在你的剧本。请删除身体和状态码,我认为它应该工作良好。
你不需要body的原因是你用它来删除。如果要在马拉松比赛中删除一个跑步应用,app id就足够了,你不需要传递app.json文件来删除一个应用。这将消除你面临的致命错误。