]> git.openstreetmap.org Git - chef.git/blob - cookbooks/tools/recipes/default.rb
Merge remote-tracking branch 'github/pull/703'
[chef.git] / cookbooks / tools / recipes / default.rb
1 #
2 # Cookbook:: 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   cron
23   dmidecode
24   ethtool
25   iotop
26   iptraf-ng
27   locales-all
28   lsof
29   lsscsi
30   lvm2
31   mtr-tiny
32   numactl
33   pciutils
34   rsyslog
35   screen
36   smartmontools
37   strace
38   sysstat
39   systemd-coredump
40   tcpdump
41   usbutils
42   vim
43   xfsprogs
44 ]
45
46 service "rsyslog" do
47   action [:enable, :start]
48   supports :status => true, :restart => true, :reload => true
49 end
50
51 # Remove some unused and unwanted packages
52 package %w[mlocate whoopsie] do
53   action :purge
54 end
55
56 # Configure cron to run in the local timezone of the machine
57 systemd_service "cron-timezone" do
58   service "cron"
59   dropin "timezone"
60   environment "TZ" => node[:timezone]
61   notifies :restart, "service[cron]"
62   only_if { node[:timezone] }
63 end
64
65 # Configure cron with lower cpu and IO priority
66 if node[:tools][:cron][:load]
67   systemd_service "cron-load" do
68     service "cron"
69     dropin "load"
70     nice node[:tools][:cron][:load][:nice]
71     io_scheduling_class node[:tools][:cron][:load][:io_scheduling_class]
72     io_scheduling_priority node[:tools][:cron][:load][:io_scheduling_priority]
73     notifies :restart, "service[cron]"
74   end
75 end
76
77 # Make sure cron is running
78 service "cron" do
79   action [:enable, :start]
80 end
81
82 # Ubuntu MOTD adverts be-gone
83 template "/etc/default/motd-news" do
84   source "motd-news.erb"
85   owner "root"
86   group "root"
87   mode "644"
88 end