aggkit 0.3.1 → 0.3.1.8768
Sign up to get free protection for your applications and to get access to all the features.
- 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
|