et_full_system 1.0.0.pre30 → 1.0.0.pre31

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: 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