blackstack-deployer 1.2.2 → 1.2.6
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/blackstack-deployer.rb +34 -22
- metadata +26 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: be40fc26512412ab26ca2b7d21e48c8c82f128d080f7291d00d71ddd69abaca9
|
4
|
+
data.tar.gz: 308ab54f2f5a11e3cc06325308f1c0654b089f23e6f8582426d7e5b2d4b2337b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f83b42917544ebafe681e3bc9747f32ecc8ee355de7b727b5b466ede9223a85c846885e8c91dfa6b70f045bad474ddddb7a03c2879369be3c80902015d1ef400
|
7
|
+
data.tar.gz: 7165eeb3f074603b67dc2dbb2ba9f6f2a30d4f067eea595d7df103456b5bb1650d45e78760fdcdcc530231dd3b47b041eec1ddd2205705b176c4e7eedf76b498
|
data/lib/blackstack-deployer.rb
CHANGED
@@ -1,4 +1,6 @@
|
|
1
|
-
require 'blackstack-nodes'
|
1
|
+
#require 'blackstack-nodes'
|
2
|
+
require_relative 'blackstack-nodes'
|
3
|
+
|
2
4
|
require 'sequel'
|
3
5
|
|
4
6
|
module BlackStack
|
@@ -8,6 +10,11 @@ module BlackStack
|
|
8
10
|
@@nodes = []
|
9
11
|
@@routines = []
|
10
12
|
|
13
|
+
# set the logger
|
14
|
+
def self.set_logger(i_logger)
|
15
|
+
@@logger = i_logger
|
16
|
+
end
|
17
|
+
|
11
18
|
# get the logger assigned to the module
|
12
19
|
def self.logger
|
13
20
|
@@logger
|
@@ -66,6 +73,10 @@ module BlackStack
|
|
66
73
|
h[:deployment_routine] = self.deployment_routine
|
67
74
|
h
|
68
75
|
end # def to_hash
|
76
|
+
|
77
|
+
def deploy()
|
78
|
+
BlackStack::Deployer::run_routine(self.name, self.deployment_routine);
|
79
|
+
end
|
69
80
|
end # module NodeModule
|
70
81
|
|
71
82
|
# define attributes and methods of a deployer routine
|
@@ -134,8 +145,8 @@ module BlackStack
|
|
134
145
|
h = c.run(node)
|
135
146
|
ret << h
|
136
147
|
|
137
|
-
BlackStack::Deployer.logger.logs "Result: "
|
138
|
-
BlackStack::Deployer.logger.logf h.to_s
|
148
|
+
#BlackStack::Deployer.logger.logs "Result: "
|
149
|
+
#BlackStack::Deployer.logger.logf h.to_s
|
139
150
|
|
140
151
|
if h[:errors].size == 0
|
141
152
|
BlackStack::Deployer.logger.done
|
@@ -291,24 +302,16 @@ module BlackStack
|
|
291
302
|
end
|
292
303
|
end
|
293
304
|
|
294
|
-
|
295
|
-
if self.sudo
|
296
|
-
# escale the single quotes in the code variable
|
297
|
-
code.gsub!(/'/, "\\\\'")
|
298
|
-
|
299
|
-
if node.ssh_private_key_file.nil?
|
300
|
-
code = "echo '#{node.ssh_password.to_s.gsub("'", "\\\\'")}' | sudo -S su root -c '#{code.to_s}'"
|
301
|
-
else
|
302
|
-
code = "sudo -S su root -c '#{code.to_s}'"
|
303
|
-
end
|
304
|
-
else
|
305
|
-
code = code.to_s
|
306
|
-
end
|
305
|
+
#puts
|
307
306
|
#puts
|
308
307
|
#puts code
|
309
308
|
#exit(0)
|
310
|
-
|
311
|
-
|
309
|
+
#puts
|
310
|
+
#puts "SUDO: #{self.sudo}"
|
311
|
+
# running the command
|
312
|
+
output = node.exec(code, self.sudo)
|
313
|
+
#puts
|
314
|
+
#puts '1'
|
312
315
|
# validation: at least one of the matches should happen
|
313
316
|
if self.matches.size > 0
|
314
317
|
i = 0
|
@@ -594,21 +597,30 @@ module BlackStack
|
|
594
597
|
tlogger = BlackStack::Deployer::logger
|
595
598
|
# get list of `.sql` files in the directory `sql_path`, with a name higher than `last_filename`, sorted by name.
|
596
599
|
Dir.entries(@@folder).select {
|
597
|
-
|
|
600
|
+
|filename| filename =~ /\.sql$/ && filename > @@checkpoint.to_s
|
598
601
|
}.uniq.sort.each { |filename|
|
599
602
|
fullfilename = "#{@@folder}/#{filename}"
|
600
|
-
|
601
|
-
#puts File.open(fullfilename).read
|
603
|
+
|
602
604
|
tlogger.logs "#{fullfilename}... "
|
603
605
|
BlackStack::Deployer::DB::execute_sentences( File.open(fullfilename).read )
|
604
606
|
tlogger.done
|
607
|
+
|
608
|
+
tlogger.logs "Updating checkpoint... "
|
609
|
+
@@checkpoint = filename
|
610
|
+
tlogger.done
|
605
611
|
}
|
606
612
|
end # def
|
607
613
|
end # module DB
|
608
614
|
|
609
615
|
# deploying all db-updates and run all routines on all nodes
|
610
616
|
def self.deploy()
|
611
|
-
|
617
|
+
tlogger = BlackStack::Deployer::logger
|
618
|
+
|
619
|
+
@@nodes.each { |n|
|
620
|
+
tlogger.logs "Node #{n.name}... "
|
621
|
+
n.deploy()
|
622
|
+
tlogger.done
|
623
|
+
}
|
612
624
|
end # def
|
613
625
|
|
614
626
|
end # module Deployer
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: blackstack-deployer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.2.
|
4
|
+
version: 1.2.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Leandro Daniel Sardi
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-06-
|
11
|
+
date: 2022-06-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: blackstack-nodes
|
@@ -16,20 +16,40 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 1.2.
|
19
|
+
version: 1.2.5
|
20
20
|
- - ">="
|
21
21
|
- !ruby/object:Gem::Version
|
22
|
-
version: 1.2.
|
22
|
+
version: 1.2.5
|
23
23
|
type: :runtime
|
24
24
|
prerelease: false
|
25
25
|
version_requirements: !ruby/object:Gem::Requirement
|
26
26
|
requirements:
|
27
27
|
- - "~>"
|
28
28
|
- !ruby/object:Gem::Version
|
29
|
-
version: 1.2.
|
29
|
+
version: 1.2.5
|
30
30
|
- - ">="
|
31
31
|
- !ruby/object:Gem::Version
|
32
|
-
version: 1.2.
|
32
|
+
version: 1.2.5
|
33
|
+
- !ruby/object:Gem::Dependency
|
34
|
+
name: pg
|
35
|
+
requirement: !ruby/object:Gem::Requirement
|
36
|
+
requirements:
|
37
|
+
- - "~>"
|
38
|
+
- !ruby/object:Gem::Version
|
39
|
+
version: 1.3.5
|
40
|
+
- - ">="
|
41
|
+
- !ruby/object:Gem::Version
|
42
|
+
version: 1.3.5
|
43
|
+
type: :runtime
|
44
|
+
prerelease: false
|
45
|
+
version_requirements: !ruby/object:Gem::Requirement
|
46
|
+
requirements:
|
47
|
+
- - "~>"
|
48
|
+
- !ruby/object:Gem::Version
|
49
|
+
version: 1.3.5
|
50
|
+
- - ">="
|
51
|
+
- !ruby/object:Gem::Version
|
52
|
+
version: 1.3.5
|
33
53
|
- !ruby/object:Gem::Dependency
|
34
54
|
name: sequel
|
35
55
|
requirement: !ruby/object:Gem::Requirement
|