et_full_system 1.0.0.pre30 → 1.0.0.pre31

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6c619e685890fbc1c988a5e7fa0a55e658b9cf3ebba4a41fd8d13d85f8cc368d
4
- data.tar.gz: 5492b1795c880177674724514095ad1a30466cda9455636938f8b4ca26fba891
3
+ metadata.gz: bb9a683ea5a3e40229ada751ece14d89f153a101bf48e5150c2c6c7b7dce52e2
4
+ data.tar.gz: cb2e66dee02b45c5b70c61c615ee86dc8ec1a78d4749b4eacdcd22fa6a36bd0a
5
5
  SHA512:
6
- metadata.gz: 3916660efa38ec304a228b87373df586429eae25072c5285a0941e505a71b0fff42a766e309b36e45ff1941f26dea08231220ec70ef67b95cb17ae6762d92bf5
7
- data.tar.gz: 138e9913ce4162d3486eeb0558529457e0d83d7efda205c1521229550e6eaa78e29c1d5172bd10c04c6357165eada3b5f2023d089d19ac2946c576c06bb7b15f
6
+ metadata.gz: 8e8d999bf1c3989b172ca0b2fceb6ca9d364dd27fec0902e0956f61b6b5de371c004d0db1f4cfa52de4afacf56b5049aa863e39671ddd7416ad5087838c9ebbe
7
+ data.tar.gz: 594a1fc691a2f1ecbdeceea614bf6068fb1a7976cade8346872eabbcf1e577b1b3261d57d7dc518fc0aedcdd9a22c60eddfac994484ed652b93b89cdeb649553
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- et_full_system (1.0.0.pre30)
4
+ et_full_system (1.0.0.pre31)
5
5
  aws-sdk-s3 (~> 1.9)
6
6
  azure-storage (~> 0.15.0.preview)
7
7
  dotenv (~> 2.7, >= 2.7.2)
@@ -22,7 +22,7 @@ module EtFullSystem
22
22
  Bundler.with_original_env do
23
23
  gem_root = File.absolute_path('../../..', __dir__)
24
24
  cmd = "/bin/bash --login -c \"cd /home/app/full_system && et_full_system docker bootstrap && et_full_system local setup\""
25
- compose_cmd = "docker-compose -f #{gem_root}/docker/docker-compose.yml run --rm et #{cmd}"
25
+ compose_cmd = "GEM_VERSION=#{EtFullSystem::VERSION} docker-compose -f #{gem_root}/docker/docker-compose.yml run --rm et #{cmd}"
26
26
  puts compose_cmd
27
27
  exec(compose_cmd)
28
28
  end
@@ -32,7 +32,17 @@ module EtFullSystem
32
32
  def compose(*args)
33
33
  Bundler.with_original_env do
34
34
  gem_root = File.absolute_path('../../..', __dir__)
35
- cmd = "docker-compose -f #{gem_root}/docker/docker-compose.yml #{args.join(' ')}"
35
+ cmd = "GEM_VERSION=#{EtFullSystem::VERSION} docker-compose -f #{gem_root}/docker/docker-compose.yml #{args.join(' ')}"
36
+ puts cmd
37
+ exec(cmd)
38
+ end
39
+ end
40
+
41
+ desc "invoker", "Provides access to the invoker system running inside docker"
42
+ def invoker(*args)
43
+ Bundler.with_original_env do
44
+ gem_root = File.absolute_path('../../..', __dir__)
45
+ cmd = "GEM_VERSION=#{EtFullSystem::VERSION} docker-compose -f #{gem_root}/docker/docker-compose.yml exec et bash -lc \"invoker #{args.join(' ')}\""
36
46
  puts cmd
37
47
  exec(cmd)
38
48
  end
@@ -42,10 +52,10 @@ module EtFullSystem
42
52
  def reset
43
53
  Bundler.with_original_env do
44
54
  gem_root = File.absolute_path('../../..', __dir__)
45
- cmd = "docker-compose -f #{gem_root}/docker/docker-compose.yml down -v"
55
+ cmd = "GEM_VERSION=#{EtFullSystem::VERSION} docker-compose -f #{gem_root}/docker/docker-compose.yml down -v"
46
56
  puts cmd
47
57
  next unless system(cmd)
48
- cmd = "docker-compose -f #{gem_root}/docker/docker-compose.yml build --no-cache"
58
+ cmd = "GEM_VERSION=#{EtFullSystem::VERSION} docker-compose -f #{gem_root}/docker/docker-compose.yml build --no-cache"
49
59
  puts cmd
50
60
  next unless system(cmd)
51
61
  self.class.start(['setup'])
@@ -57,7 +67,7 @@ module EtFullSystem
57
67
  Bundler.with_original_env do
58
68
  gem_root = File.absolute_path('../../..', __dir__)
59
69
  cmd = "/bin/bash --login -c \"et_full_system local update_service_url #{service} #{url}\""
60
- compose_cmd = "docker-compose -f #{gem_root}/docker/docker-compose.yml exec et #{cmd}"
70
+ compose_cmd = "GEM_VERSION=#{EtFullSystem::VERSION} docker-compose -f #{gem_root}/docker/docker-compose.yml exec et #{cmd}"
61
71
  puts compose_cmd
62
72
  exec(compose_cmd)
63
73
  end
@@ -73,13 +83,27 @@ module EtFullSystem
73
83
  Bundler.with_original_env do
74
84
  gem_root = File.absolute_path('../../..', __dir__)
75
85
  cmd = "/bin/bash --login -c \"et_full_system local service_env #{service}\""
76
- compose_cmd = "docker-compose -f #{gem_root}/docker/docker-compose.yml exec et #{cmd}"
77
- exec(compose_cmd)
86
+ compose_cmd = "GEM_VERSION=#{EtFullSystem::VERSION} docker-compose -f #{gem_root}/docker/docker-compose.yml exec et #{cmd}"
87
+ puts compose_cmd
88
+ result = `#{compose_cmd}`
89
+ replace_db_host_port(result)
90
+ replace_redis_host_port(result)
91
+ replace_smtp_host_port(result)
92
+ puts result
78
93
  end
79
94
  end
80
95
 
81
96
  private
82
97
 
98
+ def run_compose_command(*args, silent: false)
99
+ Bundler.with_original_env do
100
+ gem_root = File.absolute_path('../../..', __dir__)
101
+ cmd = "GEM_VERSION=#{EtFullSystem::VERSION} docker-compose -f #{gem_root}/docker/docker-compose.yml #{args.join(' ')}"
102
+ puts cmd unless silent
103
+ `#{cmd}`
104
+ end
105
+ end
106
+
83
107
  def host_ip
84
108
  result = JSON.parse `docker network inspect \`docker network list | grep docker_et_full_system | awk '{print $1}'\``
85
109
  result.first.dig('IPAM', 'Config').first['Gateway']
@@ -97,5 +121,35 @@ module EtFullSystem
97
121
  raise "Unknown host type - this tool only supports mac, linux and windows"
98
122
  end
99
123
  end
124
+
125
+ def replace_db_host_port(env)
126
+ env.gsub!(/^DB_HOST=.*$/, 'DB_HOST=localhost')
127
+ env.gsub!(/^DB_PORT=.*$/, "DB_PORT=#{db_port}")
128
+ end
129
+
130
+ def replace_redis_host_port(env)
131
+ env.gsub!(/^REDIS_HOST=.*$/, 'REDIS_HOST=localhost')
132
+ env.gsub!(/^REDIS_PORT=.*$/, "REDIS_PORT=#{redis_port}")
133
+ end
134
+
135
+ def replace_smtp_host_port(env)
136
+ env.gsub!(/^SMTP_HOSTNAME=.*$/, 'SMTP_HOSTNAME=localhost')
137
+ env.gsub!(/^SMTP_PORT=.*$/, "SMTP_PORT=#{smtp_port}")
138
+ end
139
+
140
+ def db_port
141
+ result = run_compose_command :port, :db, 5432
142
+ result.split(':').last.strip
143
+ end
144
+
145
+ def redis_port
146
+ result = run_compose_command :port, :redis, 6379
147
+ result.split(':').last.strip
148
+ end
149
+
150
+ def smtp_port
151
+ result = run_compose_command :port, :et, 1025
152
+ result.split(':').last.strip
153
+ end
100
154
  end
101
155
  end
@@ -1,3 +1,3 @@
1
1
  module EtFullSystem
2
- VERSION = "1.0.0.pre30"
2
+ VERSION = "1.0.0.pre31"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: et_full_system
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0.pre30
4
+ version: 1.0.0.pre31
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gary Taylor