docker_task 0.1.2 → 0.1.2.1
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/docker_task/task.rb +24 -5
- data/lib/docker_task/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a729074b69c87fda93bd2e17f318b05489e562ff
|
4
|
+
data.tar.gz: 43873b1e3503531e5bc20fa2d9373591330e73ac
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 640610b2f3218226aab2bf6b1f8dedc6bed1e8939b3518ae945669bdf3bd891a8e58a3b1f295280be711ab90783756341525dadb1b2fde033ce61d0b2d978727
|
7
|
+
data.tar.gz: f1a0159342a7f0e64f7a2763752105ebc863db1edf949e2cbd47d871ea4a2e27d2a46284fe90032d5ec99d533505d4aac2a8b825e02d10706b40a09dc474ae77
|
data/lib/docker_task/task.rb
CHANGED
@@ -9,6 +9,7 @@ module DockerTask
|
|
9
9
|
}
|
10
10
|
|
11
11
|
DOCKER_CMD = 'docker'
|
12
|
+
GCLOUD_DOCKER_CMD = 'gcloud docker'
|
12
13
|
|
13
14
|
attr_reader :options
|
14
15
|
|
@@ -136,7 +137,7 @@ module DockerTask
|
|
136
137
|
fail "Mirror %s not found" % mk
|
137
138
|
end
|
138
139
|
else
|
139
|
-
push_repo =
|
140
|
+
push_repo = repo_with_registry(@options[:push_repo], @options[:registry])
|
140
141
|
end
|
141
142
|
|
142
143
|
docker_do 'tag %s %s' % [ @options[:image_name], push_repo ]
|
@@ -149,7 +150,7 @@ module DockerTask
|
|
149
150
|
desc 'Pull from registry based on push_repo options'
|
150
151
|
task :pull do
|
151
152
|
if @options[:push_repo]
|
152
|
-
pull_repo =
|
153
|
+
pull_repo = repo_with_registry(@options[:push_repo], @options[:registry])
|
153
154
|
|
154
155
|
docker_do 'pull %s' % pull_repo
|
155
156
|
docker_do 'tag %s %s' % [ pull_repo, @options[:image_name] ]
|
@@ -161,7 +162,7 @@ module DockerTask
|
|
161
162
|
desc 'Re-tag a local copy from latest remote (will not pull)'
|
162
163
|
task :retag do
|
163
164
|
if @options[:push_repo]
|
164
|
-
pull_repo =
|
165
|
+
pull_repo = repo_with_registry(@options[:push_repo], @options[:registry])
|
165
166
|
docker_do 'tag %s %s' % [ pull_repo, @options[:image_name] ]
|
166
167
|
else
|
167
168
|
puts 'Please specify a push_repo for this docker context'
|
@@ -175,19 +176,37 @@ module DockerTask
|
|
175
176
|
end
|
176
177
|
|
177
178
|
desc 'Stop and remove container'
|
178
|
-
task
|
179
|
+
task :remove do
|
179
180
|
docker_do 'kill %s' % container_name, :ignore_fail => true
|
180
181
|
docker_do 'rm %s' % container_name, :ignore_fail => true
|
181
182
|
end
|
182
183
|
end
|
183
184
|
end
|
184
185
|
|
186
|
+
def repo_with_registry(repo_name, registry = nil)
|
187
|
+
if registry.nil?
|
188
|
+
repo_name
|
189
|
+
else
|
190
|
+
'%s/%s' % [ registry, repo_name ]
|
191
|
+
end
|
192
|
+
end
|
193
|
+
|
194
|
+
def docker_cmd(registry = nil)
|
195
|
+
if registry.nil?
|
196
|
+
DOCKER_CMD
|
197
|
+
elsif registry =~ /\.grc\.io/
|
198
|
+
GCLOUD_DOCKER_CMD
|
199
|
+
else
|
200
|
+
DOCKER_CMD
|
201
|
+
end
|
202
|
+
end
|
203
|
+
|
185
204
|
def docker_do(cmd, opts = { })
|
186
205
|
if opts[:ignore_fail]
|
187
206
|
cmd += '; true'
|
188
207
|
end
|
189
208
|
|
190
|
-
sh '%s %s' % [
|
209
|
+
sh '%s %s' % [ docker_cmd, cmd ]
|
191
210
|
end
|
192
211
|
|
193
212
|
def invoke_task(tname)
|
data/lib/docker_task/version.rb
CHANGED