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 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