daddy 0.5.0 → 0.5.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/bin/dad +2 -1
- data/itamae/cookbooks/docker/install.rb +41 -0
- data/itamae/cookbooks/docker/registry/install.rb +3 -0
- data/itamae/cookbooks/mysql/install.rb +40 -0
- data/itamae/cookbooks/mysql/mysql_secure_installation.sh +26 -0
- data/itamae/templates/etc/yum.repos.d/docker.repo.erb +6 -0
- data/lib/daddy/itamae.rb +4 -0
- data/lib/daddy/itamae/os_version.rb +3 -0
- data/lib/daddy/version.rb +1 -1
- data/lib/tasks/db_create.rake +2 -1
- data/lib/tasks/docker.rake +20 -0
- data/lib/tasks/mysql.rake +12 -0
- data/lib/tasks/task_helper.rb +7 -3
- metadata +10 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ad909474011e58e85079da60b460e1c2bd192d0d
|
4
|
+
data.tar.gz: c5847a1dbf71152547b7d4fc132395736c508a14
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5ba9fe71c13cf7d486ba283acf14d3c2f847d65e059f065c3f94a282692c8d79f2ba119278606fe4017cee8cab4bde6e36ce94e0c95e2baa9a10d716d4379228
|
7
|
+
data.tar.gz: ece215f7fd5e73da83667e5aaa266c0e0e88f3f2571ff238f4f32554e328d7826e2faf0eb418d1a02dc6d578df5742b95d87062698c187b7d143f73ccf0f2b0a
|
data/bin/dad
CHANGED
@@ -12,7 +12,7 @@ when 'new'
|
|
12
12
|
APP_NAME = ARGV[1]
|
13
13
|
|
14
14
|
[
|
15
|
-
"sudo gem install rails -v #{RAILS_VERSION} --no-
|
15
|
+
"sudo gem install rails -v #{RAILS_VERSION} --no-document",
|
16
16
|
"rails _#{RAILS_VERSION}_ new #{APP_NAME} -d mysql --skip-bundle",
|
17
17
|
].each do |command|
|
18
18
|
puts command
|
@@ -26,6 +26,7 @@ when 'new'
|
|
26
26
|
|
27
27
|
[
|
28
28
|
"bundle install",
|
29
|
+
"bundle exec rake dad:mysql:install",
|
29
30
|
"bundle exec rake dad:install",
|
30
31
|
"bundle exec rake dad:db:config",
|
31
32
|
"bundle exec rake dad:db:create",
|
@@ -0,0 +1,41 @@
|
|
1
|
+
require 'daddy/itamae'
|
2
|
+
|
3
|
+
case os_version
|
4
|
+
when /rhel-6\.(.*?)/
|
5
|
+
package 'epel-release' do
|
6
|
+
user 'root'
|
7
|
+
end
|
8
|
+
|
9
|
+
package 'docker-io' do
|
10
|
+
user 'root'
|
11
|
+
end
|
12
|
+
|
13
|
+
when /rhel-7\.(.*?)/
|
14
|
+
template '/etc/yum.repos.d/docker.repo' do
|
15
|
+
user 'root'
|
16
|
+
owner 'root'
|
17
|
+
group 'root'
|
18
|
+
mode '644'
|
19
|
+
end
|
20
|
+
|
21
|
+
package 'docker-engine' do
|
22
|
+
user 'root'
|
23
|
+
end
|
24
|
+
|
25
|
+
else
|
26
|
+
raise "unsupported operating system: #{os_version}"
|
27
|
+
end
|
28
|
+
|
29
|
+
group 'docker' do
|
30
|
+
user 'root'
|
31
|
+
end
|
32
|
+
|
33
|
+
execute "usermod -aG docker #{ENV['USER']}" do
|
34
|
+
user 'root'
|
35
|
+
not_if "groups #{ENV['USER']} | grep -E \"\sdocker\""
|
36
|
+
end
|
37
|
+
|
38
|
+
service 'docker' do
|
39
|
+
action [:enable, :start]
|
40
|
+
user 'root'
|
41
|
+
end
|
@@ -0,0 +1,40 @@
|
|
1
|
+
require 'daddy/itamae'
|
2
|
+
|
3
|
+
case os_version
|
4
|
+
when /rhel-6\.(.*?)/
|
5
|
+
package 'mysql' do
|
6
|
+
user 'root'
|
7
|
+
end
|
8
|
+
|
9
|
+
package 'mysql-server' do
|
10
|
+
user 'root'
|
11
|
+
end
|
12
|
+
|
13
|
+
service 'mysqld' do
|
14
|
+
user 'root'
|
15
|
+
action [:enable, :start]
|
16
|
+
end
|
17
|
+
|
18
|
+
when /rhel-7\.(.*?)/
|
19
|
+
package 'mariadb' do
|
20
|
+
user 'root'
|
21
|
+
end
|
22
|
+
|
23
|
+
package 'mariadb-server' do
|
24
|
+
user 'root'
|
25
|
+
end
|
26
|
+
|
27
|
+
service 'mariadb' do
|
28
|
+
user 'root'
|
29
|
+
action [:enable, :start]
|
30
|
+
end
|
31
|
+
|
32
|
+
else
|
33
|
+
raise "サポートしていないOSバージョンです。#{os_version}"
|
34
|
+
end
|
35
|
+
|
36
|
+
execute 'mysql_secure_installation' do
|
37
|
+
user 'root'
|
38
|
+
command "bash #{File.join(File.dirname(__FILE__), 'mysql_secure_installation.sh')}"
|
39
|
+
only_if "mysql -u root -e 'select 1;' && test $? -eq 0"
|
40
|
+
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
#!/bin/bash
|
2
|
+
|
3
|
+
expect -c "
|
4
|
+
set timeout 5
|
5
|
+
spawn mysql_secure_installation
|
6
|
+
|
7
|
+
expect \"Enter current password for root\"
|
8
|
+
send \"\n\"
|
9
|
+
|
10
|
+
expect \"Set root password?\"
|
11
|
+
send \"n\n\"
|
12
|
+
|
13
|
+
expect \"Remove anonymous users?\"
|
14
|
+
send \"y\n\"
|
15
|
+
|
16
|
+
expect \"Disallow root login remotely?\"
|
17
|
+
send \"y\n\"
|
18
|
+
|
19
|
+
expect \"Remove test database and access to it?\"
|
20
|
+
send \"y\n\"
|
21
|
+
|
22
|
+
expect \"Reload privilege tables now?\"
|
23
|
+
send \"y\n\"
|
24
|
+
|
25
|
+
interact
|
26
|
+
"
|
data/lib/daddy/itamae.rb
CHANGED
data/lib/daddy/version.rb
CHANGED
data/lib/tasks/db_create.rake
CHANGED
@@ -24,12 +24,13 @@ namespace :dad do
|
|
24
24
|
end
|
25
25
|
end
|
26
26
|
|
27
|
+
system("echo 'flush privileges;' >> tmp/create_databases.sql")
|
27
28
|
system("echo >> tmp/create_databases.sql")
|
28
29
|
|
29
30
|
puts
|
30
31
|
puts File.read('tmp/create_databases.sql')
|
31
32
|
|
32
|
-
if ENV['
|
33
|
+
if ENV['DAD_MYSQL_NO_ROOT_PASSWORD']
|
33
34
|
fail unless system("mysql -u root < tmp/create_databases.sql")
|
34
35
|
else
|
35
36
|
fail unless system("mysql -u root -p < tmp/create_databases.sql")
|
@@ -0,0 +1,20 @@
|
|
1
|
+
require_relative 'task_helper'
|
2
|
+
|
3
|
+
namespace :dad do
|
4
|
+
namespace :docker do
|
5
|
+
|
6
|
+
desc 'install Docker'
|
7
|
+
task :install do
|
8
|
+
run_itamae 'docker/install'
|
9
|
+
end
|
10
|
+
|
11
|
+
namespace :registry do
|
12
|
+
|
13
|
+
desc 'install Docker Registry'
|
14
|
+
task :install do
|
15
|
+
run_itamae 'docker/install', 'docker/registry/install'
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
end
|
20
|
+
end
|
data/lib/tasks/task_helper.rb
CHANGED
@@ -102,12 +102,16 @@ def self.run(*commands)
|
|
102
102
|
end
|
103
103
|
end
|
104
104
|
|
105
|
-
def self.run_itamae(
|
105
|
+
def self.run_itamae(*recipes)
|
106
106
|
options = []
|
107
107
|
options << '--ohai'
|
108
108
|
options << '--log-level=debug' if ENV['DEBUG']
|
109
109
|
|
110
|
-
|
110
|
+
recipe_files = []
|
111
|
+
recipes.each do |recipe|
|
112
|
+
recipe = "#{recipe}.rb" unless recipe.end_with?('.rb')
|
113
|
+
recipe_files << File.join(cookbook_dir, recipe)
|
114
|
+
end
|
111
115
|
|
112
|
-
run "bundle exec itamae local #{options.join(' ')} #{
|
116
|
+
run "bundle exec itamae local #{options.join(' ')} #{recipe_files.join(' ')}"
|
113
117
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: daddy
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
4
|
+
version: 0.5.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- ichy
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-02-
|
11
|
+
date: 2016-02-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: capybara
|
@@ -233,9 +233,14 @@ files:
|
|
233
233
|
- app/assets/stylesheets/datepicker.css.scss
|
234
234
|
- app/assets/stylesheets/ympicker.css.scss
|
235
235
|
- bin/dad
|
236
|
+
- itamae/cookbooks/docker/install.rb
|
237
|
+
- itamae/cookbooks/docker/registry/install.rb
|
236
238
|
- itamae/cookbooks/jenkins/install.rb
|
239
|
+
- itamae/cookbooks/mysql/install.rb
|
240
|
+
- itamae/cookbooks/mysql/mysql_secure_installation.sh
|
237
241
|
- itamae/cookbooks/phantomjs/install.rb
|
238
242
|
- itamae/templates/etc/sysconfig/jenkins.erb
|
243
|
+
- itamae/templates/etc/yum.repos.d/docker.repo.erb
|
239
244
|
- lib/active_support/cache/null_store.rb
|
240
245
|
- lib/capistrano/daddy.rb
|
241
246
|
- lib/capistrano/tasks/update_linked_files.rake
|
@@ -259,6 +264,7 @@ files:
|
|
259
264
|
- lib/daddy/helpers/html_helper.rb
|
260
265
|
- lib/daddy/http_client.rb
|
261
266
|
- lib/daddy/itamae.rb
|
267
|
+
- lib/daddy/itamae/os_version.rb
|
262
268
|
- lib/daddy/model.rb
|
263
269
|
- lib/daddy/models/crud_extension.rb
|
264
270
|
- lib/daddy/models/query_extension.rb
|
@@ -283,6 +289,7 @@ files:
|
|
283
289
|
- lib/tasks/db_fixtures.rake
|
284
290
|
- lib/tasks/db_load.rake
|
285
291
|
- lib/tasks/diary.rake
|
292
|
+
- lib/tasks/docker.rake
|
286
293
|
- lib/tasks/elasticsearch.rake
|
287
294
|
- lib/tasks/elasticsearch/elasticsearch.conf.erb
|
288
295
|
- lib/tasks/elasticsearch/elasticsearch.yml.erb
|
@@ -305,6 +312,7 @@ files:
|
|
305
312
|
- lib/tasks/kibana/configure.sh
|
306
313
|
- lib/tasks/kibana/install.sh
|
307
314
|
- lib/tasks/kibana/nginx.conf.erb
|
315
|
+
- lib/tasks/mysql.rake
|
308
316
|
- lib/tasks/nginx.rake
|
309
317
|
- lib/tasks/nginx/app.conf.erb
|
310
318
|
- lib/tasks/nginx/empty.conf.erb
|