草庐IT

chef-client

全部标签

ruby - 如何修复错误 : "\xC3" on US-ASCII when bootstrapping chef-client?

我有一台运行RHEL5.10且带有最新补丁的Chef服务器和客户端虚拟机。当我尝试用knifebootstrapnodename-Nnodename-xroot-Ppassword我收到以下错误,这会阻止在服务器上填充我的自动属性。nodenameConverging0resourcesnodenamenodenameRunninghandlers:nodename[2014-07-25T14:46:40-04:00]ERROR:RunningexceptionhandlersnodenameRunninghandlerscompletenodenamenodename[2014-07

ruby - Chef ServerSpec SpecInfra 未初始化常量 NameError

我在使用ServerSpec对我的Chef说明书运行集成测试时遇到了问题。当我今天尝试运行测试时,没有做任何更改,我收到以下错误:tl;博士/tmp/busser/suites/serverspec/spec_helper.rb:3:in':uninitializedconstantSpecInfra(NameError)>[#]----Beginoutputofkitchenverify'(default)-.+'-p---->[#]STDOUT:----->StartingKitchen(v1.2.1)>[#]----->Verifying...>[#]Removing/tmp/b

ruby - 使用 Chef 删除目录中早于 x 天的所有文件

我尝试删除日志文件:log'removecompressedlogfiles'::Dir['/var/log/*.gz'].each{|f|::FileUtils.rm_rf(f)}我的要求是根据mtime删除它们。 最佳答案 这只是普通的Ruby代码,而不是ChefRecipeDSL。一种更像Chef的方式可以做到这一点Dir['/var/log/*.gz'].eachdo|path|filepathdoaction:deleteonly_if{::File.stat(path).ctime

ruby - 在 template.erb 中设置 chef vault 变量

我的Recipe中有一个保险库项目定义如下item=ChefVault::Item.load("user","password")如何在我的template.erb中调用它?我尝试了以下不起作用ROOTPASSWORD=我的保险库项目如下所示:$knifevaultshowuserpasswordid:passwordpass:xxxxxxxxxxusername:chefuser我通常在Recipe中做这样的事情ROOTPASSWORD#{item['pass']}但是我认为这不适用于模板。 最佳答案 有两种方法可以解决该问题,但

ruby - 使用rest-client ruby​​ gem在elasticsearch中传递json数据获取请求

如何使用rest客户端执行以下查询(在doc中给出)。curl-XGET'http://localhost:9200/twitter/tweet/_search'-d'{"query":{"term":{"user":"kimchy"}}}'我试过这样做:q='{"query":{"term":{"user":"kimchy"}}}'r=JSON.parse(RestClient.get('http://localhost:9200/twitter/tweet/_search',q))这引发了一个错误:in`process_url_params':undefinedmethod`del

ruby - Chef 执行 block

我是Chef的新手。我有一个安装sendmail的方法,它会执行我的配置。我注意到Chef会在每次运行时重新启动服务。那是因为我正在运行调用session重新启动的execute。看起来像这样:execute"hashAccess"docommand"makemaphash/etc/mail/access只有当access文件更新时,我才需要调用它。template"/etc/mail/access"dosource"access.erb"mode"0644"notifies:run,"execute[hashAccess]"end当文件更新时,execute被调用两次。这两种资源都在

ruby - 如何将值(value)从一种资源传递到 Chef Recipe 中的另一种资源?

我正在尝试更改一个资源中的属性,并想在另一个资源中使用更新后的值,但更新后的值没有反射(reflect)在另一个资源中。请帮助我代码node[:oracle][:asm][:disks].each_keydo|disk|Chef::Log.info("Iamin#{cookbook_name}::#{recipe_name}andcurrentdiskcount#{node[:oracle][:asm][:test]}")bash"beforeTest"docode我要更新的值是存储在node[:oracle][:asm][:test]的值 最佳答案

ruby-on-rails - 如果我使用的是 Heroku,是否可以使用 Chef?

我使用Heroku来部署我的Rails应用。但我想过学习Chef来自动设置开发基础设施,但我不确定。那么简单来说,我有什么理由要学习Chef吗? 最佳答案 如果您使用的是Heroku,则没有必要。您稍后可能会部署到您自己的服务器,因此请研究一下;在这种情况下,Chef可能是一个不错的选择,也可以看看Capistrano。 关于ruby-on-rails-如果我使用的是Heroku,是否可以使用Chef?,我们在StackOverflow上找到一个类似的问题:

ruby - 使用ruby google-api-client获取youtube视频数据

您好!我看过很多类似的问题,但想不通为什么没有一个能给出明确的答案。我正在尝试使用google-api-clientgem连接到youtube数据api,以从youtube视频链接中检索缩略图。我假设我不需要处理那个(对我来说晦涩难懂)oAuth身份验证。第一步:我使用googleapi控制台创建项目,授权Youtube数据API。在“API访问”选项卡中,我选择“创建客户端ID...”和选项“服务帐户”。它给了我一个客户端ID、电子邮件地址和公钥指纹。第二:我使用google-api-clientgem创建我的ruby​​脚本。我只是复制/粘贴文档中的示例:需要“google/api

ruby Chef 指令 : include_attribute vs. include_attributes

我在chef属性文件中看到了这段代码。include_recipe"deployment"include_attribute"postgresql"include_attribute"redis"include_attributes"uaa"include_attributes"service_lifecycle"有什么不同?include_attribute与include_attribute*S*我找不到任何关于include_attribute*S*的文档 最佳答案 include_attribute属性用于对收敛时加载属性文