docker-api 1.9.0 → 1.9.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/README.md +22 -0
- data/lib/docker.rb +10 -9
- data/lib/docker/rake_task.rb +30 -0
- data/lib/docker/version.rb +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: edade4b46130ae53c3aac96bed39d36b75458ee8
|
4
|
+
data.tar.gz: c3c9cbbac2ba8dd1341fbd6c3d880f0bad2c07f8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a44e1785d0b9211ed4a90713cdf21de767333c7c0b2f14c8a3fb8512cae66606365d152ead59a050a16d4862a4b8d411fd1fcfec305c93d14264cb2198bcb9da
|
7
|
+
data.tar.gz: 82e5fcdc52be6a81fae97b8b191f94faade6e94dcb330dacfe74c8498511e7882f6e7dc1d484187d27c96cd2762b509758ebd589fc15dea05b6dc8a507e61eb9
|
data/README.md
CHANGED
@@ -269,5 +269,27 @@ require 'docker'
|
|
269
269
|
Docker::Container.all({}, Docker::Connection.new('http://example.com:4243', {}))
|
270
270
|
```
|
271
271
|
|
272
|
+
## Rake Task
|
273
|
+
|
274
|
+
To create images through `rake`, a DSL task is provided. For example:
|
275
|
+
|
276
|
+
|
277
|
+
```ruby
|
278
|
+
require 'rake'
|
279
|
+
require 'docker'
|
280
|
+
|
281
|
+
image 'repo:tag' do
|
282
|
+
image = Docker::Image.create('fromImage' => 'repo', 'tag' => 'old_tag')
|
283
|
+
image = Docker::Image.run('rm -rf /etc').commit
|
284
|
+
image.tag('repo' => 'repo', 'tag' => 'tag')
|
285
|
+
end
|
286
|
+
|
287
|
+
image 'repo:new_tag' => 'repo:tag' do
|
288
|
+
image = Docker::Image.create('fromImage' => 'repo', 'tag' => 'tag')
|
289
|
+
image = image.insert_local('localPath' => 'some-file.tar.gz', 'outputPath' => '/')
|
290
|
+
image.tag('repo' => 'repo', 'tag' => 'new_tag')
|
291
|
+
end
|
292
|
+
```
|
293
|
+
|
272
294
|
## Known Issues
|
273
295
|
- `Docker::Container#attach` cannot attach to STDIN
|
data/lib/docker.rb
CHANGED
@@ -6,21 +6,22 @@ require 'base64'
|
|
6
6
|
require 'rubygems/package'
|
7
7
|
require 'archive/tar/minitar'
|
8
8
|
require 'uri'
|
9
|
-
require 'docker/version'
|
10
9
|
|
11
10
|
# The top-level module for this gem. It's purpose is to hold global
|
12
11
|
# configuration variables that are used as defaults in other classes.
|
13
12
|
module Docker
|
14
13
|
attr_accessor :creds, :logger
|
15
14
|
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
15
|
+
require 'docker/error'
|
16
|
+
require 'docker/connection'
|
17
|
+
require 'docker/base'
|
18
|
+
require 'docker/container'
|
19
|
+
require 'docker/event'
|
20
|
+
require 'docker/image'
|
21
|
+
require 'docker/messages'
|
22
|
+
require 'docker/util'
|
23
|
+
require 'docker/version'
|
24
|
+
require 'docker/rake_task' if defined?(Rake)
|
24
25
|
|
25
26
|
def default_socket_url
|
26
27
|
'unix:///var/run/docker.sock'
|
@@ -0,0 +1,30 @@
|
|
1
|
+
require 'rake'
|
2
|
+
require 'docker'
|
3
|
+
|
4
|
+
# This class allows image-based tasks to be created.
|
5
|
+
class Docker::ImageTask
|
6
|
+
def needed?
|
7
|
+
Docker::Image.all(:all => true).any? { |image|
|
8
|
+
image['RepoTags'].include?(repo_tag)
|
9
|
+
}
|
10
|
+
end
|
11
|
+
|
12
|
+
def repo
|
13
|
+
name.split(':')[0]
|
14
|
+
end
|
15
|
+
|
16
|
+
def tag
|
17
|
+
name.split(':')[1] || 'latest'
|
18
|
+
end
|
19
|
+
|
20
|
+
def repo_tag
|
21
|
+
"#{repo}:#{tag}"
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
# Monkey patch Rake::DSL to add the `image` method.
|
26
|
+
module Rake::DSL
|
27
|
+
def image(*args, &block)
|
28
|
+
Docker::ImageTask.define_task(*args, &block)
|
29
|
+
end
|
30
|
+
end
|
data/lib/docker/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: docker-api
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.9.
|
4
|
+
version: 1.9.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Swipely, Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-03-
|
11
|
+
date: 2014-03-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: excon
|
@@ -161,6 +161,7 @@ files:
|
|
161
161
|
- lib/docker/event.rb
|
162
162
|
- lib/docker/image.rb
|
163
163
|
- lib/docker/messages.rb
|
164
|
+
- lib/docker/rake_task.rb
|
164
165
|
- lib/docker/util.rb
|
165
166
|
- lib/docker/version.rb
|
166
167
|
- spec/docker/connection_spec.rb
|