docker-api 1.7.6 → 1.8.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/lib/docker.rb +9 -9
- data/lib/docker/connection.rb +1 -1
- data/lib/docker/container.rb +1 -2
- data/lib/docker/image.rb +7 -6
- data/lib/docker/version.rb +2 -2
- data/spec/docker/connection_spec.rb +2 -2
- data/spec/docker/container_spec.rb +12 -10
- data/spec/docker/image_spec.rb +13 -13
- data/spec/docker_spec.rb +5 -4
- data/spec/vcr/Docker/_authenticate_/with_valid_credentials/logs_in_and_sets_the_creds.yml +1 -1
- data/spec/vcr/Docker/_info/returns_the_info_as_a_Hash.yml +17 -15
- data/spec/vcr/Docker/_validate_version/when_nothing_is_raised/validate_version_/.yml +17 -15
- data/spec/vcr/Docker/_version/returns_the_version_as_a_Hash.yml +17 -15
- data/spec/vcr/Docker_Container/_all/when_the_HTTP_response_is_a_200/materializes_each_Container_into_a_Docker_Container.yml +96 -46
- data/spec/vcr/Docker_Container/_attach/with_normal_sized_chunks/yields_each_chunk.yml +35 -37
- data/spec/vcr/Docker_Container/_attach/with_very_small_chunks/yields_each_chunk.yml +35 -37
- data/spec/vcr/Docker_Container/_changes/returns_the_changes_as_an_array.yml +60 -58
- data/spec/vcr/Docker_Container/_commit/creates_a_new_Image_from_the_Container_s_changes.yml +46 -47
- data/spec/vcr/Docker_Container/_commit/if_run_is_passed_it_saves_the_command_in_the_image/saves_the_command.yml +78 -81
- data/spec/vcr/Docker_Container/_copy/when_the_file_does_not_exist/raises_an_error.yml +77 -80
- data/spec/vcr/Docker_Container/_copy/when_the_input_is_a_directory/yields_each_chunk_of_the_tarred_directory.yml +91 -182
- data/spec/vcr/Docker_Container/_copy/when_the_input_is_a_file/yields_each_chunk_of_the_tarred_file.yml +80 -273
- data/spec/vcr/Docker_Container/_create/when_creating_a_container_named_bob/should_have_name_set_to_bob.yml +20 -15
- data/spec/vcr/Docker_Container/_create/when_the_Container_does_not_yet_exist/when_the_HTTP_request_returns_a_200/sets_the_id.yml +16 -16
- data/spec/vcr/Docker_Container/_delete/deletes_the_container.yml +41 -43
- data/spec/vcr/Docker_Container/_export/yields_each_chunk.yml +82759 -46
- data/spec/vcr/Docker_Container/_get/when_the_HTTP_response_is_a_200/materializes_the_Container_into_a_Docker_Container.yml +29 -30
- data/spec/vcr/Docker_Container/_json/returns_the_description_as_a_Hash.yml +29 -30
- data/spec/vcr/Docker_Container/_kill/kills_the_container.yml +69 -71
- data/spec/vcr/Docker_Container/_restart/restarts_the_container.yml +98 -102
- data/spec/vcr/Docker_Container/_run/when_the_Container_s_command_does_not_return_status_code_of_0/raises_an_error.yml +43 -44
- data/spec/vcr/Docker_Container/_run/when_the_Container_s_command_returns_a_status_code_of_0/creates_a_new_container_to_run_the_specified_command.yml +117 -122
- data/spec/vcr/Docker_Container/_start/starts_the_container.yml +58 -59
- data/spec/vcr/Docker_Container/_stop/stops_the_container.yml +81 -84
- data/spec/vcr/Docker_Container/_top/returns_the_top_commands_as_an_Array.yml +116 -87
- data/spec/vcr/Docker_Container/_wait/waits_for_the_command_to_finish.yml +43 -44
- data/spec/vcr/Docker_Container/_wait/when_an_argument_is_given/and_a_command_runs_for_too_long/raises_a_ServerError.yml +29 -30
- data/spec/vcr/Docker_Container/_wait/when_an_argument_is_given/sets_the_read_timeout_to_that_amount_of_time.yml +43 -44
- data/spec/vcr/Docker_Image/_all/materializes_each_Image_into_a_Docker_Image.yml +46 -32
- data/spec/vcr/Docker_Image/_build/with_a_valid_Dockerfile/with_a_block_capturing_build_output/calls_the_block_and_passes_build_output.yml +10 -9
- data/spec/vcr/Docker_Image/_build/with_a_valid_Dockerfile/with_specifying_a_repo_in_the_query_parameters/builds_an_image_and_tags_it.yml +42 -31
- data/spec/vcr/Docker_Image/_build/with_a_valid_Dockerfile/without_query_parameters/builds_an_image.yml +16 -16
- data/spec/vcr/Docker_Image/_build/with_an_invalid_Dockerfile/throws_a_UnexpectedResponseError.yml +17 -19
- data/spec/vcr/Docker_Image/_build_from_dir/with_a_valid_Dockerfile/with_a_block_capturing_build_output/calls_the_block_and_passes_build_output.yml +9 -8
- data/spec/vcr/Docker_Image/_build_from_dir/with_a_valid_Dockerfile/with_no_query_parameters/builds_the_image.yml +50 -52
- data/spec/vcr/Docker_Image/_build_from_dir/with_a_valid_Dockerfile/with_specifying_a_repo_in_the_query_parameters/builds_the_image_and_tags_it.yml +76 -66
- data/spec/vcr/Docker_Image/_create/when_the_Image_does_not_yet_exist_and_the_body_is_a_Hash/sets_the_id.yml +20 -18
- data/spec/vcr/Docker_Image/_get/when_the_image_does_exist/returns_the_new_image.yml +14 -15
- data/spec/vcr/Docker_Image/_history/returns_the_history_of_the_Image.yml +36 -32
- data/spec/vcr/Docker_Image/_insert/inserts_the_url_s_file_into_a_new_Image.yml +70 -86
- data/spec/vcr/Docker_Image/_insert_local/when_removing_intermediate_containers/creates_a_new_image.yml +69 -47
- data/spec/vcr/Docker_Image/_insert_local/when_removing_intermediate_containers/leave_no_intermediate_containers.yml +118 -47
- data/spec/vcr/Docker_Image/_insert_local/when_the_local_file_does_exist/creates_a_new_Image_that_has_that_file.yml +68 -70
- data/spec/vcr/Docker_Image/_insert_local/when_the_local_file_does_not_exist/raises_an_error.yml +16 -16
- data/spec/vcr/Docker_Image/_insert_local/when_there_are_multiple_files_passed/creates_a_new_Image_that_has_each_file.yml +70 -72
- data/spec/vcr/Docker_Image/_json/returns_additional_information_about_image_image.yml +33 -32
- data/spec/vcr/Docker_Image/_push/pushes_the_Image.yml +162 -105
- data/spec/vcr/Docker_Image/_remove/removes_the_Image.yml +53 -46
- data/spec/vcr/Docker_Image/_run/when_the_argument_is_a_String/splits_the_String_by_spaces_and_creates_a_new_Container.yml +54 -54
- data/spec/vcr/Docker_Image/_run/when_the_argument_is_an_Array/creates_a_new_Container.yml +54 -54
- data/spec/vcr/Docker_Image/_run/when_the_argument_is_nil/command_configured_in_image/should_normally_show_result_if_image_has_Cmd_configured.yml +46 -101
- data/spec/vcr/Docker_Image/_run/when_the_argument_is_nil/no_command_configured_in_image/should_raise_an_error_if_no_command_is_specified.yml +35 -35
- data/spec/vcr/Docker_Image/_search/materializes_each_Image_into_a_Docker_Image.yml +94 -35
- data/spec/vcr/Docker_Image/_tag/tags_the_image_with_the_repo_name.yml +32 -31
- metadata +29 -49
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: dc5ba28fab5aed18ec66531e1b33aa0cbec86e12
|
4
|
+
data.tar.gz: b860c92de1e24af1f431399b07ee529f7c1a73dc
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 3ab3594b2951e5789078ea05081a9f9dfdc595cd8b2de06cab2ca75c877e0f5936184076de080d8ce6d7c3aada2ce1a7244b0f76ae0042cff8997fdcce26836d
|
7
|
+
data.tar.gz: a239960f224a37afc14432b7e450dd26b374e3dea52d25b83fa161f204491efc40375f7343b3701f52eaff6356120f3c5a3815e3d1ba119df5c29188ec38b4af
|
data/lib/docker.rb
CHANGED
@@ -6,12 +6,21 @@ require 'base64'
|
|
6
6
|
require 'rubygems/package'
|
7
7
|
require 'archive/tar/minitar'
|
8
8
|
require 'uri'
|
9
|
+
require 'docker/version'
|
9
10
|
|
10
11
|
# The top-level module for this gem. It's purpose is to hold global
|
11
12
|
# configuration variables that are used as defaults in other classes.
|
12
13
|
module Docker
|
13
14
|
attr_accessor :creds, :logger
|
14
15
|
|
16
|
+
autoload :Connection, 'docker/connection'
|
17
|
+
autoload :Container, 'docker/container'
|
18
|
+
autoload :Error, 'docker/error'
|
19
|
+
autoload :Event, 'docker/event'
|
20
|
+
autoload :Image, 'docker/image'
|
21
|
+
autoload :Messages, 'docker/messages'
|
22
|
+
autoload :Util, 'docker/util'
|
23
|
+
|
15
24
|
def default_socket_url
|
16
25
|
'unix:///var/run/docker.sock'
|
17
26
|
end
|
@@ -80,12 +89,3 @@ module Docker
|
|
80
89
|
:connection, :reset_connection!, :version, :info,
|
81
90
|
:authenticate!, :validate_version!
|
82
91
|
end
|
83
|
-
|
84
|
-
require 'docker/version'
|
85
|
-
require 'docker/error'
|
86
|
-
require 'docker/util'
|
87
|
-
require 'docker/messages'
|
88
|
-
require 'docker/connection'
|
89
|
-
require 'docker/container'
|
90
|
-
require 'docker/image'
|
91
|
-
require 'docker/event'
|
data/lib/docker/connection.rb
CHANGED
data/lib/docker/container.rb
CHANGED
@@ -73,8 +73,7 @@ class Docker::Container
|
|
73
73
|
config = options.delete('run')
|
74
74
|
hash = Docker::Util.parse_json(connection.post('/commit',
|
75
75
|
options,
|
76
|
-
:body => config.to_json)
|
77
|
-
)
|
76
|
+
:body => config.to_json))
|
78
77
|
Docker::Image.send(:new, self.connection, hash['Id'])
|
79
78
|
end
|
80
79
|
|
data/lib/docker/image.rb
CHANGED
@@ -23,9 +23,9 @@ class Docker::Image
|
|
23
23
|
begin
|
24
24
|
Docker::Container.create(opts, connection)
|
25
25
|
.tap(&:start!)
|
26
|
-
rescue ServerError
|
26
|
+
rescue ServerError => ex
|
27
27
|
if cmd
|
28
|
-
raise
|
28
|
+
raise ex
|
29
29
|
else
|
30
30
|
raise ServerError, "No command specified."
|
31
31
|
end
|
@@ -34,13 +34,14 @@ class Docker::Image
|
|
34
34
|
|
35
35
|
# Push the Image to the Docker registry.
|
36
36
|
def push(creds = nil, options = {})
|
37
|
-
repository = self.info['
|
37
|
+
repository = self.info['RepoTags'].first.split(/:/)[0] rescue nil
|
38
|
+
|
38
39
|
unless repository
|
39
40
|
raise ArgumentError
|
40
41
|
"Image does not have a name to push, got: #{repository}."
|
41
42
|
end
|
42
43
|
|
43
|
-
credentials =
|
44
|
+
credentials = creds || Docker.creds
|
44
45
|
headers = Docker::Util.build_auth_header(credentials)
|
45
46
|
connection.post(
|
46
47
|
"/images/#{repository}/push",
|
@@ -58,7 +59,7 @@ class Docker::Image
|
|
58
59
|
# Insert a file into the Image, returns a new Image that has that file.
|
59
60
|
def insert(query = {})
|
60
61
|
body = connection.post(path_for(:insert), query)
|
61
|
-
if (id = body.match(/{"
|
62
|
+
if (id = body.match(/{"status":"([a-f0-9]+)"}\z/)).nil? || id[1].empty?
|
62
63
|
raise UnexpectedResponseError, "Could not find Id in '#{body}'"
|
63
64
|
else
|
64
65
|
self.class.send(:new, connection, id[1])
|
@@ -140,7 +141,7 @@ class Docker::Image
|
|
140
141
|
def search(query = {}, connection = Docker.connection)
|
141
142
|
body = connection.get('/images/search', query)
|
142
143
|
hashes = Docker::Util.parse_json(body) || []
|
143
|
-
hashes.map { |hash| new(connection, hash['
|
144
|
+
hashes.map { |hash| new(connection, hash['name']) }
|
144
145
|
end
|
145
146
|
|
146
147
|
# Import an Image from the output of Docker::Container#export.
|
data/lib/docker/version.rb
CHANGED
@@ -53,8 +53,8 @@ describe Docker::Connection do
|
|
53
53
|
let(:query) { { :all => true } }
|
54
54
|
let(:options) { { :expects => 201, :lol => true } }
|
55
55
|
let(:body) { rand(10000000) }
|
56
|
-
let(:resource) {
|
57
|
-
let(:response) {
|
56
|
+
let(:resource) { double(:resource) }
|
57
|
+
let(:response) { double(:response, :body => body) }
|
58
58
|
let(:expected_hash) {
|
59
59
|
{
|
60
60
|
:method => method,
|
@@ -55,18 +55,18 @@ describe Docker::Container do
|
|
55
55
|
|
56
56
|
it 'returns the changes as an array', :vcr do
|
57
57
|
changes.should == [
|
58
|
-
{
|
59
|
-
"Path" => "/root",
|
60
|
-
"Kind" => 2
|
61
|
-
},
|
62
58
|
{
|
63
59
|
"Path" => "/dev",
|
64
60
|
"Kind" => 0
|
65
61
|
},
|
66
62
|
{
|
67
63
|
"Path" => "/dev/kmsg",
|
68
|
-
"Kind" =>
|
69
|
-
}
|
64
|
+
"Kind" => 0
|
65
|
+
},
|
66
|
+
{
|
67
|
+
"Path" => "/root",
|
68
|
+
"Kind" => 2
|
69
|
+
},
|
70
70
|
]
|
71
71
|
end
|
72
72
|
end
|
@@ -79,12 +79,12 @@ describe Docker::Container do
|
|
79
79
|
let(:top) { sleep 1; container.top }
|
80
80
|
let!(:container) { image.run('/while') }
|
81
81
|
|
82
|
-
after { container.kill; image.remove }
|
82
|
+
after { container.kill; container.delete; image.remove }
|
83
83
|
|
84
84
|
it 'returns the top commands as an Array', :vcr do
|
85
85
|
top.should be_a Array
|
86
86
|
top.should_not be_empty
|
87
|
-
top.first.keys.should == %w(PID TTY TIME CMD)
|
87
|
+
top.first.keys.should == %w(UID PID PPID C STIME TTY TIME CMD)
|
88
88
|
end
|
89
89
|
end
|
90
90
|
|
@@ -97,6 +97,7 @@ describe Docker::Container do
|
|
97
97
|
|
98
98
|
context 'when the file does not exist' do
|
99
99
|
it 'raises an error', :vcr do
|
100
|
+
pending 'Docker no longer returns a 500 when the file does not exist'
|
100
101
|
expect { subject.copy('/lol/not/a/real/file') { |chunk| puts chunk } }
|
101
102
|
.to raise_error
|
102
103
|
end
|
@@ -311,9 +312,10 @@ describe Docker::Container do
|
|
311
312
|
end
|
312
313
|
|
313
314
|
context 'if run is passed, it saves the command in the image', :vcr do
|
314
|
-
let(:image) { subject.commit
|
315
|
+
let(:image) { subject.commit }
|
315
316
|
it 'saves the command' do
|
316
|
-
|
317
|
+
pending 'This is no longer working in v0.8'
|
318
|
+
expect(image.run('pwd').attach).to eql [["/\n"],[]]
|
317
319
|
end
|
318
320
|
end
|
319
321
|
|
data/spec/docker/image_spec.rb
CHANGED
@@ -103,13 +103,12 @@ describe Docker::Image do
|
|
103
103
|
end
|
104
104
|
|
105
105
|
describe '#push' do
|
106
|
-
subject { described_class.create('fromImage' => 'base') }
|
107
106
|
let(:credentials) {
|
108
107
|
{
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
108
|
+
'username' => 'nahiluhmot',
|
109
|
+
'password' => '******',
|
110
|
+
'serveraddress' => 'https://index.docker.io/v1',
|
111
|
+
'email' => 'tomhulihan@swipely.com'
|
113
112
|
}
|
114
113
|
}
|
115
114
|
let(:base_image) {
|
@@ -118,11 +117,10 @@ describe Docker::Image do
|
|
118
117
|
let(:container) {
|
119
118
|
base_image.run('true')
|
120
119
|
}
|
121
|
-
let(:repo_name) { 'test/base' }
|
122
120
|
let(:new_image) {
|
123
|
-
container.commit('repo' =>
|
124
|
-
Docker::Image.all.select { |image|
|
125
|
-
image.info['
|
121
|
+
container.commit('repo' => 'nahiluhmot/base2')
|
122
|
+
Docker::Image.all(:all => true).select { |image|
|
123
|
+
image.info['RepoTags'].include?('nahiluhmot/base2:latest')
|
126
124
|
}.first
|
127
125
|
}
|
128
126
|
|
@@ -193,7 +191,9 @@ describe Docker::Image do
|
|
193
191
|
let(:container) {Docker::Container.create('Cmd' => %w[true],
|
194
192
|
'Image' => 'base')}
|
195
193
|
subject { container.commit('run' => {"Cmd" => %w[pwd]}) }
|
194
|
+
|
196
195
|
it 'should normally show result if image has Cmd configured' do
|
196
|
+
pending 'The docs say this should work, but it clearly does not'
|
197
197
|
expect(output).to eql [["/\n"],[]]
|
198
198
|
end
|
199
199
|
end
|
@@ -333,7 +333,7 @@ describe Docker::Image do
|
|
333
333
|
expect(image).to be_a Docker::Image
|
334
334
|
expect(image.id).to_not be_nil
|
335
335
|
expect(image.connection).to be_a Docker::Connection
|
336
|
-
expect(images.first.info["
|
336
|
+
expect(images.first.info["RepoTags"]).to eq(["swipely/base:latest"])
|
337
337
|
end
|
338
338
|
end
|
339
339
|
|
@@ -343,7 +343,7 @@ describe Docker::Image do
|
|
343
343
|
let!(:image) { subject.build("FROM base\n", &block) }
|
344
344
|
|
345
345
|
it 'calls the block and passes build output', :vcr do
|
346
|
-
expect(build_output).to
|
346
|
+
expect(build_output).to match(/Step 0 : FROM base/)
|
347
347
|
end
|
348
348
|
end
|
349
349
|
end
|
@@ -378,7 +378,7 @@ describe Docker::Image do
|
|
378
378
|
let(:opts) { { "t" => "swipely/base2" } }
|
379
379
|
it 'builds the image and tags it', :vcr do
|
380
380
|
expect(output).to eq([[docker_file.read],[]])
|
381
|
-
expect(images.first.info["
|
381
|
+
expect(images.first.info["RepoTags"]).to eq(["swipely/base2:latest"])
|
382
382
|
end
|
383
383
|
end
|
384
384
|
|
@@ -388,7 +388,7 @@ describe Docker::Image do
|
|
388
388
|
|
389
389
|
it 'calls the block and passes build output', :vcr do
|
390
390
|
image # Create the image variable, which is lazy-loaded by Rspec
|
391
|
-
expect(build_output).to
|
391
|
+
expect(build_output).to match(/Step 0 : from base/)
|
392
392
|
end
|
393
393
|
end
|
394
394
|
end
|
data/spec/docker_spec.rb
CHANGED
@@ -59,11 +59,12 @@ describe Docker do
|
|
59
59
|
subject.url = nil
|
60
60
|
subject.options = nil
|
61
61
|
end
|
62
|
+
let(:expected) { %w[Arch GitCommit GoVersion KernelVersion Os Version] }
|
62
63
|
|
63
64
|
let(:version) { subject.version }
|
64
65
|
it 'returns the version as a Hash', :vcr do
|
65
66
|
version.should be_a Hash
|
66
|
-
version.keys.sort.should ==
|
67
|
+
version.keys.sort.should == expected
|
67
68
|
end
|
68
69
|
end
|
69
70
|
|
@@ -75,9 +76,9 @@ describe Docker do
|
|
75
76
|
|
76
77
|
let(:info) { subject.info }
|
77
78
|
let(:keys) do
|
78
|
-
%w(Containers Debug
|
79
|
-
|
80
|
-
NGoroutines)
|
79
|
+
%w(Containers Debug Driver DriverStatus ExecutionDriver IPv4Forwarding
|
80
|
+
Images IndexServerAddress InitPath InitSha1 KernelVersion MemoryLimit
|
81
|
+
NEventsListener NFd NGoroutines SwapLimit)
|
81
82
|
end
|
82
83
|
|
83
84
|
it 'returns the info as a Hash', :vcr do
|
@@ -2,7 +2,7 @@
|
|
2
2
|
http_interactions:
|
3
3
|
- request:
|
4
4
|
method: post
|
5
|
-
uri: unix:///var/run/docker.sock/v1.
|
5
|
+
uri: unix:///var/run/docker.sock/v1.8/auth
|
6
6
|
body:
|
7
7
|
encoding: UTF-8
|
8
8
|
string: ! '{"username":"test","password":"account","email":"test@test.com","serveraddress":"https://index.docker.io/v1/"}'
|
@@ -2,13 +2,13 @@
|
|
2
2
|
http_interactions:
|
3
3
|
- request:
|
4
4
|
method: get
|
5
|
-
uri: unix:///var/run/docker.sock/v1.
|
5
|
+
uri: unix:///var/run/docker.sock/v1.8/info
|
6
6
|
body:
|
7
7
|
encoding: US-ASCII
|
8
8
|
string: ''
|
9
9
|
headers:
|
10
10
|
User-Agent:
|
11
|
-
- Swipely/Docker-API 1.6
|
11
|
+
- Swipely/Docker-API 1.7.6
|
12
12
|
Content-Type:
|
13
13
|
- text/plain
|
14
14
|
response:
|
@@ -16,18 +16,20 @@ http_interactions:
|
|
16
16
|
code: 200
|
17
17
|
message:
|
18
18
|
headers:
|
19
|
-
|
20
|
-
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
-
|
27
|
-
|
19
|
+
Content-Type:
|
20
|
+
- application/json
|
21
|
+
Job-Name:
|
22
|
+
- info
|
23
|
+
Date:
|
24
|
+
- Wed, 12 Feb 2014 17:06:43 GMT
|
25
|
+
Content-Length:
|
26
|
+
- '694'
|
27
|
+
Connection:
|
28
|
+
- close
|
28
29
|
body:
|
29
|
-
encoding:
|
30
|
-
string:
|
30
|
+
encoding: UTF-8
|
31
|
+
string: |
|
32
|
+
{"Containers":40,"Debug":0,"Driver":"devicemapper","DriverStatus":[["Pool Name","docker-8:4-394003-pool"],["Data file","/var/lib/docker/devicemapper/devicemapper/data"],["Metadata file","/var/lib/docker/devicemapper/devicemapper/metadata"],["Data Space Used","582.5 Mb"],["Data Space Total","102400.0 Mb"],["Metadata Space Used","3.4 Mb"],["Metadata Space Total","2048.0 Mb"]],"ExecutionDriver":"lxc-0.9.0","IPv4Forwarding":1,"Images":14,"IndexServerAddress":"https://index.docker.io/v1/","InitPath":"/usr/lib/docker/dockerinit","InitSha1":"c6e2619aa393a45c9d0851ef2740eb0d29368350","KernelVersion":"3.12.9-2-ARCH","MemoryLimit":1,"NEventsListener":440,"NFd":11,"NGoroutines":90,"SwapLimit":0}
|
31
33
|
http_version:
|
32
|
-
recorded_at:
|
33
|
-
recorded_with: VCR 2.
|
34
|
+
recorded_at: Wed, 12 Feb 2014 17:06:43 GMT
|
35
|
+
recorded_with: VCR 2.8.0
|
@@ -2,13 +2,13 @@
|
|
2
2
|
http_interactions:
|
3
3
|
- request:
|
4
4
|
method: get
|
5
|
-
uri: unix:///var/run/docker.sock/v1.
|
5
|
+
uri: unix:///var/run/docker.sock/v1.8/info
|
6
6
|
body:
|
7
7
|
encoding: US-ASCII
|
8
8
|
string: ''
|
9
9
|
headers:
|
10
10
|
User-Agent:
|
11
|
-
- Swipely/Docker-API 1.6
|
11
|
+
- Swipely/Docker-API 1.7.6
|
12
12
|
Content-Type:
|
13
13
|
- text/plain
|
14
14
|
response:
|
@@ -16,18 +16,20 @@ http_interactions:
|
|
16
16
|
code: 200
|
17
17
|
message:
|
18
18
|
headers:
|
19
|
-
|
20
|
-
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
-
|
27
|
-
|
19
|
+
Content-Type:
|
20
|
+
- application/json
|
21
|
+
Job-Name:
|
22
|
+
- info
|
23
|
+
Date:
|
24
|
+
- Wed, 12 Feb 2014 17:06:44 GMT
|
25
|
+
Content-Length:
|
26
|
+
- '694'
|
27
|
+
Connection:
|
28
|
+
- close
|
28
29
|
body:
|
29
|
-
encoding:
|
30
|
-
string:
|
30
|
+
encoding: UTF-8
|
31
|
+
string: |
|
32
|
+
{"Containers":40,"Debug":0,"Driver":"devicemapper","DriverStatus":[["Pool Name","docker-8:4-394003-pool"],["Data file","/var/lib/docker/devicemapper/devicemapper/data"],["Metadata file","/var/lib/docker/devicemapper/devicemapper/metadata"],["Data Space Used","582.5 Mb"],["Data Space Total","102400.0 Mb"],["Metadata Space Used","3.4 Mb"],["Metadata Space Total","2048.0 Mb"]],"ExecutionDriver":"lxc-0.9.0","IPv4Forwarding":1,"Images":14,"IndexServerAddress":"https://index.docker.io/v1/","InitPath":"/usr/lib/docker/dockerinit","InitSha1":"c6e2619aa393a45c9d0851ef2740eb0d29368350","KernelVersion":"3.12.9-2-ARCH","MemoryLimit":1,"NEventsListener":440,"NFd":11,"NGoroutines":90,"SwapLimit":0}
|
31
33
|
http_version:
|
32
|
-
recorded_at:
|
33
|
-
recorded_with: VCR 2.
|
34
|
+
recorded_at: Wed, 12 Feb 2014 17:06:44 GMT
|
35
|
+
recorded_with: VCR 2.8.0
|
@@ -2,13 +2,13 @@
|
|
2
2
|
http_interactions:
|
3
3
|
- request:
|
4
4
|
method: get
|
5
|
-
uri: unix:///var/run/docker.sock/v1.
|
5
|
+
uri: unix:///var/run/docker.sock/v1.8/version
|
6
6
|
body:
|
7
7
|
encoding: US-ASCII
|
8
8
|
string: ''
|
9
9
|
headers:
|
10
10
|
User-Agent:
|
11
|
-
- Swipely/Docker-API 1.6
|
11
|
+
- Swipely/Docker-API 1.7.6
|
12
12
|
Content-Type:
|
13
13
|
- text/plain
|
14
14
|
response:
|
@@ -16,18 +16,20 @@ http_interactions:
|
|
16
16
|
code: 200
|
17
17
|
message:
|
18
18
|
headers:
|
19
|
-
|
20
|
-
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
-
|
27
|
-
|
19
|
+
Content-Type:
|
20
|
+
- application/json
|
21
|
+
Job-Name:
|
22
|
+
- version
|
23
|
+
Date:
|
24
|
+
- Wed, 12 Feb 2014 17:06:43 GMT
|
25
|
+
Content-Length:
|
26
|
+
- '122'
|
27
|
+
Connection:
|
28
|
+
- close
|
28
29
|
body:
|
29
|
-
encoding:
|
30
|
-
string:
|
30
|
+
encoding: UTF-8
|
31
|
+
string: |
|
32
|
+
{"Arch":"amd64","GitCommit":"cc3a8c8","GoVersion":"go1.2","KernelVersion":"3.12.9-2-ARCH","Os":"linux","Version":"0.8.0"}
|
31
33
|
http_version:
|
32
|
-
recorded_at:
|
33
|
-
recorded_with: VCR 2.
|
34
|
+
recorded_at: Wed, 12 Feb 2014 17:06:43 GMT
|
35
|
+
recorded_with: VCR 2.8.0
|