Skip to content

Commit f6490e8

Browse files
Michael GruenewaldUdo Juettner
Michael Gruenewald
authored and
Udo Juettner
committed
fix and test database.yml generation
1 parent f91ca71 commit f6490e8

File tree

2 files changed

+18
-2
lines changed

2 files changed

+18
-2
lines changed

deploy/specs/rails_spec.rb

+16
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
require 'minitest/spec'
2+
require 'yaml'
23

34
describe_recipe 'deploy::rails' do
45
include MiniTest::Chef::Resources
@@ -20,4 +21,19 @@
2021
end
2122
end
2223
end
24+
25+
it 'should write a valid database configuration' do
26+
node[:deploy].each do |app, deploy|
27+
cfg = YAML.load_file("#{deploy[:deploy_to]}/shared/config/database.yml")
28+
["development", "production", deploy[:rails_env]].uniq.each do |env|
29+
cfg[env]['adapter'].must_equal deploy[:database][:adapter].to_s
30+
cfg[env]['database'].must_equal deploy[:database][:database].to_s
31+
cfg[env]['host'].must_equal((deploy[:database][:host] || 'localhost').to_s)
32+
cfg[env]['username'].must_equal deploy[:database][:username].to_s
33+
cfg[env]['password'].must_equal((deploy[:database][:password] || '').to_s)
34+
cfg[env]['reconnect'].must_equal deploy[:database][:reconnect] ? true : false
35+
cfg[env]['port'].must_equal deploy[:database][:port].to_i if deploy[:database][:port]
36+
end
37+
end
38+
end
2339
end

rails/templates/default/database.yml.erb

+2-2
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,12 @@
33
adapter: <%= @database[:adapter].to_s.inspect %>
44
database: <%= @database[:database].to_s.inspect %>
55
encoding: utf8
6-
host: <%= @database[:host].to_s.inspect || 'localhost' %>
6+
host: <%= (@database[:host] || 'localhost').to_s.inspect %>
77
username: <%= @database[:username].to_s.inspect %>
88
password: <%= @database[:password].to_s.inspect %>
99
reconnect: <%= @database[:reconnect] ? 'true' : 'false' %>
1010
<% if @database[:port] -%>
11-
port: <%= @database[:port].to_s.inspect %>
11+
port: <%= @database[:port].to_i.inspect %>
1212
<% end -%>
1313

1414
<% end %>

0 commit comments

Comments
 (0)