hako 0.2.0 → 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.rubocop_todo.yml +4 -0
- data/lib/hako/commander.rb +2 -1
- data/lib/hako/scheduler.rb +1 -1
- data/lib/hako/schedulers/echo.rb +1 -1
- data/lib/hako/schedulers/ecs.rb +6 -5
- data/lib/hako/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: db06d64418cd4a7dcd0217e8c6ada22c9fd100fb
|
4
|
+
data.tar.gz: 5f962c2f0b257e6486d69c5bde8f4d16a38663ed
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 55589bac643779f00ed7eaf18c40106e262610685ba747affd57f21001a38ebf0c31f6f0cbdd14f87bea34ca3a5adb6969e116fc149a12737ffe193d80812dde
|
7
|
+
data.tar.gz: 5d6f39b9a9d2dc9452ebb412981fe0f255b9485faa82819a24a8f2e29554908333693491d84108e1e47fd0ed8016bcc92d84bfb5202d768e25df28cac9225a2e
|
data/.rubocop_todo.yml
CHANGED
data/lib/hako/commander.rb
CHANGED
@@ -19,11 +19,12 @@ module Hako
|
|
19
19
|
front = load_front(@app.yaml['front'])
|
20
20
|
scheduler = load_scheduler(@app.yaml['scheduler'])
|
21
21
|
app_port = @app.yaml.fetch('port', nil)
|
22
|
+
docker_labels = @app.yaml.fetch('docker_labels', {})
|
22
23
|
image = @app.yaml.fetch('image') { raise Error.new('image must be set') }
|
23
24
|
image_tag = "#{image}:#{tag}"
|
24
25
|
after_scripts = @app.yaml.fetch('after_scripts', []).map { |config| load_after_script(config) }
|
25
26
|
|
26
|
-
scheduler.deploy(image_tag, env, app_port, front, force: force)
|
27
|
+
scheduler.deploy(image_tag, env, app_port, docker_labels, front, force: force)
|
27
28
|
|
28
29
|
after_scripts.each(&:after_deploy)
|
29
30
|
end
|
data/lib/hako/scheduler.rb
CHANGED
data/lib/hako/schedulers/echo.rb
CHANGED
@@ -7,7 +7,7 @@ module Hako
|
|
7
7
|
@app_id = app_id
|
8
8
|
end
|
9
9
|
|
10
|
-
def deploy(image_tag, env, app_port, _front, force: false)
|
10
|
+
def deploy(image_tag, env, app_port, _docker_labels, _front, force: false)
|
11
11
|
puts "Deploy #{image_tag} with app_port=#{app_port}, force=#{force}"
|
12
12
|
puts 'Environment variables:'
|
13
13
|
env.each do |key, val|
|
data/lib/hako/schedulers/ecs.rb
CHANGED
@@ -23,7 +23,7 @@ module Hako
|
|
23
23
|
@ec2 = Aws::EC2::Client.new(region: region)
|
24
24
|
end
|
25
25
|
|
26
|
-
def deploy(image_tag, env, app_port, front, force: false)
|
26
|
+
def deploy(image_tag, env, app_port, docker_labels, front, force: false)
|
27
27
|
@force_mode = force
|
28
28
|
front_env = {
|
29
29
|
'AWS_DEFAULT_REGION' => front.config.s3.region,
|
@@ -31,7 +31,7 @@ module Hako
|
|
31
31
|
'S3_CONFIG_KEY' => front.config.s3.key(@app_id),
|
32
32
|
}
|
33
33
|
front_port = determine_front_port
|
34
|
-
task_definition = register_task_definition(image_tag, env, front.config, front_env, front_port)
|
34
|
+
task_definition = register_task_definition(image_tag, env, docker_labels, front.config, front_env, front_port)
|
35
35
|
if task_definition == :noop
|
36
36
|
Hako.logger.info "Task definition isn't changed"
|
37
37
|
task_definition = @ecs.describe_task_definition(task_definition: @app_id).task_definition
|
@@ -195,9 +195,9 @@ module Hako
|
|
195
195
|
EcsDefinitionComparator.new(expected_container).different?(actual_container)
|
196
196
|
end
|
197
197
|
|
198
|
-
def register_task_definition(image_tag, env, front_config, front_env, front_port)
|
198
|
+
def register_task_definition(image_tag, env, docker_labels, front_config, front_env, front_port)
|
199
199
|
front = front_container(front_config, front_env, front_port)
|
200
|
-
app = app_container(image_tag, env)
|
200
|
+
app = app_container(image_tag, env, docker_labels)
|
201
201
|
if task_definition_changed?(front, app)
|
202
202
|
@ecs.register_task_definition(
|
203
203
|
family: @app_id,
|
@@ -239,7 +239,7 @@ module Hako
|
|
239
239
|
}
|
240
240
|
end
|
241
241
|
|
242
|
-
def app_container(image_tag, env)
|
242
|
+
def app_container(image_tag, env, docker_labels)
|
243
243
|
environment = env.map { |k, v| { name: k, value: v } }
|
244
244
|
{
|
245
245
|
name: 'app',
|
@@ -250,6 +250,7 @@ module Hako
|
|
250
250
|
port_mappings: [],
|
251
251
|
essential: true,
|
252
252
|
environment: environment,
|
253
|
+
docker_labels: docker_labels,
|
253
254
|
}
|
254
255
|
end
|
255
256
|
|
data/lib/hako/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: hako
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Kohei Suzuki
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-02-16 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: aws-sdk
|
@@ -159,7 +159,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
159
159
|
version: '0'
|
160
160
|
requirements: []
|
161
161
|
rubyforge_project:
|
162
|
-
rubygems_version: 2.
|
162
|
+
rubygems_version: 2.5.1
|
163
163
|
signing_key:
|
164
164
|
specification_version: 4
|
165
165
|
summary: Deploy Docker container
|