prima-twig 0.48.24 → 0.49.0

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.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/bin/twig-feature +44 -4
  3. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 81b1821aa1f510b2c27f9913d2c3ee0a2524aced57aaa791c9db91a8ee69663b
4
- data.tar.gz: 7d8ea04edd342dbfdf7f629f824607e4ad6172bc3f43e03e1d80638138cc1251
3
+ metadata.gz: 689dc7530aa1af3aacea4cdaf6d2dd511cd2045f838bc0502a54684c6192cef5
4
+ data.tar.gz: 581473d8e53c5e2a16a0740fa635015b925168bf97540f2f0cecd82f276be1c2
5
5
  SHA512:
6
- metadata.gz: 9d2d0c88785801240b9ae7e3a6e9025448858fb3d73d559ba3d1ac03510fad257e013b7c1d24d7e6ee87dcf258bdea070502e74d475ffa800f7a8eddafcab602
7
- data.tar.gz: db466ae69f49d8f331d213d01dca497a1b8d1a0299dde02ffdbed3eafcc6e0fb591a453b1c4f76f51286f8c5016144208817568e2de9bc3424d10bc64b89b6be
6
+ metadata.gz: 4f50af1cff4d76e85198976c0ae7710daf4c7b77f62ec910a73a8126557ae81172b7236cb8fe7d4bd5bca836b55afe08483218d79272afa95dd964726623b8c0
7
+ data.tar.gz: 5d0626c48c1e8d1ca07806595e10be80ee8cc032abb167379cd3faa81b3dd7cd3be2e1ce92e5e368264c1693a4b9f2517985dcb7deb5c9a7c426bc932fd3bdba
@@ -53,7 +53,8 @@ class Release
53
53
  'skynet' => {},
54
54
  'roger' => {},
55
55
  'rachele' => {},
56
- 'leftorium' => {}
56
+ 'leftorium' => {},
57
+ 'pyxis-npm' => {}
57
58
  }
58
59
  @base_stack_name_alb = 'ecs-alb-http-public-qa-'
59
60
  @base_stack_name_alb_ws = 'ecs-alb-ws-public-qa-'
@@ -761,7 +762,9 @@ class Release
761
762
  asg_stack_name = "ecs-asg-allinone-qa-#{deploy_id}"
762
763
  create_asg_stack(asg_stack_name, tags) unless stack_exists?(asg_stack_name)
763
764
 
764
- create_prima_artifact(@projects["prima"][:revision], @projects["prima"][:name], true) unless artifact_exists?('prima-artifacts-encrypted', "prima/#{@projects["prima"][:revision]}.tar.gz")
765
+ deploy_id = calculate_deploy_id
766
+ create_prima_artifact(@projects["prima"][:revision], @projects["prima"][:name], deploy_id, true) unless artifact_exists?('prima-artifacts-encrypted', "prima/#{@projects["prima"][:revision]}.tar.gz")
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")
765
768
 
766
769
  wait_for_stack_ready(stack_name_alb) unless stack_ready?(stack_name_alb)
767
770
  wait_for_stack_ready(stack_name_alb_ws) unless stack_ready?(stack_name_alb_ws)
@@ -933,7 +936,8 @@ class Release
933
936
  ]
934
937
  create_stack(stack_name_db, stack_body, parameters, tags, @cf_role) unless stack_exists?(stack_name_db) # creazione asincrona stack dei db (~4 min)
935
938
 
936
- create_prima_artifact(@projects["prima"][:revision], @projects["prima"][:name]) unless artifact_exists?('prima-artifacts-encrypted', "prima/#{@projects["prima"][:revision]}.tar.gz")
939
+ create_pyxis_artifact(@projects["pyxis"][:revision], deploy_id)
940
+ create_prima_artifact(@projects["prima"][:revision], @projects["prima"][:name], deploy_id) unless artifact_exists?('prima-artifacts-encrypted', "prima/#{@projects["prima"][:revision]}.tar.gz")
937
941
  # l'artefatto di prima viene creato sempre (puntamenti all'ambiente compilati nel js) e richiede molto più di 4 minuti
938
942
  wait_for_stack_ready(stack_name_db) unless stack_ready?(stack_name_db) # dovrebbe essere istantaneo
939
943
  db_task = ''
@@ -2692,7 +2696,7 @@ class Release
2692
2696
  Dir.chdir '../../'
2693
2697
  end
2694
2698
 
2695
- def create_prima_artifact(revision, branch_name, minimal = false)
2699
+ def create_prima_artifact(revision, branch_name, deploy_id, minimal = false)
2696
2700
  # @projects["prima"][:revision], @projects["prima"][:name], deploy_id, true
2697
2701
  output "Preparo l'artifact prima .zip\n".yellow
2698
2702
 
@@ -2723,6 +2727,7 @@ class Release
2723
2727
  exec_step 'mv docker-compose-ci.yml docker-compose.yml'
2724
2728
  exec_step 'prepare-docker-compose --directory prima'
2725
2729
  exec_step 'sed -i "s/\\/home\\/app/\\/root/g" docker-compose.yml'
2730
+ `sed -i 's/"@prima-assicurazioni/pyxis-npm": ".*",/"@prima-assicurazioni/pyxis-npm": "#{get_pyxis_version(deploy_id)}",/' package.json`
2726
2731
  [
2727
2732
  "bin/qa_build_artifact.sh #{branch_name} #{'update' if @deploy_update}"
2728
2733
  ].each do |cmd|
@@ -2741,6 +2746,41 @@ class Release
2741
2746
  Dir.chdir "../../"
2742
2747
  end
2743
2748
 
2749
+ def create_pyxis_artifact(revision, deploy_id)
2750
+ output "Preparo l'artifact pyxis\n".yellow
2751
+
2752
+ git_checkout_version('pyxis', revision)
2753
+
2754
+ Dir.chdir 'projects/pyxis'
2755
+
2756
+ decrypt_secrets()
2757
+
2758
+ exec_step 'cp docker-compose.yml docker-compose-ci.yml'
2759
+ exec_step 'prepare-docker-compose --directory pyxis && cp docker-compose-qainit.yml docker-compose.yml && mv .fakenpmrc .npmrc'
2760
+ `sed -i '3s/".*/"version": "#{get_pyxis_version(deploy_id)}",/' package.json`
2761
+ [
2762
+ "docker-compose build web",
2763
+ "docker-compose run -w $PWD -u root -e NPM_TOKEN=$NPM_TOKEN --entrypoint /bin/sh web \
2764
+ '-c' 'yarn install && \
2765
+ yarn build:site && \
2766
+ yarn build:css && \
2767
+ npm publish'"
2768
+ ].each do |cmd|
2769
+ execute_command cmd
2770
+ end
2771
+
2772
+ cleanup_containers
2773
+
2774
+ artifact_path = Dir.glob("_build/qa/rel/pyxis/releases/*/pyxis.tar.gz").first
2775
+ upload_artifact(artifact_path, "microservices/pyxis/#{revision}-qa.tar.gz", "#{@s3_bucket}-encrypted")
2776
+
2777
+ Dir.chdir '../../'
2778
+ end
2779
+
2780
+ def get_pyxis_version(deploy_id)
2781
+ "0.0.#{deploy_id.delete '[a-z]'}"
2782
+ end
2783
+
2744
2784
  def cleanup_containers
2745
2785
  `docker-compose kill && docker-compose down -v --remove-orphans`
2746
2786
  `docker rm $(docker ps -q -f status=exited)`
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.48.24
4
+ version: 0.49.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-08-19 00:00:00.000000000 Z
17
+ date: 2019-08-14 00:00:00.000000000 Z
18
18
  dependencies:
19
19
  - !ruby/object:Gem::Dependency
20
20
  name: aws-sdk