smartcloud 0.2.4 → 0.3.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.
- checksums.yaml +4 -4
- data/lib/smartcloud/apps/rails.rb +1 -1
- data/lib/smartcloud/boot.rb +1 -0
- data/lib/smartcloud/credentials.rb +3 -0
- data/lib/smartcloud/grids/elasticsearch.rb +91 -0
- data/lib/smartcloud/grids/grid-elasticsearch/.keep +0 -0
- data/lib/smartcloud/machine.rb +14 -0
- data/lib/smartcloud/templates/dotsmartcloud/grids/grid-elasticsearch/data/.keep +0 -0
- data/lib/smartcloud/version.rb +1 -1
- metadata +5 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 85369e5e6c9d09e3120c224b6032b3498bd4d7f9fa896245b2f65f601f9c6c88
|
4
|
+
data.tar.gz: cde8d32810801ed981f0359dcc82b2fb837cdd10c79c9524c9db248f9fe6379e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f972998785f3eb1931992ae1512e1510f363151fee1c3a328fc422a15a5351bdd1d120f149ee43636dadafcdbdde33f8f906fb1c88db045b6b1c4530bb1c4ed6
|
7
|
+
data.tar.gz: d87aa2dec7bb4620bf5ecc9329afe1b53335da305b21e4b0035b81d65fec755243583bde24184cdfeaca560ad7b95ad943aa1fa22f3e1dfbeb2d4296e1f29208
|
@@ -63,8 +63,8 @@ module Smartcloud
|
|
63
63
|
--network='nginx-network' \
|
64
64
|
smartcloud/buildpacks/rails", out: File::NULL)
|
65
65
|
|
66
|
-
# system("docker network connect solr-network #{new_container}")
|
67
66
|
system("docker network connect mysql-network #{new_container}")
|
67
|
+
system("docker network connect elasticsearch-network #{new_container}")
|
68
68
|
|
69
69
|
if system("docker start --attach #{new_container}")
|
70
70
|
logger.debug "Starting Web Server ..."
|
data/lib/smartcloud/boot.rb
CHANGED
@@ -0,0 +1,91 @@
|
|
1
|
+
# The main Smartcloud Grids Elasticsearch driver
|
2
|
+
module Smartcloud
|
3
|
+
module Grids
|
4
|
+
class Elasticsearch < Smartcloud::Base
|
5
|
+
def initialize
|
6
|
+
end
|
7
|
+
|
8
|
+
def install
|
9
|
+
self.uninstall
|
10
|
+
|
11
|
+
print "-----> Creating settings for elasticsearch ... "
|
12
|
+
|
13
|
+
vm_max_map_count_filepath = "~/.smartcloud/grids/grid-elasticsearch/vm_max_map_count"
|
14
|
+
ssh = Smartcloud::SSH.new
|
15
|
+
ssh.run "sudo sysctl -b vm.max_map_count > #{vm_max_map_count_filepath}"
|
16
|
+
ssh.run "sudo sysctl -w vm.max_map_count=262144"
|
17
|
+
|
18
|
+
puts "done"
|
19
|
+
end
|
20
|
+
|
21
|
+
def uninstall
|
22
|
+
print "-----> Removing settings for elasticsearch ... "
|
23
|
+
|
24
|
+
vm_max_map_count_filepath = "~/.smartcloud/grids/grid-elasticsearch/vm_max_map_count"
|
25
|
+
ssh = Smartcloud::SSH.new
|
26
|
+
ssh.run "test -f #{vm_max_map_count_filepath} && sudo sysctl -w vm.max_map_count=$(cat #{vm_max_map_count_filepath})"
|
27
|
+
ssh.run "test -f #{vm_max_map_count_filepath} && rm #{vm_max_map_count_filepath}"
|
28
|
+
|
29
|
+
puts "done"
|
30
|
+
end
|
31
|
+
|
32
|
+
def self.up(*args)
|
33
|
+
args.flatten!
|
34
|
+
exposed = args.empty? ? '' : args.shift
|
35
|
+
|
36
|
+
if Smartcloud::Docker.running?
|
37
|
+
# Creating networks
|
38
|
+
unless system("docker network inspect elasticsearch-network", [:out, :err] => File::NULL)
|
39
|
+
print "-----> Creating network elasticsearch-network ... "
|
40
|
+
if system("docker network create elasticsearch-network", out: File::NULL)
|
41
|
+
puts "done"
|
42
|
+
end
|
43
|
+
end
|
44
|
+
|
45
|
+
# Creating & Starting containers
|
46
|
+
print "-----> Creating container elasticsearch ... "
|
47
|
+
if system("docker create \
|
48
|
+
--name='elasticsearch' \
|
49
|
+
--env discovery.type=single-node \
|
50
|
+
--env cluster.name=elasticsearch-cluster \
|
51
|
+
--env bootstrap.memory_lock=true \
|
52
|
+
--env 'ES_JAVA_OPTS=-Xms512m -Xmx512m -Des.enforce.bootstrap.checks=true' \
|
53
|
+
--ulimit memlock=-1:-1 \
|
54
|
+
--user `id -u`:`id -g` \
|
55
|
+
#{"--publish='#{Smartcloud.credentials.elasticsearch[:port]}:#{Smartcloud.credentials.elasticsearch[:port]}'" if exposed == '--exposed'} \
|
56
|
+
--volume='#{Smartcloud.config.user_home_path}/.smartcloud/grids/grid-elasticsearch/data:/usr/share/elasticsearch/data' \
|
57
|
+
--restart='always' \
|
58
|
+
--network='elasticsearch-network' \
|
59
|
+
elasticsearch:7.4.1", out: File::NULL)
|
60
|
+
|
61
|
+
puts "done"
|
62
|
+
print "-----> Starting container elasticsearch ... "
|
63
|
+
if system("docker start elasticsearch", out: File::NULL)
|
64
|
+
puts "done"
|
65
|
+
end
|
66
|
+
end
|
67
|
+
end
|
68
|
+
end
|
69
|
+
|
70
|
+
def self.down
|
71
|
+
if Smartcloud::Docker.running?
|
72
|
+
# Stopping & Removing containers - in reverse order
|
73
|
+
print "-----> Stopping container elasticsearch ... "
|
74
|
+
if system("docker stop 'elasticsearch'", out: File::NULL)
|
75
|
+
puts "done"
|
76
|
+
print "-----> Removing container elasticsearch ... "
|
77
|
+
if system("docker rm 'elasticsearch'", out: File::NULL)
|
78
|
+
puts "done"
|
79
|
+
end
|
80
|
+
end
|
81
|
+
|
82
|
+
# Removing networks
|
83
|
+
print "-----> Removing network elasticsearch-network ... "
|
84
|
+
if system("docker network rm elasticsearch-network", out: File::NULL)
|
85
|
+
puts "done"
|
86
|
+
end
|
87
|
+
end
|
88
|
+
end
|
89
|
+
end
|
90
|
+
end
|
91
|
+
end
|
File without changes
|
data/lib/smartcloud/machine.rb
CHANGED
@@ -28,9 +28,15 @@ module Smartcloud
|
|
28
28
|
ssh = Smartcloud::SSH.new
|
29
29
|
ssh.run "smartcloud buildpacker install"
|
30
30
|
ssh.run "smartcloud prereceiver install"
|
31
|
+
|
32
|
+
elasticsearch = Smartcloud::Grids::Elasticsearch.new
|
33
|
+
elasticsearch.install
|
31
34
|
end
|
32
35
|
|
33
36
|
def stop
|
37
|
+
elasticsearch = Smartcloud::Grids::Elasticsearch.new
|
38
|
+
elasticsearch.uninstall
|
39
|
+
|
34
40
|
ssh = Smartcloud::SSH.new
|
35
41
|
ssh.run "smartcloud prereceiver uninstall"
|
36
42
|
ssh.run "smartcloud buildpacker uninstall"
|
@@ -175,6 +181,10 @@ module Smartcloud
|
|
175
181
|
|
176
182
|
'grids',
|
177
183
|
|
184
|
+
'grids/grid-elasticsearch',
|
185
|
+
'grids/grid-elasticsearch/vm_max_map_count',
|
186
|
+
'grids/grid-elasticsearch/data/***',
|
187
|
+
|
178
188
|
'grids/grid-mysql',
|
179
189
|
'grids/grid-mysql/data/***',
|
180
190
|
|
@@ -206,6 +216,10 @@ module Smartcloud
|
|
206
216
|
|
207
217
|
'grids',
|
208
218
|
|
219
|
+
'grids/grid-elasticsearch',
|
220
|
+
'grids/grid-elasticsearch/data',
|
221
|
+
'grids/grid-elasticsearch/data/.keep',
|
222
|
+
|
209
223
|
'grids/grid-mysql',
|
210
224
|
'grids/grid-mysql/data',
|
211
225
|
'grids/grid-mysql/data/.keep',
|
File without changes
|
data/lib/smartcloud/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: smartcloud
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Timeboard
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-
|
11
|
+
date: 2019-11-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: net-ssh
|
@@ -85,6 +85,8 @@ files:
|
|
85
85
|
- lib/smartcloud/engine.rb
|
86
86
|
- lib/smartcloud/engine/Dockerfile
|
87
87
|
- lib/smartcloud/engine/buildpacks/rails/Dockerfile
|
88
|
+
- lib/smartcloud/grids/elasticsearch.rb
|
89
|
+
- lib/smartcloud/grids/grid-elasticsearch/.keep
|
88
90
|
- lib/smartcloud/grids/grid-mysql/docker-entrypoint-initdb.d/.keep
|
89
91
|
- lib/smartcloud/grids/grid-nginx/.keep
|
90
92
|
- lib/smartcloud/grids/grid-prereceiver/Dockerfile
|
@@ -273,6 +275,7 @@ files:
|
|
273
275
|
- lib/smartcloud/templates/dotsmartcloud/bin/smartcloud.sh
|
274
276
|
- lib/smartcloud/templates/dotsmartcloud/config/environment.rb
|
275
277
|
- lib/smartcloud/templates/dotsmartcloud/config/users.yml
|
278
|
+
- lib/smartcloud/templates/dotsmartcloud/grids/grid-elasticsearch/data/.keep
|
276
279
|
- lib/smartcloud/templates/dotsmartcloud/grids/grid-mysql/data/.keep
|
277
280
|
- lib/smartcloud/templates/dotsmartcloud/grids/grid-nginx/certificates/.keep
|
278
281
|
- lib/smartcloud/templates/dotsmartcloud/grids/grid-nginx/fastcgi.conf
|