dockerlib-remote 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,15 @@
1
+ ---
2
+ !binary "U0hBMQ==":
3
+ metadata.gz: !binary |-
4
+ Y2JlMWM0MzBiZWRiMmYxZGIyYjcwZTI4Nzg4NTkyZjk5ODNjMTE1YQ==
5
+ data.tar.gz: !binary |-
6
+ ZTUwYTUyODgyYWNkMGRlM2QxMTVhYjEwN2M1NmQ4ZjI2MWQ1ZGY0MQ==
7
+ SHA512:
8
+ metadata.gz: !binary |-
9
+ YzY1MWE0NWE3NWVhNjlmYzc0YTNjMDFhYmNkNDQwYmM5YjE0NmRjNzVmOTNm
10
+ YWRmNTFiOThkZjhlYTAxODY2ZTZjOTI3MTQ3ZjM5NmEzOWQ2NTdhMjQxMThk
11
+ ZjFiMmJiMDJiMzVmZGNhYzUwYmFjNDZhMjNmMDI2OGJmOWZjMWM=
12
+ data.tar.gz: !binary |-
13
+ NWFkY2M1ZGM0MDU5YzlmN2Y5YTk1NThkYzZkYmFjYTYzMTZlYzE4MzM2Y2Iy
14
+ YzVhOGM4MTZmOTI0ZTRkZGYzYmU5M2E2ZWUxYWExYzM4Y2MxNWIxOThkNDM0
15
+ ZDljN2Q1ZDU0YTBjYTJhMDM3MzNhN2I1OGExN2ZkYjFmMzJmZGM=
@@ -0,0 +1,5 @@
1
+ require 'excon'
2
+ require 'json'
3
+
4
+ require 'dockerlib/remote/version'
5
+ require 'dockerlib/remote/client'
@@ -0,0 +1,35 @@
1
+ module Dockerlib
2
+ module Remote
3
+ class Client
4
+ def initialize(socket: nil)
5
+ @socket = socket || '/var/run/docker.sock'
6
+ end
7
+
8
+ def inspect_container(name)
9
+ resp = connection.request(method: :get, path: "/containers/#{name}/json")
10
+ if resp.status == 200
11
+ {d: load_body(resp)}
12
+ elsif resp.status == 404
13
+ {code: :no_such_container}
14
+ else
15
+ to_server_error resp
16
+ end
17
+ end
18
+
19
+ protected
20
+
21
+ def connection
22
+ Excon.new('unix:///', socket: @socket)
23
+ end
24
+
25
+ def load_body(resp)
26
+ JSON.load(resp.body)
27
+ end
28
+
29
+ def to_server_error(resp)
30
+ {error: :server_error, d: {http_status: resp.status,
31
+ http_body: resp.body}}
32
+ end
33
+ end # Client
34
+ end # Remote
35
+ end # Dockerlib
@@ -0,0 +1,5 @@
1
+ module Dockerlib
2
+ module Remote
3
+ VERSION = '0.1.0'.freeze
4
+ end # Remote
5
+ end # Dockerlib
metadata ADDED
@@ -0,0 +1,209 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: dockerlib-remote
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - flant
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2016-10-10 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: excon
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ! '>='
18
+ - !ruby/object:Gem::Version
19
+ version: 0.45.4
20
+ - - <
21
+ - !ruby/object:Gem::Version
22
+ version: '1.0'
23
+ type: :runtime
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: 0.45.4
30
+ - - <
31
+ - !ruby/object:Gem::Version
32
+ version: '1.0'
33
+ - !ruby/object:Gem::Dependency
34
+ name: net_status
35
+ requirement: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - ! '>='
38
+ - !ruby/object:Gem::Version
39
+ version: 0.1.2
40
+ - - <
41
+ - !ruby/object:Gem::Version
42
+ version: '1.0'
43
+ type: :runtime
44
+ prerelease: false
45
+ version_requirements: !ruby/object:Gem::Requirement
46
+ requirements:
47
+ - - ! '>='
48
+ - !ruby/object:Gem::Version
49
+ version: 0.1.2
50
+ - - <
51
+ - !ruby/object:Gem::Version
52
+ version: '1.0'
53
+ - !ruby/object:Gem::Dependency
54
+ name: bundler
55
+ requirement: !ruby/object:Gem::Requirement
56
+ requirements:
57
+ - - ~>
58
+ - !ruby/object:Gem::Version
59
+ version: '1.7'
60
+ type: :development
61
+ prerelease: false
62
+ version_requirements: !ruby/object:Gem::Requirement
63
+ requirements:
64
+ - - ~>
65
+ - !ruby/object:Gem::Version
66
+ version: '1.7'
67
+ - !ruby/object:Gem::Dependency
68
+ name: rake
69
+ requirement: !ruby/object:Gem::Requirement
70
+ requirements:
71
+ - - ~>
72
+ - !ruby/object:Gem::Version
73
+ version: '10.0'
74
+ type: :development
75
+ prerelease: false
76
+ version_requirements: !ruby/object:Gem::Requirement
77
+ requirements:
78
+ - - ~>
79
+ - !ruby/object:Gem::Version
80
+ version: '10.0'
81
+ - !ruby/object:Gem::Dependency
82
+ name: rspec
83
+ requirement: !ruby/object:Gem::Requirement
84
+ requirements:
85
+ - - ~>
86
+ - !ruby/object:Gem::Version
87
+ version: '3.4'
88
+ - - ! '>='
89
+ - !ruby/object:Gem::Version
90
+ version: 3.4.0
91
+ type: :development
92
+ prerelease: false
93
+ version_requirements: !ruby/object:Gem::Requirement
94
+ requirements:
95
+ - - ~>
96
+ - !ruby/object:Gem::Version
97
+ version: '3.4'
98
+ - - ! '>='
99
+ - !ruby/object:Gem::Version
100
+ version: 3.4.0
101
+ - !ruby/object:Gem::Dependency
102
+ name: pry
103
+ requirement: !ruby/object:Gem::Requirement
104
+ requirements:
105
+ - - ! '>='
106
+ - !ruby/object:Gem::Version
107
+ version: 0.10.3
108
+ - - <
109
+ - !ruby/object:Gem::Version
110
+ version: '1.0'
111
+ type: :development
112
+ prerelease: false
113
+ version_requirements: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ! '>='
116
+ - !ruby/object:Gem::Version
117
+ version: 0.10.3
118
+ - - <
119
+ - !ruby/object:Gem::Version
120
+ version: '1.0'
121
+ - !ruby/object:Gem::Dependency
122
+ name: pry-stack_explorer
123
+ requirement: !ruby/object:Gem::Requirement
124
+ requirements:
125
+ - - ! '>='
126
+ - !ruby/object:Gem::Version
127
+ version: 0.4.9.2
128
+ - - <
129
+ - !ruby/object:Gem::Version
130
+ version: '1.0'
131
+ type: :development
132
+ prerelease: false
133
+ version_requirements: !ruby/object:Gem::Requirement
134
+ requirements:
135
+ - - ! '>='
136
+ - !ruby/object:Gem::Version
137
+ version: 0.4.9.2
138
+ - - <
139
+ - !ruby/object:Gem::Version
140
+ version: '1.0'
141
+ - !ruby/object:Gem::Dependency
142
+ name: travis
143
+ requirement: !ruby/object:Gem::Requirement
144
+ requirements:
145
+ - - ~>
146
+ - !ruby/object:Gem::Version
147
+ version: '1.8'
148
+ - - ! '>='
149
+ - !ruby/object:Gem::Version
150
+ version: 1.8.2
151
+ type: :development
152
+ prerelease: false
153
+ version_requirements: !ruby/object:Gem::Requirement
154
+ requirements:
155
+ - - ~>
156
+ - !ruby/object:Gem::Version
157
+ version: '1.8'
158
+ - - ! '>='
159
+ - !ruby/object:Gem::Version
160
+ version: 1.8.2
161
+ - !ruby/object:Gem::Dependency
162
+ name: codeclimate-test-reporter
163
+ requirement: !ruby/object:Gem::Requirement
164
+ requirements:
165
+ - - ~>
166
+ - !ruby/object:Gem::Version
167
+ version: '0.5'
168
+ type: :development
169
+ prerelease: false
170
+ version_requirements: !ruby/object:Gem::Requirement
171
+ requirements:
172
+ - - ~>
173
+ - !ruby/object:Gem::Version
174
+ version: '0.5'
175
+ description: Docker remote api
176
+ email:
177
+ - 256@flant.com
178
+ executables: []
179
+ extensions: []
180
+ extra_rdoc_files: []
181
+ files:
182
+ - lib/dockerlib/remote.rb
183
+ - lib/dockerlib/remote/client.rb
184
+ - lib/dockerlib/remote/version.rb
185
+ homepage: https://github.com/flant/dockerlib-remote
186
+ licenses:
187
+ - MIT
188
+ metadata: {}
189
+ post_install_message:
190
+ rdoc_options: []
191
+ require_paths:
192
+ - lib
193
+ required_ruby_version: !ruby/object:Gem::Requirement
194
+ requirements:
195
+ - - ! '>='
196
+ - !ruby/object:Gem::Version
197
+ version: '2.1'
198
+ required_rubygems_version: !ruby/object:Gem::Requirement
199
+ requirements:
200
+ - - ! '>='
201
+ - !ruby/object:Gem::Version
202
+ version: '0'
203
+ requirements: []
204
+ rubyforge_project:
205
+ rubygems_version: 2.4.5
206
+ signing_key:
207
+ specification_version: 4
208
+ summary: Docker remote api
209
+ test_files: []