aggkit 0.3.1 → 0.3.1.8768
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 +5 -5
- data/Gemfile.lock +1 -1
- data/bin/aggci +8 -0
- data/bin/aggwait +20 -0
- data/lib/aggkit/ci.rb +9 -0
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: da7e110db65fee090004aa89ebe7b9e51d61b29d
|
4
|
+
data.tar.gz: a23634dedbc61ead7fdf2fd82db903d54a9db349
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: fc6a2f04341e21addd3188c4902802edf68c25740c55e6986f4c2fd8005e54b2c8bf1bd34aa6404d6c3a5d458810f0e6a4e1c87f040c001d9fcd572a12ee4ff7
|
7
|
+
data.tar.gz: 5cd039ed3153e03b5f1c8eec26d3058df0d28128a6709155334424215bdc5508f2fc290737bf698309fed4c0b509eb4142b63e21d4f5cf1329d97b3b6a718f64
|
data/Gemfile.lock
CHANGED
data/bin/aggci
CHANGED
@@ -22,6 +22,10 @@ parser = OptionParser.new do |o|
|
|
22
22
|
@opts[:pull] = parse_services(services)
|
23
23
|
end
|
24
24
|
|
25
|
+
o.on("--push-cache services", 'Push cache to docker regestry') do |services|
|
26
|
+
@opts[:push] = parse_services(services)
|
27
|
+
end
|
28
|
+
|
25
29
|
o.on("--promote services", 'Promote service images to --stage') do |services|
|
26
30
|
@opts[:promote] = parse_services(services)
|
27
31
|
end
|
@@ -63,6 +67,10 @@ if services = @opts[:pull]
|
|
63
67
|
raise "tag not defined" if @opts[:tag].to_s.empty?
|
64
68
|
pull_images_cache services, @opts[:tag]
|
65
69
|
exit 0
|
70
|
+
elsif services = @opts[:push]
|
71
|
+
raise "tag not defined" if @opts[:tag].to_s.empty?
|
72
|
+
push_images_cache services, @opts[:tag]
|
73
|
+
exit 0
|
66
74
|
elsif services = @opts[:promote]
|
67
75
|
raise "tag not defined" if @opts[:tag].to_s.empty?
|
68
76
|
raise "stage not defined" if @opts[:stage].to_s.empty?
|
data/bin/aggwait
CHANGED
@@ -76,6 +76,10 @@ OptionParser.new do |o|
|
|
76
76
|
@opts[:pass] = pass.strip
|
77
77
|
end
|
78
78
|
|
79
|
+
o.on('--docker=SOCKET', 'wait for docker available') do |socket|
|
80
|
+
@opts[:docker] = socket.strip
|
81
|
+
end
|
82
|
+
|
79
83
|
o.on('-t', '--timeout secs=15', 'Total timeout') do |timeout|
|
80
84
|
@opts[:timeout] = timeout.to_i
|
81
85
|
end
|
@@ -208,6 +212,16 @@ def wait_for_file(file = @opts[:file], timeout = @opts[:timeout])
|
|
208
212
|
yield(ret)
|
209
213
|
end
|
210
214
|
|
215
|
+
def wait_for_docker(socket = @opts[:docket], timeout = @opts[:timeout])
|
216
|
+
log("Waiting for Docker on: #{socket}")
|
217
|
+
ret = wait_for timeout do
|
218
|
+
cmd = "DOCKER_HOST=#{socket} docker info > /dev/null 2>&1"
|
219
|
+
system(cmd)
|
220
|
+
$?.success?
|
221
|
+
end
|
222
|
+
yield(ret)
|
223
|
+
end
|
224
|
+
|
211
225
|
if @opts[:tb]
|
212
226
|
wait_for_tcp do |success|
|
213
227
|
if success
|
@@ -260,3 +274,9 @@ if @opts[:file]
|
|
260
274
|
complete!(success)
|
261
275
|
end
|
262
276
|
end
|
277
|
+
|
278
|
+
if @opts[:docker]
|
279
|
+
wait_for_docker(@opts[:docker], @opts[:timeout]) do |success|
|
280
|
+
complete!(success)
|
281
|
+
end
|
282
|
+
end
|
data/lib/aggkit/ci.rb
CHANGED
@@ -175,6 +175,7 @@ module Aggkit
|
|
175
175
|
def pull_images_cache services, tag
|
176
176
|
log_action "Puling images#{[services].flatten.inspect} from cache...."
|
177
177
|
[services].flatten.each do |service|
|
178
|
+
execute("docker pull #{workimage(service, tag)} 2> /dev/null || true")
|
178
179
|
execute("docker pull #{devimage(service, tag)} 2> /dev/null || true")
|
179
180
|
execute("docker pull #{stageimage(service, tag)} 2> /dev/null || true")
|
180
181
|
execute("docker pull #{releaseimage(service, tag)} 2> /dev/null || true")
|
@@ -184,6 +185,14 @@ module Aggkit
|
|
184
185
|
end
|
185
186
|
end
|
186
187
|
|
188
|
+
# Залить образы в репозиторий
|
189
|
+
def push_images_cache services, tag
|
190
|
+
log_action "Pushing images#{[services].flatten.inspect} to cache...."
|
191
|
+
[services].flatten.each do |service|
|
192
|
+
tagimage! workimage(service, tag), workimage(service, tag), push: true
|
193
|
+
end
|
194
|
+
end
|
195
|
+
|
187
196
|
#Растегировать все образы для дальнейшего удаления. Помечает как latest для поддержки кеширования docker
|
188
197
|
def clean_services services, tag
|
189
198
|
[services].flatten.each do |service|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: aggkit
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.1
|
4
|
+
version: 0.3.1.8768
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Godko Ivan
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2019-02-
|
12
|
+
date: 2019-02-20 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: diplomat
|
@@ -189,7 +189,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
189
189
|
version: '0'
|
190
190
|
requirements: []
|
191
191
|
rubyforge_project:
|
192
|
-
rubygems_version: 2.
|
192
|
+
rubygems_version: 2.6.3
|
193
193
|
signing_key:
|
194
194
|
specification_version: 4
|
195
195
|
summary: Helper scripts for work with docker and consul in Aggredator
|