草庐IT

Chef-Client

全部标签

ruby - 使用 rest-client 获取请求的正确语法

现在我可以提出如下请求:user='xxx'token='xxx'survey_id='xxx'response=RestClient.get"https://survey.qualtrics.com/WRAPI/ControlPanel/api.php?Request=getLegacyResponseData&User=#{user}&Token=#{token}&Version=2.0&SurveyID=#{survey_id}&Format=XML"但是应该有一些更好的方法来做到这一点。我试过类似的东西:response=RestClient.get"https://surve

ruby - 使用 rvm 切换 ruby​​ 会破坏 chef 11.4.4 knife 命令

我有安装了ruby​​1.9.1的chef11.4.4。我想安装berkshelf,但它需要ruby​​1.9.2或更高版本。我用rvm安装了ruby​​2.0.0-p247(最新稳定版)。当我运行knife命令时,我得到...#knifehelp/opt/chef/embedded/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:247:in`to_specs':Couldnotfindchef(>=0)amongst[rake-10.1.0,rvm-1.11.3.8](Gem::LoadError)from/opt/chef/embe

ruby - 如何为 Chef 处理程序安装依赖项?

我正在尝试通过chef_handlerlwrp安装一个chefhandler。此处理程序(chef-handler-email)捆绑在一个gem中。我正在尝试安装gem,然后从如下所示的单个配方中打开处理程序:chef_gem"chef-handler-mail"chef_handler"MailHandler"dosource'chef/handler/mail'arguments:to_address=>"root"action:nothingsupports:exception=>true,:report=>falseend.run_action(:enable)如果gem已经安

ruby - 如何使用 rest-client 从 Waze 获取 GPS 数据?

我正在尝试使用rest-client库从Waze应用程序获取我的GPS数据。我基本上是想通过网站https://www.waze.com/伪造登录。登录后(您可以使用JohnDoeSpeedy228:gre@tStory92),当您访问https://www.waze.com/editor/时,在查看网络调用后单击“驱动器”,您将看到原始JSON数据。我似乎已经成功登录,但是当请求返回我所有驱动器的列表时,它返回以下内容{"users"=>{"objects"=>[]},"archives"=>{"totalSessions"=>0,"objects"=>[]}}它应该返回这样的东西:

ruby - 限制 rest-client 读取的响应大小

我正在使用Rubygemrest-client(1.6.7)使用HTTPGET请求检索数据。但是,有时响应比我想处理的要大,所以我想通过某种方式让RestClient在超过我设置的大小限制时停止读取。documentation说ForcasesnotcoveredbythegeneralAPI,youcanusetheRestClient::Requestclasswhichprovidealower-levelAPI.但我看不出这对我有什么帮助。我没有看到任何看起来像处理传入数据流的钩子(Hook)的东西,只有在读取整个数据后我才能执行的操作。我不想浪费时间和内存将巨大的响应读入缓冲

ruby - 将 Google 自定义搜索 API 与 Ruby google-api-client 结合使用

作为我目前参与的人员搜索项目的一部分,我需要编写一个ruby​​脚本,该脚本可以将搜索查询发送到Google自定义搜索API并存储搜索结果以供处理。我找到了Rubygoogle-api-clientgem(http://code.google.com/p/google-api-ruby-client/)并安装了它,但是,尽管已经彻底阅读了文档,但我还是不知所措关于如何执行自定义搜索API调用。这是我第一次尝试使用GoogleAPI,我发现这个过程有点让人不知所措,是否有任何有经验的人可以提供一些示例代码供我学习?谢谢 最佳答案 虽然

ruby - Chef - 在 Recipe 之间共享库

是否可以在另一个Recipe提供者/库中重用Recipe库中的代码?cookbook1/libraries/lib.rb...defvery_useful_checktrueend...cookbook2/libraries(providers?)/foo.rb...myvar=very_useful_check...谢谢 最佳答案 可以使用ChefLibraries.确保函数是通过ruby​​模块在您的命名空间中定义的:moduleFoodefvery_useful_checktrueendendclassChef::Recipe

ruby - Chef - 在其他资源失败时运行资源

我有两个execute资源,名为command_1和command_2。如果command_1失败,我想运行command_2然后重新运行command_1。差不多是这样的:execute'command_1'docommand"ipahost-del#{machine_name}"action:runignore_failuretrueon_failure{notifies:run,'execute['command_2']',:immediately}endexecute'command_2'docommand"ipahost-mod--certificate#{machine_n

ruby - 如何设置对在 Chef 加载 Recipe 时不存在的 Ruby 库的依赖项?

场景:方法1:下载文件,解压它们。提供一个CLI,它还定义了一个Ruby库。秘诀2:利用上述库中的RubyAPI。在recipe1/recipes/default.rb中:..doworknode[:recipe1][:filePath]=".."#pathtofile在recipe2/recipes/default.rb中:requirenode[:recipe1][:filePath]/lib/Library..dowork但是,当加载Recipe时,Chef宣布:[Wed,17Aug201119:32:23+0800]DEBUG:Loadingcookbookapache2'sd

ruby - 使用 Chef Recipe 更新 .bashrc

我正在编写使用chef-solo安装jsk的练习方法,我需要更新.bashrc文件以设置JAVA_HOME和PATH变量。我不知道该怎么做。谁能告诉我该怎么做。我的一些代码是..file"/home/user/.bashrc"doowner"root"#somethinggoeshere....idon'tknowwhat.butiwrite#%{bash-i-c"source/etc/bash/bashrc&&bashrcupdate"}content"JAVA_HOME=/usr/java/jdk1.1.0.05"content"PATH=$PATH:JAVA_HOME/bin"e