berl 1.0.1 → 1.0.3

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: b985f2fdec9a27e3b71783c2dfd9eb0601dc8937127719c5efc0e86bf40cb764
4
- data.tar.gz: f2200d3200870cf1ab3098ad884d63ed88fe88c9705e55913137a8a54830911b
3
+ metadata.gz: 85b5bb3c4f909ffe165cf84814470a25bbc217c3a4bed31f559f1153c46274cd
4
+ data.tar.gz: 96d8ac7646c2aaa3a19c06fc4138b2e6377671be517990316de8ea8c6e3a67f1
5
5
  SHA512:
6
- metadata.gz: a88c86d2b61cea104976e86a2546b9980067839a4b36ab594b0259815065bc0e8122a0e50450d8d8d231aeba1848ce53717bc29833fc221d38b975102cc72aef
7
- data.tar.gz: 0a8430a7c91350c99ca9d750dfc0301671199c14c668cc7fb65a4d72649f3473ea58cf84440373399680a4c2d5ec3fdd96617da5f2d33e79a73fcf892a373697
6
+ metadata.gz: 4bc65c58c7fbd1ba6abecdba050780f599c8816094f1dbbca2d79e13ba576cc0ef212126a02a63d561a0f070efed1473b322d186787c5bb90c90804e42fc244a
7
+ data.tar.gz: 160e8474ec2d475abad1b231bf2206815904f1110af74108df80eb2974571125aa22dd3de88ecebca7ec124d6a72436f46f7d6c72ad01fde3975693e2e81d875
@@ -13,12 +13,25 @@ class DatabaseWizard
13
13
  end
14
14
 
15
15
  def initialize_num_of_databases(num_of_databases)
16
+ database_connection_string_tpl = ENV["PARALLELE_DATABASE_URL_TEMPLATE"]
17
+
18
+ if database_connection_string_tpl.nil?
19
+ database_connection_string_tpl = "mysql://root:root_password@db/sylius_%s?charset=utf8mb4"
20
+ end
21
+
16
22
  Parallel.each(1..num_of_databases, in_processes: 4, finish: method(:handle_finish)) do |i|
17
- database_connection_string = "mysql://root:root_password@db/sylius_#{i}?charset=utf8mb4"
23
+ database_connection_string = printf(database_connection_string_tpl, i)
18
24
 
19
25
  setup_db_cmd = build_setup_db_cmd(database_connection_string)
20
- Open3.popen3(setup_db_cmd) do |_, _, _, _|
21
- database_connection_string
26
+ Open3.popen3(setup_db_cmd) do |_, stdout, stderr, wait_thr|
27
+ result = {}
28
+ result['status'] = wait_thr.value == 0 ? 'success' : 'fail'
29
+ result['output'] = []
30
+ result['output'].push(*stdout.readlines)
31
+ result['output'].push(*stderr.readlines)
32
+ result['database_connection_string'] = database_connection_string
33
+
34
+ result
22
35
  end
23
36
  end
24
37
  end
@@ -27,17 +40,23 @@ class DatabaseWizard
27
40
  cmd = []
28
41
  cmd.push("DATABASE_URL=#{database} php bin/console doctrine:database:create --if-not-exists -e test")
29
42
  cmd.push("DATABASE_URL=#{database} php bin/console doctrine:schema:update -f -e test")
30
- cmd.push("DATABASE_URL=#{database} php bin/console sylius:fixture:load -n -e test")
43
+ # cmd.push("DATABASE_URL=#{database} php bin/console sylius:fixture:load -n -e test")
31
44
 
32
- cmd.join(' ')
45
+ cmd.join(' && ')
33
46
  end
34
47
 
35
48
  private :build_setup_db_cmd
36
49
 
37
50
  def handle_finish(_, _, result)
38
51
  @num_of_set_up_databases += 1
52
+ if result['status'] == 'fail'
53
+ puts "❌ Database #{@num_of_set_up_databases} set up"
54
+ result['output'].each { |line| puts line }
55
+ return
56
+ end
57
+
39
58
  puts "🔧 Database #{@num_of_set_up_databases} set up"
40
- @databases.push(result)
59
+ @databases.push(result['database_connection_string'])
41
60
  end
42
61
 
43
62
  private :handle_finish
data/lib/berl/version.rb CHANGED
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Berl
4
- VERSION = '1.0.1'
4
+ VERSION = '1.0.3'
5
5
 
6
6
  module Version # :nodoc: all
7
7
  MAJOR, MINOR, BUILD, *OTHER = Berl::VERSION.split '.'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: berl
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 1.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jakub Tobiasz