• R/O
  • HTTP
  • SSH
  • HTTPS

grid-chef-repo: Commit

Grid環境構築用のChefリポジトリです。


Commit MetaInfo

Revision147bedac1495aa8e5ce117a07a536a6a3a76e5e7 (tree)
Time2016-12-08 22:03:26
Authorwhitestar <whitestar@gaea...>
Commiterwhitestar

Log Message

adds the docker-grid::compose recipe.

Change Summary

Incremental Difference

--- a/cookbooks/docker-grid/CHANGELOG.md
+++ b/cookbooks/docker-grid/CHANGELOG.md
@@ -1,12 +1,18 @@
11 # docker-grid CHANGELOG
22
3+0.2.2
4+-----
5+- adds the `docker-grid::compose` recipe.
6+- adds the `['docker-grid']['engine']['users_allow']` attribute.
7+- refactoring.
8+
39 0.2.1
410 -----
511 - refactoring.
612
713 0.2.0
814 -----
9-- adds `['docker-grid']['engine']['userns-remap']` attribute.
15+- adds the `['docker-grid']['engine']['userns-remap']` attribute.
1016
1117 0.1.0
1218 -----
--- a/cookbooks/docker-grid/README.md
+++ b/cookbooks/docker-grid/README.md
@@ -12,6 +12,7 @@ This cookbook sets up Docker engine.
1212 - [Usage](#usage)
1313 - [Recipes](#recipes)
1414 - [docker-grid::default](#docker-griddefault)
15+ - [docker-grid::compose](#docker-gridcompose)
1516 - [docker-grid::engine](#docker-gridengine)
1617 - [Role Examples](#role-examples)
1718 - [License and Authors](#license-and-authors)
@@ -35,6 +36,9 @@ This cookbook sets up Docker engine.
3536 |`['docker-grid']['yum_repo']['baseurl']`|String||`'https://yum.dockerproject.org/repo/main/centos/$releasever/'`|
3637 |`['docker-grid']['yum_repo']['gpgcheck']`|String|`'0'`: disabled, `'1'`: enabled.|`'1'`|
3738 |`['docker-grid']['yum_repo']['gpgkey']`|String||`'https://yum.dockerproject.org/gpg'`|
39+|`['docker-grid']['compose']['auto_upgrade']`|String|upgrade/reinstall the docker-compose automatically.|`false`|
40+|`['docker-grid']['compose']['release_base_url']`|String||`'https://github.com/docker/compose/releases/download/1.9.0'`|
41+|`['docker-grid']['compose']['release_url']`|String||`"#{node['docker-grid']['compose']['release_base_url']}/docker-compose-#{node['kernel']['name']}-#{node['kernel']['machine']}"`|
3842 |`['docker-grid']['engine']['version_on_centos']`|String|Docker version for CentOS.|`'1.11.2-1'`|
3943 |`['docker-grid']['engine']['version_on_ubuntu']`|String|Docker version for Ubuntu.|`'1.11.2-0'`|
4044 |`['docker-grid']['engine']['version']`|String|Docker 1.9.x - 1.11.x is recommended for stability reasons. Note: this **default** value is overwritten by the `version_on_{centos or ubuntu}`.|See default.rb|
@@ -43,6 +47,7 @@ This cookbook sets up Docker engine.
4347 |`['docker-grid']['engine']['storage-driver']`|String||See default.rb|
4448 |`['docker-grid']['engine']['userns-remap']`|String|e.g. `'default'` (`dockremap` user/group) or your specified user/group name. Note: it is available in Docker 1.10/later and (Ubuntu or RHEL family 7.2/later).|`nil` (inactive)|
4549 |`['docker-grid']['engine']['daemon_extra_options']`|String|ref. `docker daemon --help`.|`'-H fd://'`|
50+|`['docker-grid']['engine']['users_allow']`|Array|Non-root users allowed to manage Docker daemon.|`[]`|
4651
4752 ## Usage
4853
@@ -52,6 +57,10 @@ This cookbook sets up Docker engine.
5257
5358 This recipe does nothing.
5459
60+#### docker-grid::compose
61+
62+This recipe installs docker-compose.
63+
5564 #### docker-grid::engine
5665
5766 This recipe sets up Docker engine.
--- a/cookbooks/docker-grid/attributes/default.rb
+++ b/cookbooks/docker-grid/attributes/default.rb
@@ -27,8 +27,11 @@ default['docker-grid']['yum_repo'] = {
2727 'gpgcheck' => '1',
2828 'gpgkey' => 'https://yum.dockerproject.org/gpg',
2929 }
30-default['docker-grid']['engine']['version_on_centos'] = '1.11.2-1'
31-default['docker-grid']['engine']['version_on_ubuntu'] = '1.11.2-0'
30+default['docker-grid']['compose']['auto_upgrade'] = false
31+default['docker-grid']['compose']['release_base_url'] = 'https://github.com/docker/compose/releases/download/1.9.0'
32+default['docker-grid']['compose']['release_url'] = "#{node['docker-grid']['compose']['release_base_url']}/docker-compose-#{node['kernel']['name']}-#{node['kernel']['machine']}"
33+default['docker-grid']['engine']['version_on_centos'] = '1.11.2-1' # 1.12.3-1, 1.11.2-1, 1.10.3-1
34+default['docker-grid']['engine']['version_on_ubuntu'] = '1.11.2-0' # 1.12.3-0, 1.11.2-0
3235 default['docker-grid']['engine']['version'] = node.value_for_platform(
3336 ['centos', 'redhat'] => {
3437 'default' => "#{node['docker-grid']['engine']['version_on_centos']}.el#{node['platform_version'].to_i}.#{node['platform']}",
@@ -49,3 +52,4 @@ default['docker-grid']['engine']['storage-driver'] = node.value_for_platform(
4952 )
5053 default['docker-grid']['engine']['userns-remap'] = nil # default: inactive
5154 default['docker-grid']['engine']['daemon_extra_options'] = '-H fd://'
55+default['docker-grid']['engine']['users_allow'] = []
--- a/cookbooks/docker-grid/metadata.rb
+++ b/cookbooks/docker-grid/metadata.rb
@@ -5,7 +5,7 @@ maintainer_email ''
55 license 'Apache 2.0'
66 description 'Installs/Configures Docker Engine.'
77 long_description IO.read(File.join(File.dirname(__FILE__), 'README.md'))
8-version '0.2.1'
8+version '0.2.2'
99 source_url 'http://scm.osdn.jp/gitroot/metasearch/grid-chef-repo.git'
1010 issues_url 'https://osdn.jp/projects/metasearch/ticket'
1111
--- /dev/null
+++ b/cookbooks/docker-grid/recipes/compose.rb
@@ -0,0 +1,31 @@
1+#
2+# Cookbook Name:: docker-grid
3+# Recipe:: compose
4+#
5+# Copyright 2016, whitestar
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+# See: https://docs.docker.com/compose/install/
21+
22+include_recipe 'docker-grid::engine'
23+
24+docker_compose_path = '/usr/local/bin/docker-compose'
25+
26+execute 'install_docker_compose' do
27+ user 'root'
28+ command "curl -L \"#{node['docker-grid']['compose']['release_url']}\" -o #{docker_compose_path} && chmod +x #{docker_compose_path}"
29+ action :run
30+ not_if { ::File.exist?(docker_compose_path) } unless node['docker-grid']['compose']['auto_upgrade']
31+end
--- a/cookbooks/docker-grid/recipes/engine.rb
+++ b/cookbooks/docker-grid/recipes/engine.rb
@@ -159,7 +159,7 @@ when 'rhel'
159159 'docker-engine-selinux',
160160 'docker-engine',
161161 ].each {|pkg|
162- package pkg do
162+ resources(package: pkg) rescue package pkg do
163163 action :install
164164 version node['docker-grid']['engine']['version']
165165 # dockerrepo is disabled by default to prevent automatic update.
@@ -181,7 +181,7 @@ when 'debian'
181181 end
182182
183183 pkgs.each {|pkg|
184- package pkg do
184+ resources(package: pkg) rescue package pkg do
185185 action :install
186186 end
187187 }
@@ -213,7 +213,7 @@ when 'debian'
213213 [
214214 'docker-engine',
215215 ].each {|pkg|
216- package pkg do
216+ resources(package: pkg) rescue package pkg do
217217 action :install
218218 version node['docker-grid']['engine']['version']
219219 end
@@ -223,3 +223,10 @@ end
223223 service 'docker' do
224224 action [:start, :enable]
225225 end
226+
227+users = node['docker-grid']['engine']['users_allow']
228+group 'docker' do
229+ members users unless users.empty?
230+ action :create
231+ append true
232+end
Show on old repository browser