tsudura 0.1.1 → 0.1.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +1 -1
- data/lib/tsudura.rb +2 -0
- data/lib/tsudura/aws/ami.rb +5 -3
- data/lib/tsudura/aws/launch_instance.rb +2 -0
- data/lib/tsudura/progress_bar.rb +13 -0
- data/lib/tsudura/runners/normal_runner.rb +8 -6
- data/lib/tsudura/runners/packer_plus_runner.rb +7 -5
- data/lib/tsudura/runners/packer_runner.rb +6 -4
- data/lib/tsudura/runners/runner_module.rb +9 -9
- data/lib/tsudura/runners/runner_module_with_message.rb +64 -0
- data/lib/tsudura/version.rb +1 -1
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9b155f3cd929cb971a844a1144bc7b7b45544d0c
|
4
|
+
data.tar.gz: d111161888b3a74e9b93a53acced7543d7ea11fb
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e1b7bc3593e82f7738db39423c0b1c71a455dad03b3fae63cebb0a8423e02a4c34b6272b920443471ce9a656cdd33c3d062733b5da15763a3cc195d2307e4aba
|
7
|
+
data.tar.gz: c21e571f73d94468938653a4f1ccedd6f6d75e2fac587cff453a71c0d98e0cdd6e539927d25927462080fdb955119635b1ccd2041707ee36932cdadf89ce742f
|
data/README.md
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
[![Build Status](https://travis-ci.org/onigra/tsudura.svg)](https://travis-ci.org/onigra/tsudura) [![Coverage Status](https://coveralls.io/repos/onigra/tsudura/badge.svg?branch=master)](https://coveralls.io/r/onigra/tsudura?branch=master) [![Code Climate](https://codeclimate.com/github/onigra/tsudura/badges/gpa.svg)](https://codeclimate.com/github/onigra/tsudura)
|
1
|
+
[![Gem Version](https://badge.fury.io/rb/tsudura.svg)](http://badge.fury.io/rb/tsudura) [![Build Status](https://travis-ci.org/onigra/tsudura.svg)](https://travis-ci.org/onigra/tsudura) [![Coverage Status](https://coveralls.io/repos/onigra/tsudura/badge.svg?branch=master)](https://coveralls.io/r/onigra/tsudura?branch=master) [![Code Climate](https://codeclimate.com/github/onigra/tsudura/badges/gpa.svg)](https://codeclimate.com/github/onigra/tsudura) [![Dependency Status](https://gemnasium.com/onigra/tsudura.svg)](https://gemnasium.com/onigra/tsudura)
|
2
2
|
|
3
3
|
# WARNING
|
4
4
|
|
data/lib/tsudura.rb
CHANGED
@@ -9,7 +9,9 @@ require "deep_hash_transform"
|
|
9
9
|
|
10
10
|
require "tsudura/config_parser"
|
11
11
|
require "tsudura/env_prefix"
|
12
|
+
require "tsudura/progress_bar"
|
12
13
|
require "tsudura/runners/runner_module"
|
14
|
+
require "tsudura/runners/runner_module_with_message"
|
13
15
|
require "tsudura/runners/normal_runner"
|
14
16
|
require "tsudura/runners/packer_runner"
|
15
17
|
require "tsudura/runners/packer_plus_runner"
|
data/lib/tsudura/aws/ami.rb
CHANGED
@@ -10,7 +10,7 @@ module Tsudura::Aws
|
|
10
10
|
|
11
11
|
def create
|
12
12
|
@new_image_id = create_ami
|
13
|
-
waiting_for_available
|
13
|
+
waiting_for_available
|
14
14
|
@new_image_id
|
15
15
|
end
|
16
16
|
|
@@ -38,12 +38,14 @@ module Tsudura::Aws
|
|
38
38
|
#
|
39
39
|
# stateがavailableになるまで待ち
|
40
40
|
#
|
41
|
-
def waiting_for_available
|
41
|
+
def waiting_for_available
|
42
42
|
status = nil
|
43
|
+
progress = Tsudura::ProgressBar.new
|
43
44
|
|
44
45
|
while (status.nil? || status == 'pending')
|
45
46
|
sleep 10
|
46
|
-
status = ec2.describe_images(image_ids: [new_image_id])[:images].first.state
|
47
|
+
status = ec2.describe_images(image_ids: [@new_image_id])[:images].first.state
|
48
|
+
progress.write
|
47
49
|
end
|
48
50
|
end
|
49
51
|
|
@@ -37,6 +37,7 @@ module Tsudura::Aws
|
|
37
37
|
|
38
38
|
def waiting_for_launch
|
39
39
|
status = nil
|
40
|
+
progress = Tsudura::ProgressBar.new
|
40
41
|
|
41
42
|
while (status.nil? || status == 'initializing')
|
42
43
|
sleep 10
|
@@ -48,6 +49,7 @@ module Tsudura::Aws
|
|
48
49
|
end
|
49
50
|
|
50
51
|
status = statuses[:instance_statuses].first[:system_status].status
|
52
|
+
progress.write
|
51
53
|
end
|
52
54
|
end
|
53
55
|
|
@@ -1,6 +1,7 @@
|
|
1
1
|
module Tsudura::Runners
|
2
2
|
class NormalRunner
|
3
3
|
include Tsudura::Runners::RunnerModule
|
4
|
+
include Tsudura::Runners::RunnerModuleWithMessage
|
4
5
|
|
5
6
|
def initialize(config)
|
6
7
|
@config = config
|
@@ -8,12 +9,13 @@ module Tsudura::Runners
|
|
8
9
|
end
|
9
10
|
|
10
11
|
def run
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
12
|
+
launch_instance_with_m
|
13
|
+
provision_with_m
|
14
|
+
create_ami_with_m
|
15
|
+
create_launch_config_with_m
|
16
|
+
update_auto_scaling_group_with_m
|
17
|
+
destroy_temp_objects_with_m
|
18
|
+
puts "Success!!"
|
17
19
|
end
|
18
20
|
end
|
19
21
|
end
|
@@ -1,6 +1,7 @@
|
|
1
1
|
module Tsudura::Runners
|
2
2
|
class PackerPlusRunner
|
3
3
|
include Tsudura::Runners::RunnerModule
|
4
|
+
include Tsudura::Runners::RunnerModuleWithMessage
|
4
5
|
|
5
6
|
def initialize(config)
|
6
7
|
@config = config
|
@@ -8,11 +9,12 @@ module Tsudura::Runners
|
|
8
9
|
end
|
9
10
|
|
10
11
|
def run
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
12
|
+
launch_instance_with_m
|
13
|
+
provision_with_m
|
14
|
+
create_ami_with_m
|
15
|
+
create_launch_config_with_m
|
16
|
+
terminate_tmp_ec2_instance_with_m
|
17
|
+
puts "Success!!"
|
16
18
|
end
|
17
19
|
end
|
18
20
|
end
|
@@ -1,6 +1,7 @@
|
|
1
1
|
module Tsudura::Runners
|
2
2
|
class PackerRunner
|
3
3
|
include Tsudura::Runners::RunnerModule
|
4
|
+
include Tsudura::Runners::RunnerModuleWithMessage
|
4
5
|
|
5
6
|
def initialize(config)
|
6
7
|
@config = config
|
@@ -8,10 +9,11 @@ module Tsudura::Runners
|
|
8
9
|
end
|
9
10
|
|
10
11
|
def run
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
12
|
+
launch_instance_with_m
|
13
|
+
provision_with_m
|
14
|
+
create_ami_with_m
|
15
|
+
terminate_tmp_ec2_instance_with_m
|
16
|
+
puts "Success!!"
|
15
17
|
end
|
16
18
|
end
|
17
19
|
end
|
@@ -5,20 +5,20 @@ module Tsudura::Runners
|
|
5
5
|
|
6
6
|
def launch_instance
|
7
7
|
@ec2 = Tsudura::Aws::LaunchInstance.new(@config)
|
8
|
-
@ec2.launch
|
8
|
+
@tmp_instance_id = @ec2.launch
|
9
9
|
end
|
10
10
|
|
11
11
|
def provision
|
12
12
|
Tsudura::Provisioner::Ansible.new(@config).provision!
|
13
13
|
end
|
14
14
|
|
15
|
-
def create_ami
|
16
|
-
@ami = Tsudura::Aws::Ami.new(
|
17
|
-
@ami.create
|
15
|
+
def create_ami
|
16
|
+
@ami = Tsudura::Aws::Ami.new(@tmp_instance_id, @config, @timestamp)
|
17
|
+
@new_image_id = @ami.create
|
18
18
|
end
|
19
19
|
|
20
|
-
def create_launch_config
|
21
|
-
@launch_config = Tsudura::Aws::LaunchConfig.new(new_image_id, @config, @timestamp)
|
20
|
+
def create_launch_config
|
21
|
+
@launch_config = Tsudura::Aws::LaunchConfig.new(@new_image_id, @config, @timestamp)
|
22
22
|
@launch_config.create
|
23
23
|
end
|
24
24
|
|
@@ -27,9 +27,9 @@ module Tsudura::Runners
|
|
27
27
|
end
|
28
28
|
|
29
29
|
def destroy_temp_objects
|
30
|
-
|
31
|
-
|
32
|
-
|
30
|
+
terminate_tmp_ec2_instance
|
31
|
+
deregister_old_ami
|
32
|
+
delete_old_launch_config
|
33
33
|
end
|
34
34
|
|
35
35
|
def terminate_tmp_ec2_instance
|
@@ -0,0 +1,64 @@
|
|
1
|
+
module Tsudura::Runners
|
2
|
+
module RunnerModuleWithMessage
|
3
|
+
|
4
|
+
private
|
5
|
+
|
6
|
+
def launch_instance_with_m
|
7
|
+
puts "Launch instance"
|
8
|
+
launch_instance
|
9
|
+
puts "\nLaunch tmp instance: #{@tmp_instance_id}"
|
10
|
+
puts "Finish!!"
|
11
|
+
end
|
12
|
+
|
13
|
+
def provision_with_m
|
14
|
+
puts "Start provisioning"
|
15
|
+
provision
|
16
|
+
puts "Finish!!"
|
17
|
+
end
|
18
|
+
|
19
|
+
def create_ami_with_m
|
20
|
+
puts "Create ami"
|
21
|
+
create_ami
|
22
|
+
puts "\nNew image id: #{@new_image_id}"
|
23
|
+
puts "Finish!!"
|
24
|
+
end
|
25
|
+
|
26
|
+
def create_launch_config_with_m
|
27
|
+
puts "Create launch config"
|
28
|
+
create_launch_config
|
29
|
+
puts "New launch config name: #{@config[:service]}-#{short_env}-#{@timestamp}"
|
30
|
+
puts "Finish!!"
|
31
|
+
end
|
32
|
+
|
33
|
+
def update_auto_scaling_group_with_m
|
34
|
+
puts "update auto scaling group"
|
35
|
+
update_auto_scaling_group
|
36
|
+
puts "Finish!!"
|
37
|
+
end
|
38
|
+
|
39
|
+
def destroy_temp_objects_with_m
|
40
|
+
terminate_tmp_ec2_instance_with_m
|
41
|
+
deregister_old_ami_with_m
|
42
|
+
delete_old_launch_config_with_m
|
43
|
+
end
|
44
|
+
|
45
|
+
def terminate_tmp_ec2_instance_with_m
|
46
|
+
puts "Terminate instance"
|
47
|
+
terminate_tmp_ec2_instance
|
48
|
+
end
|
49
|
+
|
50
|
+
def deregister_old_ami_with_m
|
51
|
+
puts "Deregister old ami"
|
52
|
+
deregister_old_ami
|
53
|
+
end
|
54
|
+
|
55
|
+
def delete_old_launch_config_with_m
|
56
|
+
puts "Delete old launch config"
|
57
|
+
delete_old_launch_config
|
58
|
+
end
|
59
|
+
|
60
|
+
def short_env
|
61
|
+
Tsudura::EnvPrefix.short @config[:environment]
|
62
|
+
end
|
63
|
+
end
|
64
|
+
end
|
data/lib/tsudura/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tsudura
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- onigra
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-06-
|
11
|
+
date: 2015-06-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -193,12 +193,14 @@ files:
|
|
193
193
|
- lib/tsudura/cli.rb
|
194
194
|
- lib/tsudura/config_parser.rb
|
195
195
|
- lib/tsudura/env_prefix.rb
|
196
|
+
- lib/tsudura/progress_bar.rb
|
196
197
|
- lib/tsudura/provisioner/ansible.rb
|
197
198
|
- lib/tsudura/runner.rb
|
198
199
|
- lib/tsudura/runners/normal_runner.rb
|
199
200
|
- lib/tsudura/runners/packer_plus_runner.rb
|
200
201
|
- lib/tsudura/runners/packer_runner.rb
|
201
202
|
- lib/tsudura/runners/runner_module.rb
|
203
|
+
- lib/tsudura/runners/runner_module_with_message.rb
|
202
204
|
- lib/tsudura/version.rb
|
203
205
|
- tsudura.gemspec
|
204
206
|
homepage: https://github.com/onigra/tsudura
|