17

我正在尝试自动化项目上的开发人员设置,以便新开发人员可以简单地发布vagrant up一个带有 MySQL 和 Tomcat 的 VM,并部署并运行自定义的 war 文件。部署战争假设 MySQL 实例上存在特定的数据库和用户。

现在,我正在使用 chef-solo,一切都在正确启动和安装。但是,我似乎无法弄清楚如何编写一本用于设置数据库和用户的食谱。我查看了database食谱,但这似乎不适合我的厨师独奏用例。我一直无法在网上找到一个为 chef-solo 实例设置数据库的示例设置,但也许我正在搜索错误的术语?

我可以编写一个 bash 脚本来设置数据库和用户(以它们不存在为条件),但这似乎不符合食谱的理念。你将如何解决这个问题?

4

2 回答 2

20

是的,你可以用厨师的方式来做这件事,就像这本database食谱:

include_recipe "database::mysql"

# create a mysql database
mysql_database 'sonar' do
  connection ({:host => "localhost", :username => 'root', :password => node['mysql']['server_root_password']})
  action :create
end

更多关于这本食谱的信息可以在这里找到:http: //community.opscode.com/cookbooks/database

于 2012-12-13T18:06:46.897 回答
3

对于Chef solo,您需要进行一些配置,您完成了吗?我正在谈论的配置在这里同一页面还提供了一个关于如何配置和运行食谱的快速小演示,之后您可以:

MySQL手册在这里 Tomcat 手册在这里

其他食谱可以在这里找到

根据您提供的数据,这是我能达到的最接近的值。一旦你配置了这个并设置了东西,如果你遇到错误,发布它们。希望我对您有所帮助:)

我会先配置 Chef Solo,然后将 Cookbooks 放在一个配置的目录中。

于 2012-06-22T00:15:57.063 回答