问题标签 [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.
chef-infra - 厨师食谱中的属性优先级
我正在尝试从如何编写可重复使用的厨师食谱,江南风格中获取灵感来实现一个包装食谱。我希望在没有管理器应用程序的情况下在我的节点上安装 tomcat 7。我创建了一个包含以下attributes/default.rb
文件的包装食谱:
中提供的默认属性tomcat/attributes/default.rb
是:
我希望在所有属性中覆盖这些值。但是,诸如此类的属性["tomcat"]["user"]
不会被覆盖。以上仍然具有tomcat6
in的值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。
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 目录中文件的位置.
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
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 如果有人有想法,我可以提供更多细节。
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 也失败了。
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
java - Chef-Server:自动部署文件
我需要一个简单的方法:从 bitbucket 下载存储库并将 .war 文件复制到 '.../tomcat7/webapps' 我试过了。很难知道我在说什么,但每次我运行这个食谱时:
我没有任何错误。一切正常,但这不会“下载”文件。
这个配方自动创建 3 个目录。Current、Shared 和 Releases,但不起作用,即使我将 .war 文件放入“current”运行的输出:
java - 下载状态 - 厨师食谱
我有一个下载文件的简单方法。我只是想知道如何在终端的厨师食谱上制作一个“状态栏”。像这样
或这个
chef-infra - Wrapper cookbook 和 cookbook_file 资源给出 FileNotFound 错误
如果我的基本食谱是这样的:
我的包装有
我想cert.pfx
在包装食谱中指定文件file/default/cert.pfx
但是,当我运行包装器时,我得到
FileNotFound:cookbook_file[cert.pfx] 不包含任何这些位置的文件....
如何指定说明书文件在包装器中而不是在基本说明书中?
ruby - 遇到“未初始化的常量#::Chef::Resource::CookbookFile" 运行 chef-client 时
我正在使用厨师 11.10.0。
我实现了一个名为 MyCookbookFile 的新资源,它继承了 Chef::Resource::CookbookFile。
而且,我现在不打算更改提供程序(因此将使用 Chef::Provider::CookbookFile)。
我遇到了以下错误:
我试图打印并检查我的食谱中的 LOAD_PATH。这包括:
图书馆应该到位: