prima-twig 0.55.3 → 0.56.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/bin/twig-feature +266 -171
  3. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e819af641fc656a27e916252f705857984837074d62dcc271bb318a6448ea5e3
4
- data.tar.gz: 413bb909830f92a23b8a38718150b48b00b011de4a9d931874d0d9315753d0a9
3
+ metadata.gz: d91cd82652d13109a795d631b86f83b54321ca1d84d7fcaced87feea19814bcc
4
+ data.tar.gz: fc87c205e48ac251243512ce0dc49edff923e01b0accea294785ebfa7260bbd6
5
5
  SHA512:
6
- metadata.gz: b6df5ed48650833291e668d589155f0d5e0256a70fe168640a0e3d6c5561cee0c42471d44e11f4f95b7c5039c0d58b652a1e383474c6ccc18c291015df7285cd
7
- data.tar.gz: def053b1464a10140de7a3e9f61b09d0a541f7a720922a83175deb7def9dd5e692ea633cad716655d58291f2ab4c6cf7f5fd7f1be38eee464f94887de3c243c8
6
+ metadata.gz: 377b5b905f79bfa1f334bc3b96fdd020ac603bd3b41321252c1bb101d5eb841600f620c445cf900fab3dacb513bbaea1c5fca735e0976e1ecc31e1049749acbb
7
+ data.tar.gz: eb2f05fe4b7cc4f28783ca59213511d0cf753e594c8e4156c134f9acb0415db52e587f3dcfafd43e2f249d614356d892fff950a1d69c59e14450b90b45b75274
data/bin/twig-feature CHANGED
@@ -58,7 +58,8 @@ class Release
58
58
  'leftorium' => {},
59
59
  'pyxis-npm' => {},
60
60
  'starsky' => {},
61
- 'hutch' => {}
61
+ 'hutch' => {},
62
+ 'maia' => {}
62
63
  }
63
64
  @base_stack_name_alb = 'ecs-alb-http-public-qa-'
64
65
  @base_stack_name_alb_ws = 'ecs-alb-ws-public-qa-'
@@ -439,13 +440,13 @@ class Release
439
440
  end
440
441
 
441
442
  def get_default_branch_name(projects)
442
- if !projects['prima'][:default_branch]
443
- return projects['prima'][:name]
444
- elsif ![nil, 'master'].include? projects['crash'][:name]
445
- return projects['crash'][:name]
443
+ if !projects['prima']['default_branch']
444
+ return projects['prima']['name']
445
+ elsif ![nil, 'master'].include? projects['crash']['name']
446
+ return projects['crash']['name']
446
447
  else
447
448
  projects.each_key do |project_key|
448
- return projects[project_key][:name] if projects[project_key][:name] != 'master'
449
+ return projects[project_key]['name'] if projects[project_key]['name'] != 'master'
449
450
  end
450
451
  end
451
452
  end
@@ -488,16 +489,9 @@ class Release
488
489
  `git checkout -b #{branch_name}`
489
490
  end
490
491
 
491
- branches = ''
492
492
  @git_branch = branch_name
493
493
 
494
- @projects.each_key do |project_key|
495
- if @projects[project_key][:revision]
496
- branches += "#{project_key}:#{@projects[project_key][:name]}:#{@projects[project_key][:revision]}:#{@projects[project_key][:default_branch]}\n"
497
- end
498
- end
499
-
500
- File.open('branch_names', 'w') { |file| file.write(branches) }
494
+ File.open('branch_names', 'w') { |file| file.write(JSON.generate(@projects)) }
501
495
 
502
496
  `git add projects && \
503
497
  git add branch_names && \
@@ -524,9 +518,9 @@ class Release
524
518
  end
525
519
 
526
520
  # così recupero le informazioni sul branch, poi vado a scrivere il file branch_names con una sola riga
527
- branch = "#{project}:#{project_definition[:name]}:#{project_definition[:revision]}:#{project_definition[:default_branch]}"
521
+ branch = {'project' => { 'name' => project_definition[:name], 'revision' => project_definition[:revision], 'default_branch' => project_definition[:default_branch]}}
528
522
 
529
- File.open('branch_names', 'w') { |file| file.write(branch) }
523
+ File.open('branch_names', 'w') { |file| file.write(JSON.generate(branch)) }
530
524
 
531
525
  `git add projects && \
532
526
  git add branch_names && \
@@ -559,23 +553,19 @@ class Release
559
553
  # aggiornare il commit (revision a cui fa riferimento)
560
554
 
561
555
  # leggo il file branch_names / recupero i nomi dei branch / riscrivo tutto
556
+ projects = ''
562
557
  File.open('branch_names', 'r') do |file|
563
558
  file.each_line do |line|
564
- project = line.split(':')
565
- @projects[project[0]] = select_branch_to_deploy(project[0], project[1])
566
- @projects[project[0]][:default_branch] = project[3]
559
+ projects = JSON.parse(line)
567
560
  end
568
561
  end
569
562
 
570
- branches = ''
571
-
572
- @projects.each_key do |project_key|
573
- if @projects[project_key][:revision]
574
- branches += "#{project_key}:#{@projects[project_key][:name]}:#{@projects[project_key][:revision]}:#{@projects[project_key][:default_branch]}"
575
- end
563
+ projects.each do |key, project|
564
+ @projects[key] = select_branch_to_deploy(key, project['name'])
565
+ @projects[key]['default_branch'] = project['default_branch']
576
566
  end
577
567
 
578
- File.open('branch_names', 'w') { |file| file.write(branches) }
568
+ File.open('branch_names', 'w') { |file| file.write(JSON.generate(@projects)) }
579
569
 
580
570
  if `git log -1` =~ /minimal_/
581
571
  `git commit -am 'minimal_update'`
@@ -671,16 +661,18 @@ class Release
671
661
  end
672
662
 
673
663
  def qainit_read_config!(action)
664
+ projects = ''
665
+
674
666
  File.open('branch_names', 'r') do |file|
675
667
  file.each_line do |line|
676
- project = line.gsub("\n", '').split(':')
677
- if project[3] == 'true'
678
- @projects[project[0]] = {:name=> project[1], :revision=> project[2], :default_branch=> true}
679
- elsif project[3] == 'false'
680
- @projects[project[0]] = {:name=> project[1], :revision=> project[2], :default_branch=> false}
681
- end
668
+ projects = JSON.parse(line)
682
669
  end
683
670
  end
671
+
672
+ projects.each do |key, project|
673
+ @projects[key] = project
674
+ end
675
+
684
676
  get_s3_config_files
685
677
  @qainit = true
686
678
  case action
@@ -721,9 +713,9 @@ class Release
721
713
  @ami_id = get_ami_id("ecs-fleet-allinone-staging")
722
714
  project = ''
723
715
  @projects.each_key do |project_key|
724
- if @projects[project_key][:revision]
716
+ if @projects[project_key]['revision']
725
717
  project = project_key
726
- git_checkout_version(project_key, @projects[project_key][:revision])
718
+ git_checkout_version(project_key, @projects[project_key]['revision'])
727
719
  end
728
720
  end
729
721
  deploy_id = get_deploy_id
@@ -738,7 +730,7 @@ class Release
738
730
  },
739
731
  {
740
732
  key: project,
741
- value: @projects[project][:name]
733
+ value: @projects[project]['name']
742
734
  },
743
735
  {
744
736
  key: "hostname_pattern_priority",
@@ -771,8 +763,8 @@ class Release
771
763
  create_asg_stack(asg_stack_name, tags) unless stack_exists?(asg_stack_name)
772
764
 
773
765
  deploy_id = get_deploy_id
774
- create_pyxis_artifact(@projects["pyxis-npm"][:revision], deploy_id)
775
- create_prima_artifact(@projects["prima"][:revision], @projects["prima"][:name], deploy_id, true) unless artifact_exists?('prima-artifacts-encrypted', "prima/#{@projects["prima"][:revision]}.tar.gz")
766
+ create_pyxis_artifact(@projects["pyxis-npm"]['revision'], deploy_id)
767
+ create_prima_artifact(@projects["prima"]['revision'], @projects["prima"]['name'], deploy_id, true) unless artifact_exists?('prima-artifacts-encrypted', "prima/#{@projects["prima"]['revision']}.tar.gz")
776
768
 
777
769
  wait_for_stack_ready(stack_name_alb) unless stack_ready?(stack_name_alb)
778
770
  wait_for_stack_ready(stack_name_alb_ws) unless stack_ready?(stack_name_alb_ws)
@@ -798,7 +790,7 @@ class Release
798
790
  wait_for_stack_ready(stack_name_route53) unless stack_ready?(stack_name_route53)
799
791
 
800
792
  stack_name_web = "ecs-task-web-qa-#{deploy_id}"
801
- git_checkout_version('prima', @projects["prima"][:revision])
793
+ git_checkout_version('prima', @projects["prima"]['revision'])
802
794
  stack_body = IO.read('projects/prima/app/cloudformation/tasks/web.yml')
803
795
  parameters = [
804
796
  {
@@ -807,7 +799,7 @@ class Release
807
799
  },
808
800
  {
809
801
  parameter_key: "ReleaseVersion",
810
- parameter_value: "#{@projects["prima"][:revision]}"
802
+ parameter_value: "#{@projects["prima"]['revision']}"
811
803
  },
812
804
  {
813
805
  parameter_key: "TaskDesiredCount",
@@ -864,7 +856,7 @@ class Release
864
856
  ]
865
857
  if stack_exists?(stack_name_web)
866
858
  cur_version = get_currently_deployed_version(stack_name_web)
867
- update_stack(stack_name_web, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["prima"][:revision])
859
+ update_stack(stack_name_web, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["prima"]['revision'])
868
860
  else
869
861
  create_stack(stack_name_web, stack_body, parameters, tags, @cf_role)
870
862
  end
@@ -891,8 +883,8 @@ class Release
891
883
  stack_name_alb_ws = 'ecs-alb-ws-public-qa-' + deploy_id[0..5]
892
884
  unless @qainit
893
885
  @projects.each_key do |project_key|
894
- if @projects[project_key][:revision]
895
- git_checkout_version(project_key, @projects[project_key][:revision])
886
+ if @projects[project_key]['revision']
887
+ git_checkout_version(project_key, @projects[project_key]['revision'])
896
888
  end
897
889
  end
898
890
  end
@@ -912,11 +904,11 @@ class Release
912
904
  @projects.each do |key, value|
913
905
  case key.to_s
914
906
  when 'crash'
915
- tags << { key: 'crash', value: @projects['crash'][:name] } if deploy_crash?
916
- when 'starsky', 'hutch'
917
- tags << { key: key.to_s, value: @projects[key.to_s][:name] } if deploy_starsky_hutch?
907
+ tags << { key: 'crash', value: @projects['crash']['name'] } if deploy_crash?
908
+ when 'starsky', 'hutch', 'maia'
909
+ tags << { key: key.to_s, value: @projects[key.to_s]['name'] } if deploy_starsky_hutch_maia?
918
910
  else
919
- tags << { key: key, value: value[:name] }
911
+ tags << { key: key, value: value['name'] }
920
912
  end
921
913
  end
922
914
 
@@ -957,30 +949,31 @@ class Release
957
949
 
958
950
  output "check pyxis \n".yellow
959
951
 
960
- create_pyxis_artifact(@projects["pyxis-npm"][:revision], deploy_id) unless @projects["pyxis-npm"].nil? # deve essere creato prima di quello di prima, per avere la versione
961
- create_prima_artifact(@projects["prima"][:revision], @projects["prima"][:name], deploy_id) unless artifact_exists?('prima-artifacts-encrypted', "prima/#{@projects["prima"][:revision]}.tar.gz")
952
+ create_pyxis_artifact(@projects["pyxis-npm"]['revision'], deploy_id) unless @projects["pyxis-npm"].nil? # deve essere creato prima di quello di prima, per avere la versione
953
+ create_prima_artifact(@projects["prima"]['revision'], @projects["prima"]['name'], deploy_id) unless artifact_exists?('prima-artifacts-encrypted', "prima/#{@projects["prima"]['revision']}.tar.gz")
962
954
  # l'artefatto di prima viene creato sempre (puntamenti all'ambiente compilati nel js) e richiede molto più di 4 minuti
963
955
  wait_for_stack_ready(stack_name_db) unless stack_ready?(stack_name_db) # dovrebbe essere istantaneo
964
956
  db_task = ''
965
957
  db_task = import_dbs(ec2_ip_address(asg_stack_name)) unless stack_exists?("ecs-route53-qa-#{deploy_id}") # import asincrono dei dati
966
958
 
967
- create_crash_artifact(@projects['crash'][:revision], deploy_id) unless !deploy_crash? || artifact_exists?('prima-artifacts-encrypted', "microservices/crash/#{@projects['crash'][:revision]}-qa.tar.gz")
968
- create_urania_artifact(@projects["urania"][:revision]) unless artifact_exists?('prima-artifacts-encrypted', "microservices/urania/#{@projects["urania"][:revision]}-qa.tar.gz")
969
- create_roger_artifact(@projects["roger"][:revision]) unless artifact_exists?('prima-artifacts-encrypted', "microservices/roger/#{@projects["roger"][:revision]}-qa.tar.gz")
970
- create_ermes_artifact(@projects["ermes"][:revision]) unless artifact_exists?('prima-artifacts-encrypted', "microservices/ermes/#{@projects["ermes"][:revision]}-qa.tar.gz")
971
- create_bburago_artifact(@projects["bburago"][:revision]) unless artifact_exists?('prima-artifacts-encrypted', "microservices/bburago/#{@projects["bburago"][:revision]}-qa.tar.gz")
972
- create_hal9000_artifact(@projects["hal9000"][:revision]) unless artifact_exists?('prima-artifacts-encrypted', "microservices/hal9000/#{@projects["hal9000"][:revision]}-qa.tar.gz")
973
- create_rachele_artifact(@projects["rachele"][:revision]) unless artifact_exists?('prima-artifacts-encrypted', "microservices/rachele/#{@projects["rachele"][:revision]}-qa.tar.gz")
974
- create_fidaty_artifact(@projects["fidaty"][:revision]) unless artifact_exists?('prima-artifacts-encrypted', "microservices/fidaty/#{@projects["fidaty"][:revision]}-qa.tar.gz")
975
- create_peano_artifact(@projects["peano"][:revision]) unless artifact_exists?('prima-artifacts-encrypted', "microservices/peano/#{@projects["peano"][:revision]}-qa.tar.gz")
976
- create_rogoreport_artifact(@projects["rogoreport"][:revision]) unless artifact_exists?('prima-artifacts-encrypted', "microservices/rogoreport/rogoreport-#{@projects["rogoreport"][:revision]}-qa.tar.gz")
977
- create_assange_artifact(@projects["assange"][:revision]) unless artifact_exists?('prima-artifacts-encrypted', "microservices/assange/#{@projects["assange"][:revision]}-qa.tar.gz")
978
- create_borat_artifact(@projects["borat"][:revision]) unless artifact_exists?('prima-artifacts-encrypted', "microservices/borat/#{@projects["borat"][:revision]}-qa.tar.gz")
979
- create_activia_artifact(@projects["activia"][:revision]) unless artifact_exists?('prima-artifacts-encrypted', "microservices/activia/#{@projects["activia"][:revision]}-qa.tar.gz")
980
- create_leftorium_artifact(@projects["leftorium"][:revision]) unless artifact_exists?('prima-artifacts-encrypted', "microservices/leftorium/#{@projects["leftorium"][:revision]}-qa.tar.gz")
981
- create_skynet_artifact(@projects["skynet"][:revision]) unless artifact_exists?('prima-artifacts-encrypted', "microservices/skynet/#{@projects["skynet"][:revision]}-qa.tar.gz")
982
- create_starsky_artifact(@projects["starsky"][:revision]) unless !deploy_starsky_hutch? || artifact_exists?('prima-artifacts-encrypted', "microservices/starsky/#{@projects["starsky"][:revision]}-qa.tar.gz")
983
- create_hutch_artifact(@projects["hutch"][:revision]) unless !deploy_starsky_hutch? || artifact_exists?('prima-artifacts-encrypted', "microservices/hutch/#{@projects["hutch"][:revision]}-qa.tar.gz")
959
+ create_crash_artifact(@projects['crash']['revision'], deploy_id) unless !deploy_crash? || artifact_exists?('prima-artifacts-encrypted', "microservices/crash/#{@projects['crash']['revision']}-qa.tar.gz")
960
+ create_urania_artifact(@projects["urania"]['revision']) unless artifact_exists?('prima-artifacts-encrypted', "microservices/urania/#{@projects["urania"]['revision']}-qa.tar.gz")
961
+ create_roger_artifact(@projects["roger"]['revision']) unless artifact_exists?('prima-artifacts-encrypted', "microservices/roger/#{@projects["roger"]['revision']}-qa.tar.gz")
962
+ create_ermes_artifact(@projects["ermes"]['revision']) unless artifact_exists?('prima-artifacts-encrypted', "microservices/ermes/#{@projects["ermes"]['revision']}-qa.tar.gz")
963
+ create_bburago_artifact(@projects["bburago"]['revision']) unless artifact_exists?('prima-artifacts-encrypted', "microservices/bburago/#{@projects["bburago"]['revision']}-qa.tar.gz")
964
+ create_hal9000_artifact(@projects["hal9000"]['revision']) unless artifact_exists?('prima-artifacts-encrypted', "microservices/hal9000/#{@projects["hal9000"]['revision']}-qa.tar.gz")
965
+ create_rachele_artifact(@projects["rachele"]['revision']) unless artifact_exists?('prima-artifacts-encrypted', "microservices/rachele/#{@projects["rachele"]['revision']}-qa.tar.gz")
966
+ create_fidaty_artifact(@projects["fidaty"]['revision']) unless artifact_exists?('prima-artifacts-encrypted', "microservices/fidaty/#{@projects["fidaty"]['revision']}-qa.tar.gz")
967
+ create_peano_artifact(@projects["peano"]['revision']) unless artifact_exists?('prima-artifacts-encrypted', "microservices/peano/#{@projects["peano"]['revision']}-qa.tar.gz")
968
+ create_rogoreport_artifact(@projects["rogoreport"]['revision']) unless artifact_exists?('prima-artifacts-encrypted', "microservices/rogoreport/rogoreport-#{@projects["rogoreport"]['revision']}-qa.tar.gz")
969
+ create_assange_artifact(@projects["assange"]['revision']) unless artifact_exists?('prima-artifacts-encrypted', "microservices/assange/#{@projects["assange"]['revision']}-qa.tar.gz")
970
+ create_borat_artifact(@projects["borat"]['revision']) unless artifact_exists?('prima-artifacts-encrypted', "microservices/borat/#{@projects["borat"]['revision']}-qa.tar.gz")
971
+ create_activia_artifact(@projects["activia"]['revision']) unless artifact_exists?('prima-artifacts-encrypted', "microservices/activia/#{@projects["activia"]['revision']}-qa.tar.gz")
972
+ create_leftorium_artifact(@projects["leftorium"]['revision']) unless artifact_exists?('prima-artifacts-encrypted', "microservices/leftorium/#{@projects["leftorium"]['revision']}-qa.tar.gz")
973
+ create_skynet_artifact(@projects["skynet"]['revision']) unless artifact_exists?('prima-artifacts-encrypted', "microservices/skynet/#{@projects["skynet"]['revision']}-qa.tar.gz")
974
+ create_starsky_artifact(@projects["starsky"]['revision']) unless !deploy_starsky_hutch_maia? || artifact_exists?('prima-artifacts-encrypted', "microservices/starsky/#{@projects["starsky"]['revision']}-qa.tar.gz")
975
+ create_hutch_artifact(@projects["hutch"]['revision']) unless !deploy_starsky_hutch_maia? || artifact_exists?('prima-artifacts-encrypted', "microservices/hutch/#{@projects["hutch"]['revision']}-qa.tar.gz")
976
+ create_maia_artifact(@projects["maia"]['revision']) unless !deploy_starsky_hutch_maia? || artifact_exists?('prima-artifacts-encrypted', "microservices/maia/#{@projects["maia"]['revision']}-qa.tar.gz")
984
977
 
985
978
  wait_for_db_import(db_task) unless stack_exists?("ecs-route53-qa-#{deploy_id}") # dovrebbe essere istantaneo
986
979
 
@@ -1067,6 +1060,10 @@ class Release
1067
1060
  {
1068
1061
  parameter_key: 'HutchElbHostname',
1069
1062
  parameter_value: get_alb_host(stack_name_alb)
1063
+ },
1064
+ {
1065
+ parameter_key: 'MaiaElbHostname',
1066
+ parameter_value: get_alb_host(stack_name_alb)
1070
1067
  }
1071
1068
  ]
1072
1069
 
@@ -1074,7 +1071,7 @@ class Release
1074
1071
  wait_for_stack_ready(stack_name_route53) unless stack_ready?(stack_name_route53)
1075
1072
 
1076
1073
  stack_name_skynet = "ecs-task-skynet-qa-#{deploy_id}"
1077
- git_checkout_version('skynet', @projects["skynet"][:revision])
1074
+ git_checkout_version('skynet', @projects["skynet"]['revision'])
1078
1075
  stack_body = File.read('projects/skynet/deploy/task.yml')
1079
1076
  parameters = [
1080
1077
  {
@@ -1083,7 +1080,7 @@ class Release
1083
1080
  },
1084
1081
  {
1085
1082
  parameter_key: "ReleaseVersion",
1086
- parameter_value: @projects["skynet"][:revision]
1083
+ parameter_value: @projects["skynet"]['revision']
1087
1084
  },
1088
1085
  {
1089
1086
  parameter_key: "TaskDesiredCount",
@@ -1104,13 +1101,13 @@ class Release
1104
1101
  ]
1105
1102
  if stack_exists?(stack_name_skynet)
1106
1103
  cur_version = get_currently_deployed_version(stack_name_skynet)
1107
- update_stack(stack_name_skynet, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["skynet"][:revision])
1104
+ update_stack(stack_name_skynet, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["skynet"]['revision'])
1108
1105
  else
1109
1106
  create_stack(stack_name_skynet, stack_body, parameters, tags, @cf_role)
1110
1107
  end
1111
1108
 
1112
1109
  stack_name_urania = "ecs-task-urania-qa-#{deploy_id}"
1113
- git_checkout_version('urania', @projects["urania"][:revision])
1110
+ git_checkout_version('urania', @projects["urania"]['revision'])
1114
1111
  stack_body = File.read('projects/urania/deploy/task.yml')
1115
1112
  parameters = [
1116
1113
  {
@@ -1119,7 +1116,7 @@ class Release
1119
1116
  },
1120
1117
  {
1121
1118
  parameter_key: "ReleaseVersion",
1122
- parameter_value: @projects["urania"][:revision]
1119
+ parameter_value: @projects["urania"]['revision']
1123
1120
  },
1124
1121
  {
1125
1122
  parameter_key: "TaskDesiredCount",
@@ -1140,13 +1137,13 @@ class Release
1140
1137
  ]
1141
1138
  if stack_exists?(stack_name_urania)
1142
1139
  cur_version = get_currently_deployed_version(stack_name_urania)
1143
- update_stack(stack_name_urania, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["urania"][:revision])
1140
+ update_stack(stack_name_urania, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["urania"]['revision'])
1144
1141
  else
1145
1142
  create_stack(stack_name_urania, stack_body, parameters, tags, @cf_role)
1146
1143
  end
1147
1144
 
1148
1145
  stack_name_ermes = "ecs-task-ermes-qa-#{deploy_id}"
1149
- git_checkout_version('ermes', @projects["ermes"][:revision])
1146
+ git_checkout_version('ermes', @projects["ermes"]['revision'])
1150
1147
  stack_body = File.read('projects/ermes/deploy/task.yml')
1151
1148
  parameters = [
1152
1149
  {
@@ -1155,7 +1152,7 @@ class Release
1155
1152
  },
1156
1153
  {
1157
1154
  parameter_key: "ReleaseVersion",
1158
- parameter_value: "#{@projects['ermes'][:revision]}"
1155
+ parameter_value: "#{@projects['ermes']['revision']}"
1159
1156
  },
1160
1157
  {
1161
1158
  parameter_key: "TaskDesiredCount",
@@ -1184,13 +1181,13 @@ class Release
1184
1181
  ]
1185
1182
  if stack_exists?(stack_name_ermes)
1186
1183
  cur_version = get_currently_deployed_version(stack_name_ermes)
1187
- update_stack(stack_name_ermes, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["ermes"][:revision])
1184
+ update_stack(stack_name_ermes, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["ermes"]['revision'])
1188
1185
  else
1189
1186
  create_stack(stack_name_ermes, stack_body, parameters, tags, @cf_role)
1190
1187
  end
1191
1188
 
1192
1189
  stack_name_bburago = "ecs-task-bburago-qa-#{deploy_id}"
1193
- git_checkout_version('bburago', @projects["bburago"][:revision])
1190
+ git_checkout_version('bburago', @projects["bburago"]['revision'])
1194
1191
  stack_body = File.read('projects/bburago/deploy/task.yml')
1195
1192
  parameters = [
1196
1193
  {
@@ -1199,7 +1196,7 @@ class Release
1199
1196
  },
1200
1197
  {
1201
1198
  parameter_key: "ReleaseVersion",
1202
- parameter_value: @projects["bburago"][:revision]
1199
+ parameter_value: @projects["bburago"]['revision']
1203
1200
  },
1204
1201
  {
1205
1202
  parameter_key: "ECSClusterName",
@@ -1220,13 +1217,13 @@ class Release
1220
1217
  ]
1221
1218
  if stack_exists?(stack_name_bburago)
1222
1219
  cur_version = get_currently_deployed_version(stack_name_bburago)
1223
- update_stack(stack_name_bburago, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["bburago"][:revision])
1220
+ update_stack(stack_name_bburago, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["bburago"]['revision'])
1224
1221
  else
1225
1222
  create_stack(stack_name_bburago, stack_body, parameters, tags, @cf_role)
1226
1223
  end
1227
1224
 
1228
1225
  stack_name_hal9000 = "ecs-task-hal9000-qa-#{deploy_id}"
1229
- git_checkout_version('hal9000', @projects["hal9000"][:revision])
1226
+ git_checkout_version('hal9000', @projects["hal9000"]['revision'])
1230
1227
  stack_body = File.read('projects/hal9000/deploy/task.yml')
1231
1228
  parameters = [
1232
1229
  {
@@ -1235,7 +1232,7 @@ class Release
1235
1232
  },
1236
1233
  {
1237
1234
  parameter_key: "ReleaseVersion",
1238
- parameter_value: @projects["hal9000"][:revision]
1235
+ parameter_value: @projects["hal9000"]['revision']
1239
1236
  },
1240
1237
  {
1241
1238
  parameter_key: "ECSClusterName",
@@ -1256,13 +1253,13 @@ class Release
1256
1253
  ]
1257
1254
  if stack_exists?(stack_name_hal9000)
1258
1255
  cur_version = get_currently_deployed_version(stack_name_hal9000)
1259
- update_stack(stack_name_hal9000, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["hal9000"][:revision])
1256
+ update_stack(stack_name_hal9000, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["hal9000"]['revision'])
1260
1257
  else
1261
1258
  create_stack(stack_name_hal9000, stack_body, parameters, tags, @cf_role)
1262
1259
  end
1263
1260
 
1264
1261
  stack_name_fidaty = "ecs-task-fidaty-qa-#{deploy_id}"
1265
- git_checkout_version('fidaty', @projects["fidaty"][:revision])
1262
+ git_checkout_version('fidaty', @projects["fidaty"]['revision'])
1266
1263
  stack_body = File.read('projects/fidaty/deploy/task.yml')
1267
1264
  parameters = [
1268
1265
  {
@@ -1271,7 +1268,7 @@ class Release
1271
1268
  },
1272
1269
  {
1273
1270
  parameter_key: "ReleaseVersion",
1274
- parameter_value: "#{@projects["fidaty"][:revision]}"
1271
+ parameter_value: "#{@projects["fidaty"]['revision']}"
1275
1272
  },
1276
1273
  {
1277
1274
  parameter_key: "ECSClusterName",
@@ -1296,13 +1293,13 @@ class Release
1296
1293
  ]
1297
1294
  if stack_exists?(stack_name_fidaty)
1298
1295
  cur_version = get_currently_deployed_version(stack_name_fidaty)
1299
- update_stack(stack_name_fidaty, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["fidaty"][:revision])
1296
+ update_stack(stack_name_fidaty, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["fidaty"]['revision'])
1300
1297
  else
1301
1298
  create_stack(stack_name_fidaty, stack_body, parameters, tags, @cf_role)
1302
1299
  end
1303
1300
 
1304
1301
  stack_name_peano = "ecs-task-peano-qa-#{deploy_id}"
1305
- git_checkout_version('peano', @projects["peano"][:revision])
1302
+ git_checkout_version('peano', @projects["peano"]['revision'])
1306
1303
  stack_body = File.read('projects/peano/deploy/task.yml')
1307
1304
  parameters = [
1308
1305
  {
@@ -1311,7 +1308,7 @@ class Release
1311
1308
  },
1312
1309
  {
1313
1310
  parameter_key: "ReleaseVersion",
1314
- parameter_value: "#{@projects['peano'][:revision]}"
1311
+ parameter_value: "#{@projects['peano']['revision']}"
1315
1312
  },
1316
1313
  {
1317
1314
  parameter_key: "ECSClusterName",
@@ -1340,13 +1337,13 @@ class Release
1340
1337
  ]
1341
1338
  if stack_exists?(stack_name_peano)
1342
1339
  cur_version = get_currently_deployed_version(stack_name_peano)
1343
- update_stack(stack_name_peano, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["peano"][:revision])
1340
+ update_stack(stack_name_peano, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["peano"]['revision'])
1344
1341
  else
1345
1342
  create_stack(stack_name_peano, stack_body, parameters, tags, @cf_role)
1346
1343
  end
1347
1344
 
1348
1345
  stack_name_rogoreport = "ecs-task-rogoreport-qa-#{deploy_id}"
1349
- git_checkout_version('rogoreport', @projects["rogoreport"][:revision])
1346
+ git_checkout_version('rogoreport', @projects["rogoreport"]['revision'])
1350
1347
  stack_body = IO.read('projects/rogoreport/deploy/task.yml')
1351
1348
  parameters = [
1352
1349
  {
@@ -1355,7 +1352,7 @@ class Release
1355
1352
  },
1356
1353
  {
1357
1354
  parameter_key: "ReleaseVersion",
1358
- parameter_value: "#{@projects["rogoreport"][:revision]}"
1355
+ parameter_value: "#{@projects["rogoreport"]['revision']}"
1359
1356
  },
1360
1357
  {
1361
1358
  parameter_key: "ReleaseName",
@@ -1368,13 +1365,13 @@ class Release
1368
1365
  ]
1369
1366
  if stack_exists?(stack_name_rogoreport)
1370
1367
  cur_version = get_currently_deployed_version(stack_name_rogoreport)
1371
- update_stack(stack_name_rogoreport, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["rogoreport"][:revision])
1368
+ update_stack(stack_name_rogoreport, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["rogoreport"]['revision'])
1372
1369
  else
1373
1370
  create_stack(stack_name_rogoreport, stack_body, parameters, tags, @cf_role)
1374
1371
  end
1375
1372
 
1376
1373
  stack_name_assange = "ecs-task-assange-qa-#{deploy_id}"
1377
- git_checkout_version('assange', @projects["assange"][:revision])
1374
+ git_checkout_version('assange', @projects["assange"]['revision'])
1378
1375
  stack_body = IO.read('projects/assange/deploy/task.yml')
1379
1376
  parameters = [
1380
1377
  {
@@ -1383,7 +1380,7 @@ class Release
1383
1380
  },
1384
1381
  {
1385
1382
  parameter_key: "ReleaseVersion",
1386
- parameter_value: "#{@projects["assange"][:revision]}"
1383
+ parameter_value: "#{@projects["assange"]['revision']}"
1387
1384
  },
1388
1385
  {
1389
1386
  parameter_key: "ECSClusterName",
@@ -1420,13 +1417,13 @@ class Release
1420
1417
  ]
1421
1418
  if stack_exists?(stack_name_assange)
1422
1419
  cur_version = get_currently_deployed_version(stack_name_assange)
1423
- update_stack(stack_name_assange, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["assange"][:revision])
1420
+ update_stack(stack_name_assange, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["assange"]['revision'])
1424
1421
  else
1425
1422
  create_stack(stack_name_assange, stack_body, parameters, tags, @cf_role)
1426
1423
  end
1427
1424
 
1428
1425
  stack_name_leftorium = "ecs-task-leftorium-qa-#{deploy_id}"
1429
- git_checkout_version('leftorium', @projects["leftorium"][:revision])
1426
+ git_checkout_version('leftorium', @projects["leftorium"]['revision'])
1430
1427
  stack_body = File.read('projects/leftorium/deploy/task.yml')
1431
1428
  parameters = [
1432
1429
  {
@@ -1435,7 +1432,7 @@ class Release
1435
1432
  },
1436
1433
  {
1437
1434
  parameter_key: "ReleaseVersion",
1438
- parameter_value: "#{@projects["leftorium"][:revision]}"
1435
+ parameter_value: "#{@projects["leftorium"]['revision']}"
1439
1436
  },
1440
1437
  {
1441
1438
  parameter_key: "ECSClusterName",
@@ -1456,13 +1453,13 @@ class Release
1456
1453
  ]
1457
1454
  if stack_exists?(stack_name_leftorium)
1458
1455
  cur_version = get_currently_deployed_version(stack_name_leftorium)
1459
- update_stack(stack_name_leftorium, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["leftorium"][:revision])
1456
+ update_stack(stack_name_leftorium, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["leftorium"]['revision'])
1460
1457
  else
1461
1458
  create_stack(stack_name_leftorium, stack_body, parameters, tags, @cf_role)
1462
1459
  end
1463
1460
 
1464
1461
  stack_name_rachele = "ecs-task-rachele-qa-#{deploy_id}"
1465
- git_checkout_version('rachele', @projects["rachele"][:revision])
1462
+ git_checkout_version('rachele', @projects["rachele"]['revision'])
1466
1463
  stack_body = File.read('projects/rachele/deploy/task.yml')
1467
1464
  parameters = [
1468
1465
  {
@@ -1471,7 +1468,7 @@ class Release
1471
1468
  },
1472
1469
  {
1473
1470
  parameter_key: "ReleaseVersion",
1474
- parameter_value: "#{@projects["rachele"][:revision]}"
1471
+ parameter_value: "#{@projects["rachele"]['revision']}"
1475
1472
  },
1476
1473
  {
1477
1474
  parameter_key: "ECSClusterName",
@@ -1496,13 +1493,13 @@ class Release
1496
1493
  ]
1497
1494
  if stack_exists?(stack_name_rachele)
1498
1495
  cur_version = get_currently_deployed_version(stack_name_rachele)
1499
- update_stack(stack_name_rachele, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["rachele"][:revision])
1496
+ update_stack(stack_name_rachele, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["rachele"]['revision'])
1500
1497
  else
1501
1498
  create_stack(stack_name_rachele, stack_body, parameters, tags, @cf_role)
1502
1499
  end
1503
1500
 
1504
1501
  stack_name_borat = "ecs-task-borat-qa-#{deploy_id}"
1505
- git_checkout_version('borat', @projects["borat"][:revision])
1502
+ git_checkout_version('borat', @projects["borat"]['revision'])
1506
1503
  stack_body = IO.read('projects/borat/deploy/task.yml')
1507
1504
  parameters = [
1508
1505
  {
@@ -1511,7 +1508,7 @@ class Release
1511
1508
  },
1512
1509
  {
1513
1510
  parameter_key: "ReleaseVersion",
1514
- parameter_value: "#{@projects["borat"][:revision]}"
1511
+ parameter_value: "#{@projects["borat"]['revision']}"
1515
1512
  },
1516
1513
  {
1517
1514
  parameter_key: "ECSClusterName",
@@ -1556,13 +1553,13 @@ class Release
1556
1553
  ]
1557
1554
  if stack_exists?(stack_name_borat)
1558
1555
  cur_version = get_currently_deployed_version(stack_name_borat)
1559
- update_stack(stack_name_borat, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["borat"][:revision])
1556
+ update_stack(stack_name_borat, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["borat"]['revision'])
1560
1557
  else
1561
1558
  create_stack(stack_name_borat, stack_body, parameters, tags, @cf_role)
1562
1559
  end
1563
1560
 
1564
1561
  if deploy_crash?
1565
- git_checkout_version('crash', @projects['crash'][:revision])
1562
+ git_checkout_version('crash', @projects['crash']['revision'])
1566
1563
  stack_name_crash = "ecs-task-crash-qa-#{deploy_id}"
1567
1564
  stack_body = IO.read('projects/crash/deploy/task.yml')
1568
1565
  parameters = [
@@ -1572,7 +1569,7 @@ class Release
1572
1569
  },
1573
1570
  {
1574
1571
  parameter_key: 'ReleaseVersion',
1575
- parameter_value: "#{@projects['crash'][:revision]}"
1572
+ parameter_value: "#{@projects['crash']['revision']}"
1576
1573
  },
1577
1574
  {
1578
1575
  parameter_key: 'TaskDesiredCount',
@@ -1613,15 +1610,15 @@ class Release
1613
1610
  ]
1614
1611
  if stack_exists?(stack_name_crash)
1615
1612
  cur_version = get_currently_deployed_version(stack_name_crash)
1616
- update_stack(stack_name_crash, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["crash"][:revision])
1613
+ update_stack(stack_name_crash, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["crash"]['revision'])
1617
1614
  else
1618
1615
  create_stack(stack_name_crash, stack_body, parameters, tags, @cf_role)
1619
1616
  end
1620
1617
  end
1621
1618
 
1622
- if deploy_starsky_hutch?
1619
+ if deploy_starsky_hutch_maia?
1623
1620
  stack_name_starsky = "ecs-task-starsky-qa-#{deploy_id}"
1624
- git_checkout_version('starsky', @projects["starsky"][:revision])
1621
+ git_checkout_version('starsky', @projects["starsky"]['revision'])
1625
1622
  stack_body = IO.read('projects/starsky/deploy/task.yml')
1626
1623
  parameters = [
1627
1624
  {
@@ -1630,7 +1627,7 @@ class Release
1630
1627
  },
1631
1628
  {
1632
1629
  parameter_key: "ReleaseVersion",
1633
- parameter_value: "#{@projects["starsky"][:revision]}"
1630
+ parameter_value: "#{@projects["starsky"]['revision']}"
1634
1631
  },
1635
1632
  {
1636
1633
  parameter_key: "TaskDesiredCount",
@@ -1659,14 +1656,14 @@ class Release
1659
1656
  ]
1660
1657
  if stack_exists?(stack_name_starsky)
1661
1658
  cur_version = get_currently_deployed_version(stack_name_starsky)
1662
- update_stack(stack_name_starsky, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["starsky"][:revision])
1659
+ update_stack(stack_name_starsky, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["starsky"]['revision'])
1663
1660
  else
1664
1661
  create_stack(stack_name_starsky, stack_body, parameters, tags, @cf_role)
1665
1662
  end
1666
1663
  end
1667
1664
 
1668
1665
  stack_name_activia = "ecs-task-activia-qa-#{deploy_id}"
1669
- git_checkout_version('activia', @projects["activia"][:revision])
1666
+ git_checkout_version('activia', @projects["activia"]['revision'])
1670
1667
  stack_body = File.read('projects/activia/deploy/task.yml')
1671
1668
  parameters = [
1672
1669
  {
@@ -1675,7 +1672,7 @@ class Release
1675
1672
  },
1676
1673
  {
1677
1674
  parameter_key: "ReleaseVersion",
1678
- parameter_value: "#{@projects["activia"][:revision]}"
1675
+ parameter_value: "#{@projects["activia"]['revision']}"
1679
1676
  },
1680
1677
  {
1681
1678
  parameter_key: "ECSClusterName",
@@ -1704,7 +1701,7 @@ class Release
1704
1701
  ]
1705
1702
  if stack_exists?(stack_name_activia)
1706
1703
  cur_version = get_currently_deployed_version(stack_name_activia)
1707
- update_stack(stack_name_activia, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["activia"][:revision])
1704
+ update_stack(stack_name_activia, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["activia"]['revision'])
1708
1705
  else
1709
1706
  create_stack(stack_name_activia, stack_body, parameters, tags, @cf_role)
1710
1707
  end
@@ -1720,7 +1717,7 @@ class Release
1720
1717
  wait_for_stack_ready(stack_name_rachele) unless stack_ready?(stack_name_rachele)
1721
1718
 
1722
1719
  stack_name_web = "ecs-task-web-qa-#{deploy_id}"
1723
- git_checkout_version('prima', @projects["prima"][:revision])
1720
+ git_checkout_version('prima', @projects["prima"]['revision'])
1724
1721
  stack_body = IO.read('projects/prima/app/cloudformation/tasks/web.yml')
1725
1722
  parameters = [
1726
1723
  {
@@ -1729,7 +1726,7 @@ class Release
1729
1726
  },
1730
1727
  {
1731
1728
  parameter_key: "ReleaseVersion",
1732
- parameter_value: "#{@projects["prima"][:revision]}"
1729
+ parameter_value: "#{@projects["prima"]['revision']}"
1733
1730
  },
1734
1731
  {
1735
1732
  parameter_key: "TaskDesiredCount",
@@ -1786,13 +1783,13 @@ class Release
1786
1783
  ]
1787
1784
  if stack_exists?(stack_name_web)
1788
1785
  cur_version = get_currently_deployed_version(stack_name_web)
1789
- update_stack(stack_name_web, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["prima"][:revision])
1786
+ update_stack(stack_name_web, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["prima"]['revision'])
1790
1787
  else
1791
1788
  create_stack(stack_name_web, stack_body, parameters, tags, @cf_role)
1792
1789
  end
1793
1790
 
1794
1791
  stack_name_consumer = "ecs-task-consumer-qa-#{deploy_id}"
1795
- git_checkout_version('prima', @projects["prima"][:revision])
1792
+ git_checkout_version('prima', @projects["prima"]['revision'])
1796
1793
  stack_body = IO.read('projects/prima/app/cloudformation/tasks/consumer.yml')
1797
1794
  parameters = [
1798
1795
  {
@@ -1801,7 +1798,7 @@ class Release
1801
1798
  },
1802
1799
  {
1803
1800
  parameter_key: "ReleaseVersion",
1804
- parameter_value: "#{@projects["prima"][:revision]}"
1801
+ parameter_value: "#{@projects["prima"]['revision']}"
1805
1802
  },
1806
1803
  {
1807
1804
  parameter_key: "ECSClusterName",
@@ -1834,13 +1831,13 @@ class Release
1834
1831
  ]
1835
1832
  if stack_exists?(stack_name_consumer)
1836
1833
  cur_version = get_currently_deployed_version(stack_name_consumer)
1837
- update_stack(stack_name_consumer, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["prima"][:revision])
1834
+ update_stack(stack_name_consumer, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["prima"]['revision'])
1838
1835
  else
1839
1836
  create_stack(stack_name_consumer, stack_body, parameters, tags, @cf_role)
1840
1837
  end
1841
1838
 
1842
1839
  stack_name_roger = "ecs-task-roger-qa-#{deploy_id}"
1843
- git_checkout_version('roger', @projects["roger"][:revision])
1840
+ git_checkout_version('roger', @projects["roger"]['revision'])
1844
1841
  stack_body = File.read('projects/roger/deploy/task.yml')
1845
1842
  parameters = [
1846
1843
  {
@@ -1849,7 +1846,7 @@ class Release
1849
1846
  },
1850
1847
  {
1851
1848
  parameter_key: "ReleaseVersion",
1852
- parameter_value: @projects["roger"][:revision]
1849
+ parameter_value: @projects["roger"]['revision']
1853
1850
  },
1854
1851
  {
1855
1852
  parameter_key: "TaskDesiredCount",
@@ -1870,17 +1867,17 @@ class Release
1870
1867
  ]
1871
1868
  if stack_exists?(stack_name_roger)
1872
1869
  cur_version = get_currently_deployed_version(stack_name_roger)
1873
- update_stack(stack_name_roger, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["roger"][:revision])
1870
+ update_stack(stack_name_roger, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["roger"]['revision'])
1874
1871
  else
1875
1872
  create_stack(stack_name_roger, stack_body, parameters, tags, @cf_role)
1876
1873
  end
1877
1874
 
1878
1875
 
1879
- if deploy_starsky_hutch?
1880
- wait_for_stack_ready(stack_name_starsky) unless stack_ready?(stack_name_starsky) unless !deploy_starsky_hutch?
1876
+ if deploy_starsky_hutch_maia?
1877
+ wait_for_stack_ready(stack_name_starsky) unless stack_ready?(stack_name_starsky) unless !deploy_starsky_hutch_maia?
1881
1878
 
1882
1879
  stack_name_hutch = "ecs-task-hutch-qa-#{deploy_id}"
1883
- git_checkout_version('hutch', @projects["hutch"][:revision])
1880
+ git_checkout_version('hutch', @projects["hutch"]['revision'])
1884
1881
  stack_body = File.read('projects/hutch/deploy/task.yml')
1885
1882
  parameters = [
1886
1883
  {
@@ -1889,7 +1886,7 @@ class Release
1889
1886
  },
1890
1887
  {
1891
1888
  parameter_key: "ReleaseVersion",
1892
- parameter_value: "#{@projects["hutch"][:revision]}"
1889
+ parameter_value: "#{@projects["hutch"]['revision']}"
1893
1890
  },
1894
1891
  {
1895
1892
  parameter_key: "ALBShortName",
@@ -1918,12 +1915,60 @@ class Release
1918
1915
  ]
1919
1916
  if stack_exists?(stack_name_hutch)
1920
1917
  cur_version = get_currently_deployed_version(stack_name_hutch)
1921
- update_stack(stack_name_hutch, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["hutch"][:revision])
1918
+ update_stack(stack_name_hutch, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["hutch"]['revision'])
1922
1919
  else
1923
1920
  create_stack(stack_name_hutch, stack_body, parameters, tags, @cf_role)
1924
1921
  end
1925
1922
  end
1926
1923
 
1924
+ stack_name_maia = "ecs-task-maia-qa-#{deploy_id}"
1925
+ git_checkout_version('maia', @projects["maia"][:revision])
1926
+ stack_body = File.read('projects/maia/deploy/task.yml')
1927
+ parameters = [
1928
+ {
1929
+ parameter_key: "Environment",
1930
+ parameter_value: "qa"
1931
+ },
1932
+ {
1933
+ parameter_key: "ReleaseVersion",
1934
+ parameter_value: "#{@projects["maia"][:revision]}"
1935
+ },
1936
+ {
1937
+ parameter_key: "ALBShortName",
1938
+ parameter_value: "maia-qa-#{deploy_id}"[0..27]
1939
+ },
1940
+ {
1941
+ parameter_key: "ECSClusterName",
1942
+ parameter_value: @ecs_cluster_name
1943
+ },
1944
+ {
1945
+ parameter_key: "EnvHash",
1946
+ parameter_value: deploy_id
1947
+ },
1948
+ {
1949
+ parameter_key: "HostnamePatternPublic",
1950
+ parameter_value: "api*-#{@dns_record_identifier}.qa.colaster.com"
1951
+ },
1952
+ {
1953
+ parameter_key: "HostnamePatternPriority",
1954
+ parameter_value: (hostname_pattern_priority.to_i + 128).to_s
1955
+ },
1956
+ {
1957
+ parameter_key: "ProxyHostnameIntermediari",
1958
+ parameter_value: "api-intermediari-#{@dns_record_identifier}.qa.colaster.com"
1959
+ },
1960
+ {
1961
+ parameter_key: "ProxyHostnameApp",
1962
+ parameter_value: "api-#{@dns_record_identifier}.qa.colaster.com"
1963
+ }
1964
+ ]
1965
+ if stack_exists?(stack_name_maia)
1966
+ cur_version = get_currently_deployed_version(stack_name_maia)
1967
+ update_stack(stack_name_maia, stack_body, parameters, tags, @cf_role) unless cur_version.include?(@projects["maia"][:revision])
1968
+ else
1969
+ create_stack(stack_name_maia, stack_body, parameters, tags, @cf_role)
1970
+ end
1971
+
1927
1972
  wait_for_stack_ready(stack_name_web) unless stack_ready?(stack_name_web)
1928
1973
  wait_for_stack_ready(stack_name_consumer) unless stack_ready?(stack_name_consumer)
1929
1974
  wait_for_stack_ready(stack_name_ermes) unless stack_ready?(stack_name_ermes)
@@ -1933,7 +1978,8 @@ class Release
1933
1978
  wait_for_stack_ready(stack_name_borat) unless stack_ready?(stack_name_borat)
1934
1979
  wait_for_stack_ready(stack_name_activia) unless stack_ready?(stack_name_activia)
1935
1980
  wait_for_stack_ready(stack_name_crash) unless stack_ready?(stack_name_crash) unless !deploy_crash?
1936
- wait_for_stack_ready(stack_name_hutch) unless stack_ready?(stack_name_hutch) unless !deploy_starsky_hutch?
1981
+ wait_for_stack_ready(stack_name_hutch) unless stack_ready?(stack_name_hutch) unless !deploy_starsky_hutch_maia?
1982
+ wait_for_stack_ready(stack_name_maia) unless stack_ready?(stack_name_maia) unless !deploy_starsky_hutch_maia?
1937
1983
 
1938
1984
  update_service_defaults(stack_name_web)
1939
1985
  update_service_defaults(stack_name_consumer)
@@ -1950,27 +1996,30 @@ class Release
1950
1996
  update_service_defaults(stack_name_skynet)
1951
1997
  update_service_defaults(stack_name_leftorium)
1952
1998
  update_service_defaults(stack_name_rachele)
1953
- update_service_defaults(stack_name_starsky) unless !deploy_starsky_hutch?
1954
- update_service_defaults(stack_name_hutch) unless !deploy_starsky_hutch?
1999
+ update_service_defaults(stack_name_starsky) unless !deploy_starsky_hutch_maia?
2000
+ update_service_defaults(stack_name_hutch) unless !deploy_starsky_hutch_maia?
2001
+ update_service_defaults(stack_name_maia) unless !deploy_starsky_hutch_maia?
1955
2002
  update_service_defaults(stack_name_crash) unless !deploy_crash?
1956
2003
 
1957
- activia_hostname = get_route53_hostname(stack_name_activia)
1958
- assange_hostname = get_route53_hostname(stack_name_assange)
1959
- bburago_hostname = get_route53_hostname(stack_name_bburago)
1960
- borat_hostname = get_route53_hostname(stack_name_borat)
1961
- ermes_hostname = get_route53_hostname(stack_name_ermes)
1962
- fidaty_hostname = get_route53_hostname(stack_name_fidaty)
1963
- hal9000_hostname = get_route53_hostname(stack_name_hal9000)
1964
- prima_hostname = get_route53_hostname(stack_name_web)
1965
- peano_hostname = get_route53_hostname(stack_name_peano)
1966
- skynet_hostname = get_route53_hostname(stack_name_skynet)
1967
- urania_hostname = get_route53_hostname(stack_name_urania)
1968
- roger_hostname = get_route53_hostname(stack_name_roger)
1969
- leftorium_hostname = get_route53_hostname(stack_name_leftorium)
1970
- rachele_hostname = get_route53_hostname(stack_name_rachele)
1971
- crash_hostname = get_route53_hostname(stack_name_crash) unless !deploy_crash?
1972
- starsky_hostname = get_route53_hostname(stack_name_starsky) unless !deploy_starsky_hutch?
1973
- hutch_hostname = get_route53_hostname(stack_name_hutch) unless !deploy_starsky_hutch?
2004
+ activia_hostname = get_route53_hostname("activia")
2005
+ assange_hostname = get_route53_hostname("assange")
2006
+ bburago_hostname = get_route53_hostname("bburago")
2007
+ borat_hostname = get_route53_hostname("borat")
2008
+ ermes_hostname = get_route53_hostname("ermes")
2009
+ fidaty_hostname = get_route53_hostname("fidaty")
2010
+ hal9000_hostname = get_route53_hostname("hal9000")
2011
+ prima_hostname = get_route53_hostname("web")
2012
+ peano_hostname = get_route53_hostname("peano")
2013
+ skynet_hostname = get_route53_hostname("skynet")
2014
+ urania_hostname = get_route53_hostname("urania")
2015
+ roger_hostname = get_route53_hostname("roger")
2016
+ leftorium_hostname = get_route53_hostname("leftorium")
2017
+ rachele_hostname = get_route53_hostname("rachele")
2018
+ crash_hostname = get_route53_hostname("crash") unless !deploy_crash?
2019
+ starsky_hostname = get_route53_hostname("starsky") unless !deploy_starsky_hutch_maia?
2020
+ hutch_hostname = get_route53_hostname("hutch") unless !deploy_starsky_hutch_maia?
2021
+ maia_app_hostname = get_route53_hostname("maia-app") unless !deploy_starsky_hutch_maia?
2022
+ maia_intermediari_hostname = get_route53_hostname("maia-intermediari") unless !deploy_starsky_hutch_maia?
1974
2023
 
1975
2024
  # launch_marley ec2_ip_address(asg_stack_name), prima_hostname, borat_hostname
1976
2025
 
@@ -1993,7 +2042,9 @@ class Release
1993
2042
  > Crash url: https://#{crash_hostname}" if deploy_crash?
1994
2043
  projects_text.concat "
1995
2044
  > Starsky url: https://#{starsky_hostname}
1996
- > Hutch url: https://#{hutch_hostname}" if deploy_starsky_hutch?
2045
+ > Hutch url: https://#{hutch_hostname}
2046
+ > Maia App url: https://#{maia_app_hostname}
2047
+ > Maia Intermediari url: https://#{maia_intermediari_hostname}" if deploy_starsky_hutch_maia?
1997
2048
  projects_text.concat "
1998
2049
  > RabbitMQ url: http://#{ec2_ip_address(asg_stack_name)}:15672
1999
2050
  > Supervisor url: http://#{ec2_ip_address(asg_stack_name)}:9001
@@ -2005,42 +2056,46 @@ class Release
2005
2056
  qainit_write_output(projects_text, 'Indirizzi scritti su ')
2006
2057
  end
2007
2058
 
2008
- def get_route53_hostname(stack_name)
2059
+ def get_route53_hostname(project)
2009
2060
  case
2010
- when stack_name.include?('web')
2061
+ when project.include?('web')
2011
2062
  host = "www-#{@dns_record_identifier}.qa.colaster.com"
2012
- when stack_name.include?('urania')
2063
+ when project.include?('urania')
2013
2064
  host = "urania-#{@dns_record_identifier}.qa.colaster.com"
2014
- when stack_name.include?('bburago')
2065
+ when project.include?('bburago')
2015
2066
  host = "bburago-#{@dns_record_identifier}.qa.colaster.com"
2016
- when stack_name.include?('hal9000')
2067
+ when project.include?('hal9000')
2017
2068
  host = "hal9000-#{@dns_record_identifier}.qa.colaster.com"
2018
- when stack_name.include?('fidaty')
2069
+ when project.include?('fidaty')
2019
2070
  host = "fidaty-#{@dns_record_identifier}.qa.colaster.com"
2020
- when stack_name.include?('peano')
2071
+ when project.include?('peano')
2021
2072
  host = "peano-#{@dns_record_identifier}.qa.colaster.com"
2022
- when stack_name.include?('assange')
2073
+ when project.include?('assange')
2023
2074
  host = "assange-#{@dns_record_identifier}.qa.colaster.com"
2024
- when stack_name.include?('borat')
2075
+ when project.include?('borat')
2025
2076
  host = "backoffice-#{@dns_record_identifier}.qa.colaster.com"
2026
- when stack_name.include?('crash')
2077
+ when project.include?('crash')
2027
2078
  host = "crash-#{@dns_record_identifier}.qa.colaster.com"
2028
- when stack_name.include?('ermes')
2079
+ when project.include?('ermes')
2029
2080
  host = "ermes-#{@dns_record_identifier}.qa.colaster.com"
2030
- when stack_name.include?('activia')
2081
+ when project.include?('activia')
2031
2082
  host = "activia-#{@dns_record_identifier}.qa.colaster.com"
2032
- when stack_name.include?('skynet')
2083
+ when project.include?('skynet')
2033
2084
  host = "skynet-#{@dns_record_identifier}.qa.colaster.com"
2034
- when stack_name.include?('roger')
2085
+ when project.include?('roger')
2035
2086
  host = "roger-#{@dns_record_identifier}.qa.colaster.com"
2036
- when stack_name.include?('leftorium')
2087
+ when project.include?('leftorium')
2037
2088
  host = "leftorium-#{@dns_record_identifier}.qa.colaster.com"
2038
- when stack_name.include?('rachele')
2089
+ when project.include?('rachele')
2039
2090
  host = "rachele-#{@dns_record_identifier}.qa.colaster.com"
2040
- when stack_name.include?('starsky')
2091
+ when project.include?('starsky')
2041
2092
  host = "starsky-#{@dns_record_identifier}.qa.colaster.com"
2042
- when stack_name.include?('hutch')
2093
+ when project.include?('hutch')
2043
2094
  host = "hutch-#{@dns_record_identifier}.qa.colaster.com"
2095
+ when project.include?('maia-app')
2096
+ host = "api-#{@dns_record_identifier}.qa.colaster.com"
2097
+ when project.include?('maia-intermediari')
2098
+ host = "api-intermediari-#{@dns_record_identifier}.qa.colaster.com"
2044
2099
  end
2045
2100
  host
2046
2101
  end
@@ -2099,6 +2154,8 @@ class Release
2099
2154
  logical_resource_id = 'EcsApplicationLoadBalancerPublic'
2100
2155
  when stack_name.include?('hutch')
2101
2156
  logical_resource_id = 'EcsApplicationLoadBalancerPublic'
2157
+ when stack_name.include?('maia')
2158
+ logical_resource_id = 'EcsApplicationLoadBalancerPublic'
2102
2159
  end
2103
2160
  resp = @cf.describe_stack_resource({
2104
2161
  stack_name: stack_name,
@@ -2152,6 +2209,8 @@ class Release
2152
2209
  logical_resource_id = 'ECSServiceStarskyQA'
2153
2210
  when stack_name.include?('hutch')
2154
2211
  logical_resource_id = 'ECSServiceHutch'
2212
+ when stack_name.include?('maia')
2213
+ logical_resource_id = 'ECSServiceMaia'
2155
2214
  else
2156
2215
  raise "Service name non gestito per lo stack #{stack_name}"
2157
2216
  end
@@ -2505,6 +2564,41 @@ class Release
2505
2564
  Dir.chdir '../../'
2506
2565
  end
2507
2566
 
2567
+ def create_maia_artifact(revision)
2568
+ output "Preparo l'artifact maia .zip\n".yellow
2569
+
2570
+ git_checkout_version('maia', revision)
2571
+
2572
+ Dir.chdir 'projects/maia'
2573
+
2574
+ decrypt_secrets()
2575
+
2576
+ exec_step 'prepare-docker-compose --directory maia'
2577
+
2578
+ if File.exists? 'deploy/build_qa_artifact'
2579
+ exec_step 'deploy/build_qa_artifact'
2580
+ else
2581
+ [
2582
+ "docker-compose build web",
2583
+ "docker-compose run -w $PWD -u root -e MIX_ENV=qa --entrypoint /bin/bash web \
2584
+ '-c' 'pwd && ls -al && \
2585
+ mix local.hex --force && \
2586
+ mix deps.get && \
2587
+ mix release.clean --implode --no-confirm && \
2588
+ mix release --env=qa'"
2589
+ ].each do |cmd|
2590
+ execute_command cmd
2591
+ end
2592
+ end
2593
+
2594
+ cleanup_containers
2595
+
2596
+ artifact_path = Dir.glob('_build/qa/rel/maia/releases/*/maia.tar.gz').first
2597
+ upload_artifact(artifact_path, "microservices/maia/#{revision}-qa.tar.gz", "#{@s3_bucket}-encrypted")
2598
+
2599
+ Dir.chdir '../../'
2600
+ end
2601
+
2508
2602
  def create_peano_artifact(revision)
2509
2603
  output "Preparo l'artifact peano .zip\n".yellow
2510
2604
 
@@ -2797,7 +2891,7 @@ class Release
2797
2891
  else
2798
2892
  pyxis_updated = `git log -p -1 --unified=0 | grep pyxis-npm:`.length > 0
2799
2893
 
2800
- update_pyxis = !@projects['pyxis-npm'].empty? && @projects['pyxis-npm'][:name] != 'master' && pyxis_updated
2894
+ update_pyxis = !@projects['pyxis-npm'].empty? && @projects['pyxis-npm']['name'] != 'master' && pyxis_updated
2801
2895
 
2802
2896
  @deploy_pyxis = update_pyxis
2803
2897
  return update_pyxis
@@ -2805,15 +2899,16 @@ class Release
2805
2899
  end
2806
2900
 
2807
2901
  def deploy_crash?
2808
- crash_present = !@projects['crash'].empty? && @projects['crash'][:name] != 'master' && !@projects['crash'][:default_branch]
2809
- leftorium_present = !@projects['leftorium'].empty? && @projects['leftorium'][:name] != 'master' && !@projects['leftorium'][:default_branch]
2902
+ crash_present = !@projects['crash'].empty? && @projects['crash']['name'] != 'master' && !@projects['crash']['default_branch']
2903
+ leftorium_present = !@projects['leftorium'].empty? && @projects['leftorium']['name'] != 'master' && !@projects['leftorium']['default_branch']
2810
2904
  crash_present || leftorium_present
2811
2905
  end
2812
2906
 
2813
- def deploy_starsky_hutch?
2814
- starsky_present = !@projects['starsky'].nil? && !@projects['starsky'].empty? && @projects['starsky'][:name] != 'master' && !@projects['starsky'][:default_branch]
2815
- hutch_present = !@projects['hutch'].nil? && !@projects['hutch'].empty? && @projects['hutch'][:name] != 'master' && !@projects['hutch'][:default_branch]
2816
- starsky_present || hutch_present
2907
+ def deploy_starsky_hutch_maia?
2908
+ starsky_present = !@projects['starsky'].nil? && !@projects['starsky'].empty? && @projects['starsky']['name'] != 'master' && !@projects['starsky']['default_branch']
2909
+ hutch_present = !@projects['hutch'].nil? && !@projects['hutch'].empty? && @projects['hutch']['name'] != 'master' && !@projects['hutch']['default_branch']
2910
+ maia_present = !@projects['maia'].nil? && !@projects['maia'].empty? && @projects['maia']['name'] != 'master' && !@projects['maia']['default_branch']
2911
+ starsky_present || hutch_present || maia_present
2817
2912
  end
2818
2913
 
2819
2914
  def get_pyxis_version(deploy_id)
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.55.3
4
+ version: 0.56.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matteo Giachino
@@ -14,7 +14,7 @@ authors:
14
14
  autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
- date: 2019-11-19 00:00:00.000000000 Z
17
+ date: 2019-11-22 00:00:00.000000000 Z
18
18
  dependencies:
19
19
  - !ruby/object:Gem::Dependency
20
20
  name: aws-sdk