Skip to content

Commit 319d802

Browse files
committed
Adaptado tarefa de deploy para sandbox
1 parent fb02ec6 commit 319d802

File tree

2 files changed

+27
-7
lines changed

2 files changed

+27
-7
lines changed

Readme.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,3 +13,15 @@ Exemplo de arquivo 'config/aws_deploy.yml'
1313
load_balancer_name: "Fundos-Sandbox"
1414
path: "/srv/fundos/src"
1515
rds_instance_identifier: "fundos"
16+
17+
Exemplo de uso:
18+
---------------
19+
20+
Sandbox:
21+
rake aws_deploy:sandbox generate_launchconfig=on
22+
generate_launchconfig=on vai gerar um launch config novo para fazer o deploy. (apenas sandbox)
23+
24+
Production:
25+
rake aws_deploy:production
26+
Sempre gera um novo lauchconfig.
27+

lib/tasks/aws_deploy.rake

Lines changed: 15 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ namespace :aws_deploy do
102102
output = `as-describe-auto-scaling-groups #{AwsDeploy.configuration.autoscaling_name} --show-xml`
103103
xml = Nokogiri::XML.parse(output)
104104
ids = xml.search("AutoScalingGroups Instances member InstanceId").map(&:text)
105-
raise "Nenhuma instância emcontrada no auto-scaling-group" if ids.empty?
105+
aws_inform "Nenhuma instância encontrada no auto-scaling-group" if ids.empty?
106106
ids
107107
end
108108
def aws_kill_instance(id)
@@ -132,6 +132,9 @@ namespace :aws_deploy do
132132
aws_inform "Nova instância (#{new_instance_id}) está InService no elastic-load-balancer!"
133133
end
134134
def aws_reactivate_autoscaling(min_size, max_size, desired_capacity)
135+
min_size = 1 if min_size.to_i <= 0
136+
max_size = min_size if max_size.to_i < min_size
137+
135138
aws_inform "'Re-ativando' auto-scaling..."
136139
aws_run "as-update-auto-scaling-group #{AwsDeploy.configuration.autoscaling_name} --min-size #{min_size} --max-size #{max_size} --desired-capacity #{desired_capacity}"
137140
end
@@ -209,7 +212,10 @@ namespace :aws_deploy do
209212

210213
aws_check_new_migrations(credentials, AWS_CONFIG['path']) if args.speed == 'fast'
211214

212-
# aws_generate_launchconfig(get_current_branch)
215+
puts ENV
216+
if ENV['generate_lauchconfig'] == 'on'
217+
aws_generate_launchconfig(get_current_branch)
218+
end
213219

214220
launchconfig = aws_get_last_launchconfig
215221

@@ -241,7 +247,7 @@ namespace :aws_deploy do
241247
# pegar ids de todas as instâncias atuais no auto-scaling-group
242248
instance_ids = aws_get_current_instances_ids
243249

244-
# matar primaira máquina existente
250+
# matar primeira máquina existente
245251
aws_kill_instance(instance_ids.first) unless instance_ids.empty?
246252

247253
# esperar uma nova máquina levantar e estar InService no elastic-load-balancer
@@ -281,13 +287,15 @@ namespace :aws_deploy do
281287

282288
credentials = AwsDeploy::Credentials.new
283289

284-
aws_check_current_branch('deploy')
290+
aws_check_current_branch('master')
285291

286292
aws_check_new_migrations(credentials, AWS_CONFIG['path']) if args.speed == 'fast'
287293

288-
aws_generate_launchconfig('deploy')
294+
aws_generate_launchconfig('master')
295+
296+
launchconfig = aws_get_last_launchconfig
297+
aws_inform ("Confira o lauchconfig que será usado: [#{launchconfig}]")
289298

290-
launchconfig = aws_ask('Digite o nome do launchconfig gerado (e dê enter)')
291299

292300
old_autoscaling_min_size, old_autoscaling_max_size, old_autoscaling_desired_capacity = aws_get_old_autoscaling_settings
293301

@@ -315,7 +323,7 @@ namespace :aws_deploy do
315323
# configurar auto-scaling-group para usar novo launchconfig
316324
aws_update_autoscalint_to_use_new_launchconfig(launchconfig)
317325

318-
aws_clear_cache(credentials) # FIXME
326+
# aws_clear_cache(credentials) # FIXME
319327

320328
# pegar ids de todas as instâncias atuais no auto-scaling-group
321329
instance_ids = aws_get_current_instances_ids

0 commit comments

Comments
 (0)