The supybot tmp directory needs to be inside the data directory
[chef.git] / cookbooks / supybot / recipes / default.rb
1 #
2 # Cookbook Name:: supybot
3 # Recipe:: default
4 #
5 # Copyright 2013, OpenStreetMap Foundation
6 #
7 # Licensed under the Apache License, Version 2.0 (the "License");
8 # you may not use this file except in compliance with the License.
9 # You may obtain a copy of the License at
10 #
11 #     http://www.apache.org/licenses/LICENSE-2.0
12 #
13 # Unless required by applicable law or agreed to in writing, software
14 # distributed under the License is distributed on an "AS IS" BASIS,
15 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 # See the License for the specific language governing permissions and
17 # limitations under the License.
18 #
19
20 users = data_bag_item("supybot", "users")
21 passwords = data_bag_item("supybot", "passwords")
22
23 package "supybot"
24
25 directory "/etc/supybot" do
26   owner "supybot"
27   group "supybot"
28   mode 0755
29 end
30
31 template "/etc/supybot/supybot.conf" do
32   source "supybot.conf.erb"
33   owner "supybot"
34   group "supybot"
35   mode 0644
36   variables :passwords => passwords
37 end
38
39 template "/etc/supybot/channels.conf" do
40   source "channels.conf.erb"
41   owner "supybot"
42   group "supybot"
43   mode 0644
44 end
45
46 template "/etc/supybot/git.conf" do
47   source "git.conf.erb"
48   owner "supybot"
49   group "supybot"
50   mode 0644
51 end
52
53 template "/etc/supybot/ignores.conf" do
54   source "ignores.conf.erb"
55   owner "supybot"
56   group "supybot"
57   mode 0644
58 end
59
60 template "/etc/supybot/userdata.conf" do
61   source "userdata.conf.erb"
62   owner "supybot"
63   group "supybot"
64   mode 0644
65 end
66
67 template "/etc/supybot/users.conf" do
68   source "users.conf.erb"
69   owner "supybot"
70   group "supybot"
71   mode 0644
72   variables :passwords => users
73 end
74
75 directory "/var/lib/supybot" do
76   owner "root"
77   group "root"
78   mode 0755
79 end
80
81 directory "/var/lib/supybot/data" do
82   owner "supybot"
83   group "supybot"
84   mode 0755
85 end
86
87 directory "/var/lib/supybot/backup" do
88   owner "supybot"
89   group "supybot"
90   mode 0755
91 end
92
93 directory "/var/lib/supybot/git" do
94   owner "supybot"
95   group "supybot"
96   mode 0755
97 end
98
99 directory "/var/log/supybot" do
100   owner "supybot"
101   group "supybot"
102   mode 0755
103 end
104
105 directory "/usr/local/lib/supybot" do
106   owner "root"
107   group "root"
108   mode 0755
109 end
110
111 directory "/usr/local/lib/supybot/plugins" do
112   owner "root"
113   group "root"
114   mode 0755
115 end
116
117 git "/usr/local/lib/supybot/plugins/Git" do
118   action :sync
119   repository "git://github.com/mmueller/supybot-git"
120   revision "master"
121   user "root"
122   group "root"
123 end
124
125 template "/etc/init.d/supybot" do
126   source "supybot.init.erb"
127   owner "root"
128   group "root"
129   mode 0755
130 end
131
132 service "supybot" do
133   action [ :enable, :start ]
134   supports :restart => true
135   subscribes :restart, "template[/etc/supybot/supybot.conf]"
136   subscribes :restart, "template[/etc/supybot/channels.conf]"
137   subscribes :restart, "template[/etc/supybot/git.conf]"
138   subscribes :restart, "template[/etc/supybot/ignores.conf]"
139   subscribes :restart, "template[/etc/supybot/userdata.conf]"
140   subscribes :restart, "template[/etc/supybot/users.conf]"
141   subscribes :restart, "git[/usr/local/lib/supybot/plugins/Git]"
142   subscribes :restart, "template[/etc/init.d/supybot]"
143 end