license 'Apache 2.0'
description 'Installs/Configures Docker Engine.'
long_description IO.read(File.join(File.dirname(__FILE__), 'README.md'))
-version '0.3.1'
+version '0.3.2'
source_url 'http://scm.osdn.jp/gitroot/metasearch/grid-chef-repo.git'
issues_url 'https://osdn.jp/projects/metasearch/ticket'
supports 'ubuntu', '>= 14.04'
-depends 'platform_utils', '>= 0.4.1'
+depends 'platform_utils', '>= 0.4.2'
depends 'ssl_cert', '>= 0.3.2'
# https://dcos.io/docs/1.8/administration/installing/custom/system-requirements/
+::Chef::Recipe.send(:include, PlatformUtils::Helper)
::Chef::Recipe.send(:include, PlatformUtils::VirtUtils)
bash 'systemctl_daemon-reload' do
end
if node['docker-grid']['engine']['storage-driver'] == 'overlay'
- bash 'load_overlayfs_kernel_module' do
- code <<-EOH
- modprobe overlay
- EOH
- not_if 'lsmod | grep overlay'
- end
-
- template '/etc/modules-load.d/overlay.conf' do
- source 'etc/modules-load.d/overlay.conf'
- owner 'root'
- group 'root'
- mode '0644'
- end
-end
-
-log 'reboot_message' do
- message 'Please reboot this machine because of kernel boot option modified.'
- level :warn
- action :nothing
+ load_kernel_module('overlay')
end
userns_remap = node['docker-grid']['engine']['userns-remap']
# tr('~', '-') for Ubuntu.
Chef::Application.fatal!('Docker version must be 1.10 or later for userns-remap.') # and exit.
end
- # By default user namespace feature is inactive in RHEL family (>= 7.2).
- if node['platform_family'] == 'rhel' && !container_guest_node?
- unless Gem::Version.create(node['platform_version']) >= Gem::Version.create('7.2')
- Chef::Application.fatal!('Platform version must be 7.2 or later for kernel user namespace feature.') # and exit.
- end
- bash 'enable_user_namespace_feature_of_kernerl' do
- code <<-"EOH"
- grubby --args='user_namespace.enable=1' --update-kernel=/boot/vmlinuz-#{node['kernel']['release']}
- EOH
- not_if "grubby --info=/boot/vmlinuz-#{node['kernel']['release']} | grep 'user_namespace.enable=1'"
- notifies :write, 'log[reboot_message]'
- end
- end
+ include_recipe 'platform_utils::kernel_user_namespace'
remap_user = userns_remap == 'default' ? 'dockremap' : userns_remap
notifies_conf = {