prima-twig 0.4.5 → 0.4.6
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/bin/twig-feature +68 -3
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ff03277aa3210b252b30026ad4399ff1d504840d
|
4
|
+
data.tar.gz: 609c5a2cbb73f58953c8c41538de2b8906f984e4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: cf1a650ea4168188083758d8d9192846aa0d236e98882541ba8353d9a410c43bd47c8f80e4d4c31de3718558b7fe269662c2810856dfd4ce6e4034a9cd60fa1a
|
7
|
+
data.tar.gz: 425bc96763294ad490a396e6ba40b322e5ba2ddd05e053eb950c348eb52b485ace5ebce878df5c45fa1de09a656eb1d3e1edd169439040074a0990e6976a986d
|
data/bin/twig-feature
CHANGED
@@ -89,7 +89,7 @@ class Release
|
|
89
89
|
menu.shell = true
|
90
90
|
|
91
91
|
envs.each do |key, env|
|
92
|
-
title = @prima.reduce_size("#{env[0].key}: #{env[0].value} #{env[1].key}: #{env[1].value} #{env[2].key}: #{env[2].value}", 100)
|
92
|
+
title = @prima.reduce_size("#{env[0].key}: #{env[0].value} #{env[1].key}: #{env[1].value} #{env[2].key}: #{env[2].value} #{env[3].key}: #{env[3].value}", 100)
|
93
93
|
msg = "#{title}".light_blue
|
94
94
|
menu.choice(msg) { key }
|
95
95
|
end
|
@@ -123,10 +123,11 @@ class Release
|
|
123
123
|
prima_branch = choose_branch_to_deploy('prima')
|
124
124
|
backoffice_branch = choose_branch_to_deploy('backoffice')
|
125
125
|
urania_branch = choose_branch_to_deploy('urania')
|
126
|
+
ermes_branch = choose_branch_to_deploy('ermes')
|
126
127
|
socket_branch = {name: "master"}
|
127
128
|
pamela_branch = {name: "master"}
|
128
129
|
|
129
|
-
@dns_record_identifier = "#{@prima.clean_branch_name(prima_branch[:name])}-#{@prima.clean_branch_name(backoffice_branch[:name])}-#{@prima.clean_branch_name(urania_branch[:name])}".gsub(/feature./, '')[0..35].gsub(/(-+$)/, '')
|
130
|
+
@dns_record_identifier = "#{@prima.clean_branch_name(prima_branch[:name])}-#{@prima.clean_branch_name(backoffice_branch[:name])}-#{@prima.clean_branch_name(urania_branch[:name])}-#{@prima.clean_branch_name(ermes_branch[:name])}".gsub(/feature./, '')[0..35].gsub(/(-+$)/, '')
|
130
131
|
|
131
132
|
tags = [
|
132
133
|
{
|
@@ -140,10 +141,14 @@ class Release
|
|
140
141
|
{
|
141
142
|
key: "backoffice",
|
142
143
|
value: backoffice_branch[:name]
|
144
|
+
},
|
145
|
+
{
|
146
|
+
key: "ermes",
|
147
|
+
value: ermes_branch[:name]
|
143
148
|
}
|
144
149
|
]
|
145
150
|
|
146
|
-
deploy_id = Digest::MD5.hexdigest(prima_branch[:name] + backoffice_branch[:name] + urania_branch[:name] + socket_branch[:name] + pamela_branch[:name])
|
151
|
+
deploy_id = Digest::MD5.hexdigest(prima_branch[:name] + backoffice_branch[:name] + urania_branch[:name] + socket_branch[:name] + pamela_branch[:name] + ermes_branch[:name])
|
147
152
|
|
148
153
|
cluster_stack_name = "ecs-cluster-qa-#{deploy_id}"
|
149
154
|
create_cluster_stack(cluster_stack_name, tags) unless stack_exists?(cluster_stack_name)
|
@@ -171,6 +176,7 @@ class Release
|
|
171
176
|
|
172
177
|
create_prima_artifact(prima_branch[:revision], prima_branch[:name]) unless artifact_exists?('prima-artifacts', "prima/#{prima_branch[:revision]}")
|
173
178
|
create_urania_artifact(urania_branch[:revision]) unless artifact_exists?('prima-artifacts', "microservices/urania/#{urania_branch[:revision]}-qa.tar.gz")
|
179
|
+
create_ermes_artifact(ermes_branch[:revision]) unless artifact_exists?('prima-artifacts', "microservices/ermes/ermes_#{ermes_branch[:revision]}.tar.gz")
|
174
180
|
create_backoffice_artifact(backoffice_branch[:revision], deploy_id) unless artifact_exists?('prima-artifacts', "backoffice/#{backoffice_branch[:revision]}-#{deploy_id}.zip")
|
175
181
|
|
176
182
|
wait_for_stack_ready(stack_name_db) unless stack_ready?(stack_name_db)
|
@@ -254,6 +260,29 @@ class Release
|
|
254
260
|
create_stack(stack_name_urania, stack_body, parameters, tags)
|
255
261
|
end
|
256
262
|
|
263
|
+
stack_name_ermes = "ecs-task-ermes-qa-#{deploy_id}"
|
264
|
+
git_checkout_version('ermes', ermes_branch[:revision])
|
265
|
+
stack_body = IO.read('projects/ermes/deploy/task.json')
|
266
|
+
parameters = [
|
267
|
+
{
|
268
|
+
parameter_key: "Environment",
|
269
|
+
parameter_value: "qa"
|
270
|
+
},
|
271
|
+
{
|
272
|
+
parameter_key: "ReleaseVersion",
|
273
|
+
parameter_value: ermes_branch[:revision]
|
274
|
+
},
|
275
|
+
{
|
276
|
+
parameter_key: "ECSClusterName",
|
277
|
+
parameter_value: @ecs_cluster_name
|
278
|
+
}
|
279
|
+
]
|
280
|
+
if stack_exists?(stack_name_ermes)
|
281
|
+
update_stack(stack_name_ermes, stack_body, parameters) if @ermes_built
|
282
|
+
else
|
283
|
+
create_stack(stack_name_ermes, stack_body, parameters, tags)
|
284
|
+
end
|
285
|
+
|
257
286
|
git_checkout_version('backoffice', backoffice_branch[:revision])
|
258
287
|
stack_name_backoffice = "ecs-task-backoffice-qa-#{deploy_id}"
|
259
288
|
stack_body = IO.read('projects/backoffice/deploy/task.json')
|
@@ -285,11 +314,13 @@ class Release
|
|
285
314
|
wait_for_stack_ready(stack_name_consumer) unless stack_ready?(stack_name_consumer)
|
286
315
|
wait_for_stack_ready(stack_name_urania) unless stack_ready?(stack_name_urania)
|
287
316
|
wait_for_stack_ready(stack_name_backoffice) unless stack_ready?(stack_name_backoffice)
|
317
|
+
wait_for_stack_ready(stack_name_ermes) unless stack_ready?(stack_name_ermes)
|
288
318
|
|
289
319
|
update_service_defaults(stack_name_web)
|
290
320
|
update_service_defaults(stack_name_consumer)
|
291
321
|
update_service_defaults(stack_name_urania)
|
292
322
|
update_service_defaults(stack_name_backoffice)
|
323
|
+
update_service_defaults(stack_name_ermes)
|
293
324
|
|
294
325
|
stack_name_route53 = "ecs-route53-qa-#{deploy_id}"
|
295
326
|
stack_body = IO.read('cloudformation/stacks/route53/qa.json')
|
@@ -382,6 +413,8 @@ class Release
|
|
382
413
|
logical_resource_id = 'ECSServiceUrania'
|
383
414
|
when stack_name.include?('backoffice')
|
384
415
|
logical_resource_id = 'ECSServiceBackoffice'
|
416
|
+
when stack_name.include?('ermes')
|
417
|
+
logical_resource_id = 'ECSServiceErmes'
|
385
418
|
else
|
386
419
|
raise "Service name non gestito per lo stack #{stack_name}"
|
387
420
|
end
|
@@ -431,6 +464,38 @@ class Release
|
|
431
464
|
Dir.chdir '../../'
|
432
465
|
end
|
433
466
|
|
467
|
+
def create_ermes_artifact(revision)
|
468
|
+
@ermes_built = true
|
469
|
+
output "Preparo l'artifact .zip\n".yellow
|
470
|
+
|
471
|
+
git_checkout_version('ermes', revision)
|
472
|
+
|
473
|
+
Dir.chdir 'projects/ermes'
|
474
|
+
|
475
|
+
[
|
476
|
+
"docker run -v $PWD:/code -w /code -e MIX_ENV=qa prima/ermes:0.0.4 \
|
477
|
+
'mix local.hex --force && mix hex.info && \
|
478
|
+
mix deps.get && mix compile && mix deps.compile && \
|
479
|
+
mix release.clean --implode --no-confirm && mix release'",
|
480
|
+
"sudo chown -R `whoami` ."
|
481
|
+
].each do |cmd|
|
482
|
+
output "Eseguo #{cmd}".yellow
|
483
|
+
res = %x[ #{cmd} ]
|
484
|
+
if $?.exitstatus != 0
|
485
|
+
color = 'red'
|
486
|
+
else
|
487
|
+
color = 'green'
|
488
|
+
end
|
489
|
+
output res.send color
|
490
|
+
stop_if (color == 'red'), "Errore durante la build dell'artifact".red
|
491
|
+
end
|
492
|
+
|
493
|
+
artifact_path = Dir.glob("rel/ermes/releases/*/ermes.tar.gz").first
|
494
|
+
upload_artifact(artifact_path, "microservices/ermes/ermes_#{revision}.tar.gz")
|
495
|
+
|
496
|
+
Dir.chdir '../../'
|
497
|
+
end
|
498
|
+
|
434
499
|
def create_backoffice_artifact(revision, deploy_id)
|
435
500
|
@backoffice_built = true
|
436
501
|
output "Preparo l'artifact .zip\n".yellow
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: prima-twig
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.4.
|
4
|
+
version: 0.4.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Matteo Giachino
|
@@ -11,7 +11,7 @@ authors:
|
|
11
11
|
autorequire:
|
12
12
|
bindir: bin
|
13
13
|
cert_chain: []
|
14
|
-
date: 2016-
|
14
|
+
date: 2016-06-07 00:00:00.000000000 Z
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
17
17
|
name: twig
|