gpt4 book ai didi

chef-infra - 删除名称中包含换行符的客户端

转载 作者:行者123 更新时间:2023-12-04 21:39:52 26 4
gpt4 key购买 nike

好的,所以这开始是因为我试图让自动缩放的节点向 Chef 进行自我注册。我的 client.rb 中有以下内容文件:

node_name "some_prefix-#{`hostname`}"

这个想法是每个节点都将具有相同的前缀但基于主机名的后缀。遗憾的是, hostname返回一个带有 \n 的字符串在它的尽头。 Chef 很高兴地让我创建了这个客户端,但它实际上无法以任何方式访问它。
knife client show some_prefix-myHostname
knife client show "some_prefix-myHostname\n"
knife client show "some_prefix-myHostname%0A"

所有三个结果都是 404
knife client list

确实显示客户端,并在它之后显示一个空白的换行符。

我已经修复了我的 client.rb 模板,但我无法摆脱我在名称中使用换行符创建的节点。我试过使用knife、webui,甚至在irb 中手动使用Chef::REST 库,但结果都是404。

有任何想法吗?

编辑:
我也试过 knife client bulk delete但这也失败了。似乎 REST 库在尝试发送请求之前清理了 url 并删除了换行符。

最佳答案

您可以尝试使用 knife raw它允许您直接向 Chef Server API 发送请求

knife raw /nodes/<node-name>
knife raw delete -m /nodes/<node-name>

这对我解决了角色名称无效的类似问题。

关于chef-infra - 删除名称中包含换行符的客户端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29636346/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com