]> git.openstreetmap.org Git - chef.git/blob - cookbooks/tools/recipes/default.rb
Use systemd cookbook to configure cron dropin
[chef.git] / cookbooks / tools / recipes / default.rb
1 #
2 # Cookbook Name:: tools
3 # Recipe:: default
4 #
5 # Copyright 2011, 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 #     https://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 package %w[
21   bash-completion
22   dmidecode
23   ethtool
24   lsof
25   lsscsi
26   pciutils
27   screen
28   smartmontools
29   strace
30   sysstat
31   tcpdump
32   usbutils
33   numactl
34   xfsprogs
35   iotop
36   lvm2
37   rsyslog
38   cron
39 ]
40
41 service "rsyslog" do
42   action [:enable, :start]
43   supports :status => true, :restart => true, :reload => true
44 end
45
46 # Remove some unused and unwanted packages
47 package %w[mlocate nano whoopsie] do
48   action :purge
49 end
50
51 # Remove screen-cleanup left behind by old release.
52 file "/etc/init.d/screen-cleanup" do
53   action :delete
54 end
55
56 # Cleanup unused file
57 file "/etc/systemd/system/cron.service.d/chef.conf" do
58   action :delete
59 end
60
61 # Configure cron to run in the local timezone of the machine
62 systemd_service "cron-timezone" do
63   service "cron"
64   dropin "timezone"
65   environment "TZ" => node[:timezone]
66   notifies :restart, "service[cron]"
67   only_if { node[:timezone] }
68 end
69
70 # Make sure cron is running
71 service "cron" do
72   action [:enable, :start]
73 end