Skip to content

Commit 8a5a1ec

Browse files
author
Wouter Westenbrink
committed
add smtp attributes, make redmine download idempotent, cleanup recipe
1 parent 49c4cf7 commit 8a5a1ec

File tree

3 files changed

+53
-23
lines changed

3 files changed

+53
-23
lines changed

attributes/default.rb

+13
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,22 @@
66
default[:redmine][:ruby_version] = '1.9.3-p484'
77
default[:redmine][:create_db] = true
88

9+
# database
910
default_unless[:redmine][:db] = {}
1011
default[:redmine][:db][:type] = 'sqlite'
1112
default[:redmine][:db][:hostname] = 'localhost'
1213
default[:redmine][:db][:dbname] = 'redmine'
1314
default[:redmine][:db][:username] = 'redmine'
1415
default[:redmine][:db][:password] = 'redmine'
16+
17+
# smtp
18+
default["redmine"]["smtp"]["enabled"] = false
19+
default["redmine"]["smtp"]["delivery_method"] = "smtp"
20+
default["redmine"]["smtp"]["tls"] = nil
21+
default["redmine"]["smtp"]["enable_starttls_auto"] = true
22+
default["redmine"]["smtp"]["address"] = "smtp.gmail.com"
23+
default["redmine"]["smtp"]["domain"] = nil
24+
default["redmine"]["smtp"]["port"] = "587"
25+
default["redmine"]["smtp"]["authentication"] = "login"
26+
default["redmine"]["smtp"]["user_name"] = "[email protected]"
27+
default["redmine"]["smtp"]["password"] = "your_password"

recipes/default.rb

+11-21
Original file line numberDiff line numberDiff line change
@@ -32,40 +32,30 @@
3232
mode '0755'
3333
end
3434

35-
# # Install ruby with rbenv
36-
# node.default['rbenv']['user_installs'] = [
37-
# {
38-
# user: node[:redmine][:user],
39-
# rubies: [node[:redmine][:ruby_version]],
40-
# global: node[:redmine][:ruby_version],
41-
# gems: {
42-
# node[:redmine][:ruby_version] => [
43-
# { name: 'bundler' },
44-
# { name: 'rake' }
45-
# ]
46-
# }
47-
# }
48-
# ]
49-
#
50-
# include_recipe 'ruby_build'
51-
# include_recipe 'rbenv::user'
52-
5335
# Download archive with source code
54-
bash 'install_redmine' do
36+
bash "downloading redmine #{node[:redmine][:version]}" do
5537
cwd node[:redmine][:home]
5638
user node[:redmine][:user]
5739
code <<-EOH
5840
wget -O redmine-#{node[:redmine][:version]}.tar.gz https://github.com/redmine/redmine/archive/#{node[:redmine][:version]}.tar.gz;
41+
EOH
42+
not_if { ::File.exists?("#{node[:redmine][:home]}/redmine-#{node[:redmine][:version]}.tar.gz") }
43+
end
44+
45+
bash "installing redmine #{node[:redmine][:version]}" do
46+
cwd node[:redmine][:home]
47+
user node[:redmine][:user]
48+
code <<-EOH
5949
tar -xzf redmine-#{node[:redmine][:version]}.tar.gz
6050
EOH
61-
not_if { ::File.exists?("#{node[:redmine][:home]}/redmine-#{node[:redmine][:version]}/Rakefile") }
51+
not_if { ::File.exists?("#{node[:redmine][:home]}/redmine-#{node[:redmine][:version]}") }
6252
end
6353

6454
link "#{node[:redmine][:home]}/redmine" do
6555
to "#{node[:redmine][:home]}/redmine-#{node[:redmine][:version]}"
6656
end
6757

68-
# Create database
58+
# setup database
6959
case node[:redmine][:db][:type]
7060
when 'sqlite'
7161
include_recipe 'redmine2::sqlite'
+29-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,32 @@
1-
21
production:
32
email_delivery:
3+
<% if node["redmine"]["smtp"]["delivery_method"] == "sendmail" -%>
44
delivery_method: :sendmail
5-
5+
<% else -%>
6+
delivery_method: :<%= node["redmine"]["smtp"]["delivery_method"] %>
7+
smtp_settings:
8+
<% if !node["redmine"]["smtp"]["tls"].nil? -%>
9+
tls: <%= node["redmine"]["smtp"]["tls"].to_s %>
10+
<% end -%>
11+
<% if !node["redmine"]["smtp"]["enable_starttls_auto"].nil? -%>
12+
enable_starttls_auto: <%= node["redmine"]["smtp"]["enable_starttls_auto"].to_s %>
13+
<% end -%>
14+
<% if !node["redmine"]["smtp"]["address"].nil? -%>
15+
address: <%= node["redmine"]["smtp"]["address"] %>
16+
<% end -%>
17+
<% if !node["redmine"]["smtp"]["port"].nil? -%>
18+
port: <%= node["redmine"]["smtp"]["port"] %>
19+
<% end -%>
20+
<% if !node["redmine"]["smtp"]["domain"].nil? -%>
21+
domain: <%= node["redmine"]["smtp"]["domain"] %>
22+
<% end -%>
23+
<% if !node["redmine"]["smtp"]["authentication"].nil? -%>
24+
authentication: :<%= node["redmine"]["smtp"]["authentication"] %>
25+
<% end -%>
26+
<% if !node["redmine"]["smtp"]["user_name"].nil? -%>
27+
user_name: "<%= node["redmine"]["smtp"]["user_name"] %>"
28+
<% end -%>
29+
<% if !node["redmine"]["smtp"]["password"].nil? -%>
30+
password: "<%= node["redmine"]["smtp"]["password"] %>"
31+
<% end -%>
32+
<% end -%>

0 commit comments

Comments
 (0)