docker-armada 2.8.0 → 2.9.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.
- checksums.yaml +4 -4
- data/README.md +7 -0
- data/lib/armada/connection/docker.rb +19 -2
- data/spec/connection/docker_spec.rb +39 -0
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 403ae99285b97c3c3032440db767628a8fa2876e
|
4
|
+
data.tar.gz: bc5a27e415ae56faa4ef5885c92ddb1ae852ad7d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a7710d1c50edcd5b06ee5c199c343a8a4196eedbe0257e3fab7e892a201379733fe15c7debef106019706dd8ded6cf3bbd3911bed8265a28f23ec6e5415c65f3
|
7
|
+
data.tar.gz: b5407fdabb2fe90a90fbdbf0e803186bb64e357de021fb1a5fb098ad5fbf32d54fe87c7155805170e5e8cfb0fa4cb52b68909932fd895670a77845fb1cd705c4
|
data/README.md
CHANGED
@@ -295,6 +295,13 @@ Examples:
|
|
295
295
|
armada clean images --hosts my-docker-host-01:3435
|
296
296
|
```
|
297
297
|
|
298
|
+
## TLS Support
|
299
|
+
If the DOCKER_CERT_PATH environment variable is set then the proper cert options will be set for the client. Make sure you have the following files in the DOCKER_CERT_PATH location:
|
300
|
+
* `cert.pem`
|
301
|
+
* `key.pem`
|
302
|
+
* `ca.pem`
|
303
|
+
|
304
|
+
|
298
305
|
## Maintainers
|
299
306
|
[Jonathan Chauncey (jchauncey)](https://github.com/jchauncey)
|
300
307
|
[Darrell Hamilton (zeroem)](https://github.com/zeroem)
|
@@ -14,8 +14,25 @@ module Armada
|
|
14
14
|
|
15
15
|
private
|
16
16
|
def create_connection
|
17
|
-
return ::Docker::Connection.new("
|
18
|
-
return ::Docker::Connection.new("
|
17
|
+
return ::Docker::Connection.new("#{scheme}://localhost:#{@tunneled_port}", connection_opts) if @gateway
|
18
|
+
return ::Docker::Connection.new("#{scheme}://#{@host}:#{@port}", connection_opts)
|
19
|
+
end
|
20
|
+
|
21
|
+
def scheme
|
22
|
+
ENV['DOCKER_CERT_PATH'] ? 'https' : 'http'
|
23
|
+
end
|
24
|
+
|
25
|
+
def connection_opts
|
26
|
+
opts = {}
|
27
|
+
|
28
|
+
if cert_path = ENV['DOCKER_CERT_PATH']
|
29
|
+
opts[:client_cert] = File.join(cert_path, 'cert.pem')
|
30
|
+
opts[:client_key] = File.join(cert_path, 'key.pem')
|
31
|
+
opts[:ssl_ca_file] = File.join(cert_path, 'ca.pem')
|
32
|
+
opts[:ssl_verify_peer] = false if @gateway
|
33
|
+
end
|
34
|
+
|
35
|
+
opts
|
19
36
|
end
|
20
37
|
end
|
21
38
|
end
|
@@ -0,0 +1,39 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Armada::Connection::Docker do
|
4
|
+
let(:connection) { described_class.new('localhost:1234').connection }
|
5
|
+
|
6
|
+
context 'when no certificate path is set' do
|
7
|
+
before(:each) { ENV['DOCKER_CERT_PATH'] = nil }
|
8
|
+
|
9
|
+
context 'scheme' do
|
10
|
+
subject { connection.url }
|
11
|
+
|
12
|
+
it { should start_with 'http://' }
|
13
|
+
end
|
14
|
+
|
15
|
+
context 'connection options' do
|
16
|
+
subject { connection.options }
|
17
|
+
|
18
|
+
it { should_not include(:client_cert, :client_key, :ssl_ca_file, :ssl_verify_peer) }
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
context 'when certificate path is set' do
|
23
|
+
before(:each) { ENV['DOCKER_CERT_PATH'] = '/some/cert/path' }
|
24
|
+
|
25
|
+
context 'scheme' do
|
26
|
+
subject { connection.url }
|
27
|
+
|
28
|
+
it { should start_with 'https://' }
|
29
|
+
end
|
30
|
+
|
31
|
+
context 'connection options' do
|
32
|
+
subject { connection.options }
|
33
|
+
|
34
|
+
it { should include(:client_cert, :client_key, :ssl_ca_file) }
|
35
|
+
it { should_not include(:ssl_verify_peer) }
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
39
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: docker-armada
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.9.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jonathan Chauncey
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2015-02-
|
13
|
+
date: 2015-02-19 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: excon
|
@@ -253,6 +253,7 @@ files:
|
|
253
253
|
- lib/armada/utils/commands.rb
|
254
254
|
- lib/armada/utils/time.rb
|
255
255
|
- lib/armada/version.rb
|
256
|
+
- spec/connection/docker_spec.rb
|
256
257
|
- spec/connection/health_check_spec.rb
|
257
258
|
- spec/deploy_dsl_spec.rb
|
258
259
|
- spec/docker/container_spec.rb
|
@@ -283,6 +284,7 @@ signing_key:
|
|
283
284
|
specification_version: 4
|
284
285
|
summary: Deploy utility for docker containers
|
285
286
|
test_files:
|
287
|
+
- spec/connection/docker_spec.rb
|
286
288
|
- spec/connection/health_check_spec.rb
|
287
289
|
- spec/deploy_dsl_spec.rb
|
288
290
|
- spec/docker/container_spec.rb
|