prima-twig 1.0.32 → 1.0.37

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 97f83507c77f13778f61406fc71ed10f6016908c582f49d370fa0bb8720b7ec1
4
- data.tar.gz: ef82b61593e936c94c265deba8c09293abb449b4733b3002de46e83f1a73408f
3
+ metadata.gz: 62128e9f20c5ce337980ee371b18816b947decb219a3e17594de1b0a3a19d8a0
4
+ data.tar.gz: 3cde0c6dc5e7f27c400b56d45f60b5db1865d2be3f33bcb11e9b2e2debf45244
5
5
  SHA512:
6
- metadata.gz: 515f93a590f98d892c456742d4b270cdd0d6fd08fe313a29b054a910c79611111a96f807b45814e474e45d4364dbc4326daf2af70cdd2e52c25e854eca459990
7
- data.tar.gz: d5d1bdaf8b37d872e9ddde0a2a1ca30bdd6226933e80c19bccc55943a533026ca5a6b7db2b64b3677211cdb39a48349e5f54d8695be04ec5314a24c400331cf3
6
+ metadata.gz: 046d020a23506a2ecdc249b8f4791d60effd960d5d77bd908f6e80ef48b456e7e5a50527c321dd14c9ea148fc793e023f0cb337d06b95fed97bbb7ae44f98b0d
7
+ data.tar.gz: b4f03442676383d648b38f644884c9610ca54eff8d4d2be3944548caa869708c8c994e5a7e9d1ae68e4d7a6a2f3ced8f846161fad49cfa22f560f57bb3148a9d
@@ -48,8 +48,8 @@ class Build
48
48
  'maia' => {},
49
49
  'legion' => {},
50
50
  'vianello' => {},
51
- 'domus' => {}
52
- # 'toretto' => {}
51
+ 'domus' => {},
52
+ 'toretto' => {}
53
53
  }
54
54
  @base_stack_name_alb = 'ecs-alb-http-public-qa-'
55
55
  @base_stack_name_alb_ws = 'ecs-alb-ws-public-qa-'
@@ -372,6 +372,14 @@ class Build
372
372
  {
373
373
  parameter_key: 'DomusElbHostname',
374
374
  parameter_value: get_alb_host(stack_name_alb)
375
+ },
376
+ {
377
+ parameter_key: 'TorettoElbHostname',
378
+ parameter_value: get_alb_host(stack_name_alb)
379
+ },
380
+ {
381
+ parameter_key: 'TorettoFeElbHostname',
382
+ parameter_value: get_alb_host(stack_name_alb)
375
383
  }
376
384
  ]
377
385
 
@@ -1547,6 +1555,112 @@ class Build
1547
1555
  end
1548
1556
  end
1549
1557
 
1558
+ def create_toretto_stack()
1559
+ if deploy_toretto?
1560
+ wait_for_artifact('prima-artifacts-encrypted', "microservices/toretto/#{@projects["toretto"]['revision']}-qa.tar.gz")
1561
+
1562
+ git_checkout_version('toretto', @projects["toretto"]['revision'])
1563
+ stack_name_toretto = get_stack_name("toretto")
1564
+ stack_body = IO.read('projects/toretto/deploy/task.yml')
1565
+ parameters = [
1566
+ {
1567
+ parameter_key: "Environment",
1568
+ parameter_value: "qa"
1569
+ },
1570
+ {
1571
+ parameter_key: "ReleaseVersion",
1572
+ parameter_value: "#{@projects["toretto"]['revision']}"
1573
+ },
1574
+ {
1575
+ parameter_key: "TaskDesiredCount",
1576
+ parameter_value: "1"
1577
+ },
1578
+ {
1579
+ parameter_key: "ECSClusterName",
1580
+ parameter_value: get_ecs_cluster_name
1581
+ },
1582
+ {
1583
+ parameter_key: "ALBShortName",
1584
+ parameter_value: "toretto-api-qa-#{get_deploy_id}"[0..27]
1585
+ },
1586
+ {
1587
+ parameter_key: "EnvHash",
1588
+ parameter_value: get_deploy_id
1589
+ },
1590
+ {
1591
+ parameter_key: "HostnamePattern",
1592
+ parameter_value: "carrozzerie-api-#{get_deploy_id}.qa.colaster.com"
1593
+ },
1594
+ {
1595
+ parameter_key: "HostnamePatternPriority",
1596
+ parameter_value: (hostname_pattern_priority.to_i + 79).to_s
1597
+ },
1598
+ {
1599
+ parameter_key: "AllowedOrigin",
1600
+ parameter_value: "https://#{get_route53_hostname('toretto_fe')}"
1601
+ }
1602
+ ]
1603
+ if stack_exists?(stack_name_toretto)
1604
+ cur_version = get_currently_deployed_version(stack_name_toretto)
1605
+ unless cur_version.include?(@projects["toretto"]['revision'])
1606
+ delete_stack(stack_name_toretto)
1607
+ wait_for_stack_removal(stack_name_toretto)
1608
+ create_stack(stack_name_toretto, stack_body, parameters, @tags, @cf_role)
1609
+ end
1610
+ else
1611
+ create_stack(stack_name_toretto, stack_body, parameters, @tags, @cf_role)
1612
+ end
1613
+
1614
+ wait_for_artifact('prima-artifacts-encrypted', "microservices/toretto/fe-#{@projects["toretto"]['revision']}-#{get_deploy_id[0..7]}-qa.tar.gz")
1615
+
1616
+ stack_name_toretto_fe = get_stack_name("toretto-fe")
1617
+ git_checkout_version('toretto', @projects["toretto"]['revision'])
1618
+ stack_body = File.read('projects/toretto/deploy/task-fe.yml')
1619
+ parameters = [
1620
+ {
1621
+ parameter_key: "Environment",
1622
+ parameter_value: "qa"
1623
+ },
1624
+ {
1625
+ parameter_key: "ReleaseVersion",
1626
+ parameter_value: "#{@projects["toretto"]['revision']}-#{get_deploy_id[0..7]}"
1627
+ },
1628
+ {
1629
+ parameter_key: "ALBShortName",
1630
+ parameter_value: "toretto-fe-qa-#{get_deploy_id}"[0..27]
1631
+ },
1632
+ {
1633
+ parameter_key: "ECSClusterName",
1634
+ parameter_value: get_ecs_cluster_name
1635
+ },
1636
+ {
1637
+ parameter_key: "EnvHash",
1638
+ parameter_value: get_deploy_id
1639
+ },
1640
+ {
1641
+ parameter_key: "HostnamePattern",
1642
+ parameter_value: "carrozzerie-#{get_deploy_id}.qa.colaster.com"
1643
+ },
1644
+ {
1645
+ parameter_key: "HostnamePatternPriority",
1646
+ parameter_value: (hostname_pattern_priority.to_i + 254).to_s
1647
+ },
1648
+ {
1649
+ parameter_key: "ApiUrl",
1650
+ parameter_value: "https://#{get_route53_hostname('toretto')}"
1651
+ }
1652
+ ]
1653
+ if stack_exists?(stack_name_toretto_fe)
1654
+ cur_version = get_currently_deployed_version(stack_name_toretto_fe)
1655
+ update_stack(stack_name_toretto_fe, stack_body, parameters, @tags, @cf_role) unless cur_version.include?(@projects["toretto"]['revision'])
1656
+ else
1657
+ create_stack(stack_name_toretto_fe, stack_body, parameters, @tags, @cf_role)
1658
+ end
1659
+ else
1660
+ true
1661
+ end
1662
+ end
1663
+
1550
1664
  def create_rogoreport_stack()
1551
1665
  true
1552
1666
  end
@@ -1567,6 +1681,10 @@ class Build
1567
1681
  wait_for_stack_ready(get_stack_name("vianello")) unless stack_ready?(get_stack_name("vianello"))
1568
1682
  wait_for_stack_ready(get_stack_name("domus")) unless stack_ready?(get_stack_name("domus"))
1569
1683
  end
1684
+ if deploy_toretto?
1685
+ wait_for_stack_ready(get_stack_name("toretto")) unless stack_ready?(get_stack_name("toretto"))
1686
+ wait_for_stack_ready(get_stack_name("toretto-fe")) unless stack_ready?(get_stack_name("toretto-fe"))
1687
+ end
1570
1688
 
1571
1689
  update_service_defaults(get_stack_name("web"))
1572
1690
  update_service_defaults(get_stack_name("consumer-api"))
@@ -1592,6 +1710,10 @@ class Build
1592
1710
  update_service_defaults(get_stack_name("vianello"))
1593
1711
  update_service_defaults(get_stack_name("domus"))
1594
1712
  end
1713
+ if deploy_toretto?
1714
+ update_service_defaults(get_stack_name("toretto"))
1715
+ update_service_defaults(get_stack_name("toretto-fe"))
1716
+ end
1595
1717
 
1596
1718
  activia_hostname = get_route53_hostname("activia")
1597
1719
  assange_hostname = get_route53_hostname("assange")
@@ -1615,6 +1737,8 @@ class Build
1615
1737
  legion_hostname = get_route53_hostname("legion")
1616
1738
  vianello_hostname = get_route53_hostname("vianello")
1617
1739
  domus_hostname = get_route53_hostname("domus")
1740
+ toretto_hostname = get_route53_hostname("toretto")
1741
+ toretto_fe_hostname = get_route53_hostname("toretto_fe")
1618
1742
 
1619
1743
  #launch_mimo(get_deploy_id)
1620
1744
 
@@ -1643,6 +1767,9 @@ projects_text.concat "
1643
1767
  > Vianello url: https://#{vianello_hostname}
1644
1768
  > Domus url: https://#{domus_hostname}" if deploy_vianello_or_domus?
1645
1769
  projects_text.concat "
1770
+ > Toretto url: https://#{toretto_fe_hostname}
1771
+ > Toretto Backend url: https://#{toretto_hostname}" if deploy_toretto?
1772
+ projects_text.concat "
1646
1773
  > RabbitMQ url: http://#{get_ec2_ip_address}:15672
1647
1774
  > Elasticsearch url: http://#{get_ec2_ip_address}:9200
1648
1775
  > Git branch: #{@git_branch}
@@ -1710,6 +1837,10 @@ projects_text.concat "
1710
1837
  host = "vianello-#{get_deploy_id}.qa.colaster.com"
1711
1838
  when project.include?('domus')
1712
1839
  host = "domus-#{get_deploy_id}.qa.colaster.com"
1840
+ when project.include?('toretto_fe')
1841
+ host = "carrozzerie-#{get_deploy_id}.qa.colaster.com"
1842
+ when project.include?('toretto')
1843
+ host = "carrozzerie-api-#{get_deploy_id}.qa.colaster.com"
1713
1844
  end
1714
1845
  host
1715
1846
  end
@@ -1775,6 +1906,10 @@ projects_text.concat "
1775
1906
  logical_resource_id = 'EcsApplicationLoadBalancerInternal'
1776
1907
  when stack_name.include?('domus')
1777
1908
  logical_resource_id = 'EcsApplicationLoadBalancerPublic'
1909
+ when stack_name.include?('toretto_fe')
1910
+ logical_resource_id = 'EcsApplicationLoadBalancerPublic'
1911
+ when stack_name.include?('toretto')
1912
+ logical_resource_id = 'EcsApplicationLoadBalancerPublic'
1778
1913
  end
1779
1914
  resp = describe_stack_resource(stack_name, logical_resource_id)
1780
1915
  resp = describe_load_balancers([resp.stack_resource_detail.physical_resource_id])
@@ -1831,6 +1966,10 @@ projects_text.concat "
1831
1966
  logical_resource_id = 'ECSServiceVianelloQA'
1832
1967
  when stack_name.include?('domus')
1833
1968
  logical_resource_id = 'ECSServiceDomus'
1969
+ when stack_name.include?('toretto-fe')
1970
+ logical_resource_id = 'ECSServiceToretto'
1971
+ when stack_name.include?('toretto')
1972
+ logical_resource_id = 'ECSServiceTorettoQA'
1834
1973
  else
1835
1974
  raise "Service name non gestito per lo stack #{stack_name}"
1836
1975
  end
@@ -1910,11 +2049,19 @@ projects_text.concat "
1910
2049
  end
1911
2050
 
1912
2051
  def deploy_vianello_or_domus?
1913
- vianello_present = !@projects['vianello'].empty? && @projects['vianello'][:name] != 'master' && !@projects['vianello'][:default_branch]
1914
- domus_present = !@projects['domus'].empty? && @projects['domus'][:name] != 'master' && !@projects['domus'][:default_branch]
2052
+ puts "check vianello #{!@projects['vianello'].empty?} #{@projects['vianello']['name'] != 'master'} #{@projects} #{@projects['vianello']} #{@projects['vianello']['default_branch'] != 'true'}"
2053
+ vianello_present = !@projects['vianello'].empty? && @projects['vianello']['name'] != 'master' && !@projects['vianello']['default_branch']
2054
+ puts "check domus #{!@projects['domus'].empty?} #{@projects['domus']['name'] != 'master'} #{!@projects['domus']['default_branch']}"
2055
+ domus_present = !@projects['domus'].empty? && @projects['domus']['name'] != 'master' && !@projects['domus']['default_branch']
1915
2056
  vianello_present || domus_present
1916
2057
  end
1917
2058
 
2059
+ def deploy_toretto?
2060
+ toretto_present = !@projects['toretto'].empty? && @projects['toretto']['name'] != 'master' && @projects['toretto']['default_branch'] != 'true'
2061
+ crash_present = !@projects['crash'].empty? && @projects['crash']['name'] != 'master' && !@projects['crash']['default_branch'] != 'true'
2062
+ toretto_present || crash_present
2063
+ end
2064
+
1918
2065
  def git_checkout_version(project, revision)
1919
2066
  Dir.chdir "projects/#{project}"
1920
2067
  exec_step "git checkout -- . && git checkout #{revision}"
@@ -46,7 +46,10 @@ class Release
46
46
  'starsky' => {},
47
47
  'hutch' => {},
48
48
  'maia' => {},
49
- 'legion' => {}
49
+ 'legion' => {},
50
+ 'vianello' => {},
51
+ 'domus' => {},
52
+ 'toretto' => {}
50
53
  }
51
54
  @base_stack_name_alb = 'ecs-alb-http-public-qa-'
52
55
  @base_stack_name_alb_ws = 'ecs-alb-ws-public-qa-'
@@ -416,7 +416,7 @@ module PrimaAwsClient
416
416
  def describe_load_balancers(load_balancer_arns)
417
417
  begin
418
418
  resp = alb_client.describe_load_balancers({load_balancer_arns: load_balancer_arns})
419
- rescue Aws::CloudFormation::Errors::Throttling => e
419
+ rescue Aws::ElasticLoadBalancingV2::Errors::Throttling => e
420
420
  output 'Throttling, retrying in 15 seconds'.red
421
421
  sleep 15
422
422
  resp = describe_load_balancers(load_balancer_arns)
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: 1.0.32
4
+ version: 1.0.37
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: 2020-06-25 00:00:00.000000000 Z
17
+ date: 2020-07-02 00:00:00.000000000 Z
18
18
  dependencies:
19
19
  - !ruby/object:Gem::Dependency
20
20
  name: aws-sdk-autoscaling