docker_task 0.1.2 → 0.1.2.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: de7a48febd51c58d4f82de385472a2e6fd82cbae
4
- data.tar.gz: ac45b1cceac6624362c841a3ad2ae6b08d3ee2af
3
+ metadata.gz: a729074b69c87fda93bd2e17f318b05489e562ff
4
+ data.tar.gz: 43873b1e3503531e5bc20fa2d9373591330e73ac
5
5
  SHA512:
6
- metadata.gz: d5e8be98ea06453f09a342a8a64b10d44108f25e2939236df4765845dcc2f3aa1345164c51ef14d837bbc1d84ed211c5c5776c2e8479b3a07b64ca5e6b6f2e3b
7
- data.tar.gz: 8597d52ed58d07413a554ee41415963b9073b8578e58b2727c4561bf575bdb8eab62a20133adc1e5fbbb98794d3ea9e55110b57ca6c5819a116ef74b6af68ced
6
+ metadata.gz: 640610b2f3218226aab2bf6b1f8dedc6bed1e8939b3518ae945669bdf3bd891a8e58a3b1f295280be711ab90783756341525dadb1b2fde033ce61d0b2d978727
7
+ data.tar.gz: f1a0159342a7f0e64f7a2763752105ebc863db1edf949e2cbd47d871ea4a2e27d2a46284fe90032d5ec99d533505d4aac2a8b825e02d10706b40a09dc474ae77
@@ -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 = '%s/%s' % [ @options[:registry], @options[: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 = '%s/%s' % [ @options[:registry], @options[:push_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 = '%s/%s' % [ @options[:registry], @options[:push_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 'remove' do
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' % [ DOCKER_CMD, cmd ]
209
+ sh '%s %s' % [ docker_cmd, cmd ]
191
210
  end
192
211
 
193
212
  def invoke_task(tname)
@@ -1,3 +1,3 @@
1
1
  module DockerTask
2
- VERSION = "0.1.2"
2
+ VERSION = "0.1.2.1"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: docker_task
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mark John Buenconsejo