问题标签 [cookbook]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
3276 浏览

chef-infra - 厨师食谱中的属性优先级

我正在尝试从如何编写可重复使用的厨师食谱,江南风格中获取灵感来实现一个包装食谱。我希望在没有管理器应用程序的情况下在我的节点上安装 tomcat 7。我创建了一个包含以下attributes/default.rb文件的包装食谱:

中提供的默认属性tomcat/attributes/default.rb是:

我希望在所有属性中覆盖这些值。但是,诸如此类的属性["tomcat"]["user"]不会被覆盖。以上仍然具有tomcat6in的值node["tomcat"]["user"]

我是否必须覆盖所有引用的属性["tomcat"]["base_version"]}"?如果我attributes/default.rb在 tomcat 食谱之前加载,default.rb这会很好。

我正在单独使用 Berkshelf、Vagrant 和 Chef 进行开发。在metadata.rb我的食谱中,我提到过depends "tomcat"

我的自定义食谱位于https://github.com/vaibhavguptaIITD/hcentive-ops/tree/master/hc-tomcat,tomcat社区食谱位于https://github.com/opscode-cookbooks/tomcat

0 投票
2 回答
1272 浏览

overloading - 厨师从包装菜谱食谱中倒带菜谱文件定义

我正在使用一本食谱 github.com opscode-cookbooks/openldap。我写了一个包装食谱“lab_openldap”,其中包括“openldap::server”配方。

server.rb 配方使用以下子句将 PEM 文件从说明书文件/ssl/*.pem 上传到服务器到位置节点 ['openldap']['ssl_cert']。

尝试从“openldap”说明书文件/ssl/#{node['openldap']['server']}.pem”位置读取 PEM。

我的 PEM 文件位于包装器“lab_openldap”说明书文件/ssl/#{node['openldap']['server']}.pem" 位置。

是否可以修改“lab_openldap::server.rb”配方以从包装食谱加载 PEM?

注意:我知道https://github.com/bryanwb/chef-rewind但它似乎无法处理这种情况。

更新

提供的答案使用r.resource是正确的。

实际上,特定代码中的问题在于“source”关键字,根据http://docs.opscode.com/resource_cookbook_file.html指的是位于 chef-repo 的食谱中 /files 目录中文件的位置.

0 投票
1 回答
126 浏览

python - cogent.db.ensembl 食谱的 .getGeneByStableId() 示例返回“ProgrammingError”

我在使用 PyCogent 查询 EnsEMBl 的数据库时遇到错误——这个错误可能是由 EnsEMBL 或 PyCogent 中的更新引起的吗?

当试图重现 PyCogent Cookbook 的 Querying Ensembl文档页面(“选择基因”部分)的代码时,我得到“ProgrammingError”。

在此处输入图像描述

这是失败的食谱代码(我指出发生错误的行):

这是错误:

额外信息:

  • Python 2.7.3
  • PyCogent 1.5.1-2
  • Ubuntu 12.04
  • Ensmbl 版本 74
0 投票
1 回答
1791 浏览

rubygems - 使用 'database::mysql' 配方安装 mysql 时出现厨师错误

按照misheska 博客的 Berkshelf Way教程开始编写 Chef Cookbooks 。但具体在第 2 部分 Mysql 和 Create database中。

当我执行

或者

我在控制台输出中收到以下错误:

这是我的myface/attributes/default.rb

myface/recipes/database.rb

我的脸/食谱/default.rb

有人知道会发生什么吗?注意:第 1 部分安装 Apache2工作正常。有趣的细节:我使用我自己的本地 gem 服务器geminabox 如果有人有想法,我可以提供更多细节。

0 投票
1 回答
918 浏览

ruby - 安装带有厨师的 gem 失败,并出现 Gem::Installer::ExtensionBuildError: chef_gem[fog]

我正在尝试使用 route53 食谱,但它在雾安装阶段不断失败。

libxml2-dev 和 libxslt1-dev 已安装,但 chef_gem "fog" 阶段失败:

与Chef 执行期间在本地扩展包后安装 gem非常相似,但情况不同。安装配方:https ://github.com/hw-cookbooks/route53/blob/master/recipes/default.rb

有人对我如何解决这个问题有任何建议吗?基本上故障是 nokogiri 不会安装 ruby​​ 1.9.3p484。/opt/chef/embedded/bin/gem install nokogiri 也失败了。

0 投票
1 回答
997 浏览

rubygems - 为什么 chef_gem 食谱从 chef-solo 而不是通过 vagrant

资源chef_gem可以使用chef-solo但不能使用vagrant up

我的应用程序/流浪文件

*myapp/recipes/mysql_gem.rb*

执行时vagrant up出现以下错误

但是我进入了流浪虚拟机vagrant ssh

执行 vagrant$sudo chef-solo -c /vagrant/solo.rb -j /vagrant/aux.rb 它工作正常。

什么时候

/vagrant/aux.rb

/vagrant/solo.rb

有人知道为什么直接从chef-solo而不是通过vagrant可以正常工作吗?

工具版本

  • 红宝石 1.9.3p392
  • 虚拟机 4.3.6
  • 厨师:11.8.2
  • Vagrant 1.3.5 插件
  • 流浪者-berkshelf (1.3.7)
  • 流浪盒 Ubuntu 12.04
0 投票
0 回答
698 浏览

java - Chef-Server:自动部署文件

我需要一个简单的方法:从 bitbucket 下载存储库并将 .war 文件复制到 '.../tomcat7/webapps' 我试过。很难知道我在说什么,但每次我运行这个食谱时:

我没有任何错误。一切正常,但这不会“下载”文件。

这个配方自动创建 3 个目录。Current、Shared 和 Releases,但不起作用,即使我将 .war 文件放入“current”运行的输出:

0 投票
0 回答
56 浏览

java - 下载状态 - 厨师食谱

我有一个下载文件的简单方法。我只是想知道如何在终端的厨师食谱上制作一个“状态栏”。像这样

或这个

0 投票
1 回答
562 浏览

chef-infra - Wrapper cookbook 和 cookbook_file 资源给出 FileNotFound 错误

如果我的基本食谱是这样的:

我的包装有

我想cert.pfx在包装食谱中指定文件file/default/cert.pfx

但是,当我运行包装器时,我得到

FileNotFound:cookbook_file[cert.pfx] 不包含任何这些位置的文件....

如何指定说明书文件在包装器中而不是在基本说明书中?

0 投票
2 回答
1735 浏览

ruby - 遇到“未初始化的常量#::Chef::Resource::CookbookFile" 运行 chef-client 时

我正在使用厨师 11.10.0。

我实现了一个名为 MyCookbookFile 的新资源,它继承了 Chef::Resource::CookbookFile。

而且,我现在不打算更改提供程序(因此将使用 Chef::Provider::CookbookFile)。

我遇到了以下错误:

我试图打印并检查我的食谱中的 LOAD_PATH。这包括:

图书馆应该到位: