docker-api 1.7.6 → 1.8.0

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.
Files changed (66) hide show
  1. checksums.yaml +7 -0
  2. data/lib/docker.rb +9 -9
  3. data/lib/docker/connection.rb +1 -1
  4. data/lib/docker/container.rb +1 -2
  5. data/lib/docker/image.rb +7 -6
  6. data/lib/docker/version.rb +2 -2
  7. data/spec/docker/connection_spec.rb +2 -2
  8. data/spec/docker/container_spec.rb +12 -10
  9. data/spec/docker/image_spec.rb +13 -13
  10. data/spec/docker_spec.rb +5 -4
  11. data/spec/vcr/Docker/_authenticate_/with_valid_credentials/logs_in_and_sets_the_creds.yml +1 -1
  12. data/spec/vcr/Docker/_info/returns_the_info_as_a_Hash.yml +17 -15
  13. data/spec/vcr/Docker/_validate_version/when_nothing_is_raised/validate_version_/.yml +17 -15
  14. data/spec/vcr/Docker/_version/returns_the_version_as_a_Hash.yml +17 -15
  15. data/spec/vcr/Docker_Container/_all/when_the_HTTP_response_is_a_200/materializes_each_Container_into_a_Docker_Container.yml +96 -46
  16. data/spec/vcr/Docker_Container/_attach/with_normal_sized_chunks/yields_each_chunk.yml +35 -37
  17. data/spec/vcr/Docker_Container/_attach/with_very_small_chunks/yields_each_chunk.yml +35 -37
  18. data/spec/vcr/Docker_Container/_changes/returns_the_changes_as_an_array.yml +60 -58
  19. data/spec/vcr/Docker_Container/_commit/creates_a_new_Image_from_the_Container_s_changes.yml +46 -47
  20. data/spec/vcr/Docker_Container/_commit/if_run_is_passed_it_saves_the_command_in_the_image/saves_the_command.yml +78 -81
  21. data/spec/vcr/Docker_Container/_copy/when_the_file_does_not_exist/raises_an_error.yml +77 -80
  22. data/spec/vcr/Docker_Container/_copy/when_the_input_is_a_directory/yields_each_chunk_of_the_tarred_directory.yml +91 -182
  23. data/spec/vcr/Docker_Container/_copy/when_the_input_is_a_file/yields_each_chunk_of_the_tarred_file.yml +80 -273
  24. data/spec/vcr/Docker_Container/_create/when_creating_a_container_named_bob/should_have_name_set_to_bob.yml +20 -15
  25. 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
  26. data/spec/vcr/Docker_Container/_delete/deletes_the_container.yml +41 -43
  27. data/spec/vcr/Docker_Container/_export/yields_each_chunk.yml +82759 -46
  28. data/spec/vcr/Docker_Container/_get/when_the_HTTP_response_is_a_200/materializes_the_Container_into_a_Docker_Container.yml +29 -30
  29. data/spec/vcr/Docker_Container/_json/returns_the_description_as_a_Hash.yml +29 -30
  30. data/spec/vcr/Docker_Container/_kill/kills_the_container.yml +69 -71
  31. data/spec/vcr/Docker_Container/_restart/restarts_the_container.yml +98 -102
  32. data/spec/vcr/Docker_Container/_run/when_the_Container_s_command_does_not_return_status_code_of_0/raises_an_error.yml +43 -44
  33. 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
  34. data/spec/vcr/Docker_Container/_start/starts_the_container.yml +58 -59
  35. data/spec/vcr/Docker_Container/_stop/stops_the_container.yml +81 -84
  36. data/spec/vcr/Docker_Container/_top/returns_the_top_commands_as_an_Array.yml +116 -87
  37. data/spec/vcr/Docker_Container/_wait/waits_for_the_command_to_finish.yml +43 -44
  38. data/spec/vcr/Docker_Container/_wait/when_an_argument_is_given/and_a_command_runs_for_too_long/raises_a_ServerError.yml +29 -30
  39. data/spec/vcr/Docker_Container/_wait/when_an_argument_is_given/sets_the_read_timeout_to_that_amount_of_time.yml +43 -44
  40. data/spec/vcr/Docker_Image/_all/materializes_each_Image_into_a_Docker_Image.yml +46 -32
  41. 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
  42. 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
  43. data/spec/vcr/Docker_Image/_build/with_a_valid_Dockerfile/without_query_parameters/builds_an_image.yml +16 -16
  44. data/spec/vcr/Docker_Image/_build/with_an_invalid_Dockerfile/throws_a_UnexpectedResponseError.yml +17 -19
  45. 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
  46. data/spec/vcr/Docker_Image/_build_from_dir/with_a_valid_Dockerfile/with_no_query_parameters/builds_the_image.yml +50 -52
  47. 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
  48. 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
  49. data/spec/vcr/Docker_Image/_get/when_the_image_does_exist/returns_the_new_image.yml +14 -15
  50. data/spec/vcr/Docker_Image/_history/returns_the_history_of_the_Image.yml +36 -32
  51. data/spec/vcr/Docker_Image/_insert/inserts_the_url_s_file_into_a_new_Image.yml +70 -86
  52. data/spec/vcr/Docker_Image/_insert_local/when_removing_intermediate_containers/creates_a_new_image.yml +69 -47
  53. data/spec/vcr/Docker_Image/_insert_local/when_removing_intermediate_containers/leave_no_intermediate_containers.yml +118 -47
  54. data/spec/vcr/Docker_Image/_insert_local/when_the_local_file_does_exist/creates_a_new_Image_that_has_that_file.yml +68 -70
  55. data/spec/vcr/Docker_Image/_insert_local/when_the_local_file_does_not_exist/raises_an_error.yml +16 -16
  56. data/spec/vcr/Docker_Image/_insert_local/when_there_are_multiple_files_passed/creates_a_new_Image_that_has_each_file.yml +70 -72
  57. data/spec/vcr/Docker_Image/_json/returns_additional_information_about_image_image.yml +33 -32
  58. data/spec/vcr/Docker_Image/_push/pushes_the_Image.yml +162 -105
  59. data/spec/vcr/Docker_Image/_remove/removes_the_Image.yml +53 -46
  60. 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
  61. data/spec/vcr/Docker_Image/_run/when_the_argument_is_an_Array/creates_a_new_Container.yml +54 -54
  62. 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
  63. 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
  64. data/spec/vcr/Docker_Image/_search/materializes_each_Image_into_a_Docker_Image.yml +94 -35
  65. data/spec/vcr/Docker_Image/_tag/tags_the_image_with_the_repo_name.yml +32 -31
  66. 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'
@@ -35,7 +35,7 @@ class Docker::Connection
35
35
  def request(*args, &block)
36
36
  request = compile_request_params(*args, &block)
37
37
  if Docker.logger
38
- Docker.logger.info(
38
+ Docker.logger.debug(
39
39
  [request[:method], request[:path], request[:query], request[:body]]
40
40
  )
41
41
  end
@@ -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 ServerError, "Docker Server Error."
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['Repository']
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 = (creds.nil?) ? Docker.creds : creds.to_json
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(/{"Id":"([a-f0-9]+)"}\z/)).nil? || id[1].empty?
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['Name']) }
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.
@@ -1,7 +1,7 @@
1
1
  module Docker
2
2
  # The version of the docker-api gem.
3
- VERSION = '1.7.6'
3
+ VERSION = '1.8.0'
4
4
 
5
5
  # The version of the compatible Docker remote API.
6
- API_VERSION = '1.6'
6
+ API_VERSION = '1.8'
7
7
  end
@@ -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) { mock(:resource) }
57
- let(:response) { mock(:response, :body => body) }
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" => 1
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('run' => {"Cmd" => %w[pwd]}) }
315
+ let(:image) { subject.commit }
315
316
  it 'saves the command' do
316
- expect(image.run.attach).to eql [["/\n"],[]]
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
 
@@ -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
- :username => 'test',
110
- :password => 'test',
111
- :auth => '',
112
- :email => 'test@test.com'
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' => repo_name)
124
- Docker::Image.all.select { |image|
125
- image.info['Repository'] == repo_name
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["Repository"]).to eq("swipely/base")
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 start_with('Step 1 : FROM base')
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["Repository"]).to eq("swipely/base2")
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 start_with("Step 1 : FROM base")
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 == %w[GitCommit GoVersion Version]
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 IPv4Forwarding Images IndexServerAddress
79
- KernelVersion LXCVersion MemoryLimit NEventsListener NFd
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.6/auth
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.6/info
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.0
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
- !binary "Q29udGVudC1UeXBl":
20
- - !binary |-
21
- YXBwbGljYXRpb24vanNvbg==
22
- !binary "Q29udGVudC1MZW5ndGg=":
23
- - !binary |-
24
- MjM1
25
- !binary "RGF0ZQ==":
26
- - !binary |-
27
- RnJpLCAyNSBPY3QgMjAxMyAxNjoyNDo0NyBHTVQ=
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: US-ASCII
30
- string: ! '{"Debug":false,"Containers":8,"Images":9,"NFd":9,"NGoroutines":12,"MemoryLimit":true,"IPv4Forwarding":true,"LXCVersion":"0.9.0","NEventsListener":12,"KernelVersion":"3.8.0-27-generic","IndexServerAddress":"https://index.docker.io/v1/"}'
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: Fri, 25 Oct 2013 16:24:47 GMT
33
- recorded_with: VCR 2.6.0
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.6/info
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.0
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
- !binary "Q29udGVudC1UeXBl":
20
- - !binary |-
21
- YXBwbGljYXRpb24vanNvbg==
22
- !binary "Q29udGVudC1MZW5ndGg=":
23
- - !binary |-
24
- MjM2
25
- !binary "RGF0ZQ==":
26
- - !binary |-
27
- RnJpLCAyNSBPY3QgMjAxMyAxNjoyNDo0NyBHTVQ=
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: US-ASCII
30
- string: ! '{"Debug":false,"Containers":8,"Images":9,"NFd":10,"NGoroutines":13,"MemoryLimit":true,"IPv4Forwarding":true,"LXCVersion":"0.9.0","NEventsListener":12,"KernelVersion":"3.8.0-27-generic","IndexServerAddress":"https://index.docker.io/v1/"}'
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: Fri, 25 Oct 2013 16:24:47 GMT
33
- recorded_with: VCR 2.6.0
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.6/version
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.0
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
- !binary "Q29udGVudC1UeXBl":
20
- - !binary |-
21
- YXBwbGljYXRpb24vanNvbg==
22
- !binary "Q29udGVudC1MZW5ndGg=":
23
- - !binary |-
24
- NjM=
25
- !binary "RGF0ZQ==":
26
- - !binary |-
27
- RnJpLCAyNSBPY3QgMjAxMyAxNTo1NTozNyBHTVQ=
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: US-ASCII
30
- string: ! '{"Version":"0.6.4","GitCommit":"2f74b1c","GoVersion":"go1.1.2"}'
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: Fri, 25 Oct 2013 15:55:37 GMT
33
- recorded_with: VCR 2.6.0
34
+ recorded_at: Wed, 12 Feb 2014 17:06:43 GMT
35
+ recorded_with: VCR 2.8.0