kitchen-docker 0.13.0 → 1.0.0.beta
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/.gitignore +2 -0
- data/.kitchen.yml +14 -0
- data/README.md +27 -12
- data/Rakefile +7 -0
- data/lib/kitchen/driver/docker.rb +10 -5
- data/lib/kitchen/driver/docker_version.rb +1 -1
- metadata +23 -23
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9c5f40664c9323956c6a379f32ad480297fba14b
|
4
|
+
data.tar.gz: 1ffab2d47fca65dc72e45b12335cfba8a2160d18
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 59fd249b44942cbe78c3ca78d88c51cdb08fa75dd70dd3a61c993672aa745736a7d2a40f14c895b3267025020fd577765fc4e785a61d913b3d0d229a3d1cc45b
|
7
|
+
data.tar.gz: f9dd3d4d44eb53c1252153020f847174df0160dc84339f6bbfeb03f0b93f32aaffd4562e1a3a97034b11c8c576a59e3fd0acf49a01ba083fb4fb608d0b0ab14a
|
data/.gitignore
CHANGED
data/.kitchen.yml
ADDED
data/README.md
CHANGED
@@ -6,13 +6,9 @@ A Test Kitchen Driver for Docker.
|
|
6
6
|
|
7
7
|
* [Docker][docker_getting_started]
|
8
8
|
|
9
|
-
## Known Issues
|
10
|
-
|
11
|
-
* Upstart is neutered due to [this issue][docker_upstart_issue].
|
12
|
-
|
13
9
|
## Installation and Setup
|
14
10
|
|
15
|
-
Please read the [
|
11
|
+
Please read the Test Kitchen [docs][test_kitchen_docs] for more details.
|
16
12
|
|
17
13
|
Example `.kitchen.local.yml`:
|
18
14
|
|
@@ -26,8 +22,8 @@ platforms:
|
|
26
22
|
- recipe[apt]
|
27
23
|
- name: centos
|
28
24
|
driver_config:
|
29
|
-
image:
|
30
|
-
platform:
|
25
|
+
image: centos
|
26
|
+
platform: rhel
|
31
27
|
run_list:
|
32
28
|
- recipe[yum]
|
33
29
|
```
|
@@ -117,6 +113,13 @@ installed. There are several different behaviors available:
|
|
117
113
|
|
118
114
|
The default value is `true`.
|
119
115
|
|
116
|
+
### disable\_upstart
|
117
|
+
|
118
|
+
Disables upstart on Debian/Ubuntu containers, as many images do not support a
|
119
|
+
working upstart.
|
120
|
+
|
121
|
+
The default value is `true`.
|
122
|
+
|
120
123
|
### provision\_command
|
121
124
|
|
122
125
|
Custom command(s) to be run when provisioning the base for the suite containers.
|
@@ -124,18 +127,18 @@ Custom command(s) to be run when provisioning the base for the suite containers.
|
|
124
127
|
Examples:
|
125
128
|
|
126
129
|
```
|
127
|
-
provision_command:
|
130
|
+
provision_command: curl -L https://www.opscode.com/chef/install.sh | bash
|
128
131
|
```
|
129
132
|
|
130
133
|
```
|
131
134
|
provision_command:
|
132
|
-
-
|
133
|
-
-
|
135
|
+
- apt-get install dnsutils
|
136
|
+
- apt-get install telnet
|
134
137
|
```
|
135
138
|
|
136
139
|
```
|
137
140
|
driver_config:
|
138
|
-
provision_command:
|
141
|
+
provision_command: curl -L https://www.opscode.com/chef/install.sh | bash
|
139
142
|
require_chef_omnibus: false
|
140
143
|
```
|
141
144
|
|
@@ -146,6 +149,18 @@ destroyed.
|
|
146
149
|
|
147
150
|
The default value is `false`.
|
148
151
|
|
152
|
+
### run_command
|
153
|
+
|
154
|
+
Sets the command used to run the suite container.
|
155
|
+
|
156
|
+
The default value is `/usr/sbin/sshd -D -o UseDNS=no -o UsePAM=no`.
|
157
|
+
|
158
|
+
Examples:
|
159
|
+
|
160
|
+
```
|
161
|
+
run_command: /sbin/init
|
162
|
+
```
|
163
|
+
|
149
164
|
### memory
|
150
165
|
|
151
166
|
Sets the memory limit for the suite container in bytes. Otherwise use Dockers
|
@@ -261,7 +276,7 @@ Apache 2.0 (see [LICENSE][license])
|
|
261
276
|
[docker_upstart_issue]: https://github.com/dotcloud/docker/issues/223
|
262
277
|
[docker_index]: https://index.docker.io/
|
263
278
|
[docker_default_image]: https://index.docker.io/_/base/
|
264
|
-
[
|
279
|
+
[test_kitchen_docs]: http://kitchen.ci/docs/getting-started/
|
265
280
|
[chef_omnibus_dl]: http://www.opscode.com/chef/install/
|
266
281
|
[cpu_shares]: https://docs.fedoraproject.org/en-US/Fedora/17/html/Resource_Management_Guide/sec-cpu.html
|
267
282
|
[memory_limit]: https://docs.fedoraproject.org/en-US/Fedora/17/html/Resource_Management_Guide/sec-memory.html
|
data/Rakefile
CHANGED
@@ -19,3 +19,10 @@ desc "Run all quality tasks"
|
|
19
19
|
task :quality => [:cane, :tailor, :stats]
|
20
20
|
|
21
21
|
task :default => [:quality]
|
22
|
+
|
23
|
+
begin
|
24
|
+
require 'kitchen/rake_tasks'
|
25
|
+
Kitchen::RakeTasks.new
|
26
|
+
rescue LoadError
|
27
|
+
puts ">>>>> Kitchen gem not loaded, omitting tasks" unless ENV['CI']
|
28
|
+
end
|
@@ -26,7 +26,7 @@ module Kitchen
|
|
26
26
|
# @author Sean Porter <portertech@gmail.com>
|
27
27
|
class Docker < Kitchen::Driver::SSHBase
|
28
28
|
|
29
|
-
default_config :socket,
|
29
|
+
default_config :socket, 'unix:///var/run/docker.sock'
|
30
30
|
default_config :privileged, false
|
31
31
|
default_config :remove_images, false
|
32
32
|
default_config :run_command, '/usr/sbin/sshd -D -o UseDNS=no -o UsePAM=no'
|
@@ -45,16 +45,18 @@ module Kitchen
|
|
45
45
|
driver.default_platform
|
46
46
|
end
|
47
47
|
|
48
|
+
default_config :disable_upstart, true
|
49
|
+
|
48
50
|
def verify_dependencies
|
49
51
|
run_command('docker > /dev/null', :quiet => true)
|
50
52
|
rescue
|
51
53
|
raise UserError,
|
52
|
-
'You must first install Docker http://www.docker.io/gettingstarted/'
|
54
|
+
'You must first install the Docker CLI tool http://www.docker.io/gettingstarted/'
|
53
55
|
end
|
54
56
|
|
55
57
|
def default_image
|
56
58
|
platform, release = instance.platform.name.split('-')
|
57
|
-
release ? [platform, release].join(':') :
|
59
|
+
release ? [platform, release].join(':') : platform
|
58
60
|
end
|
59
61
|
|
60
62
|
def default_platform
|
@@ -96,13 +98,16 @@ module Kitchen
|
|
96
98
|
from = "FROM #{config[:image]}"
|
97
99
|
platform = case config[:platform]
|
98
100
|
when 'debian', 'ubuntu'
|
99
|
-
<<-eos
|
100
|
-
ENV DEBIAN_FRONTEND noninteractive
|
101
|
+
disable_upstart = <<-eos
|
101
102
|
RUN dpkg-divert --local --rename --add /sbin/initctl
|
102
103
|
RUN ln -sf /bin/true /sbin/initctl
|
104
|
+
eos
|
105
|
+
packages = <<-eos
|
106
|
+
ENV DEBIAN_FRONTEND noninteractive
|
103
107
|
RUN apt-get update
|
104
108
|
RUN apt-get install -y sudo openssh-server curl lsb-release
|
105
109
|
eos
|
110
|
+
config[:disable_upstart] ? disable_upstart + packages : packages
|
106
111
|
when 'rhel', 'centos'
|
107
112
|
<<-eos
|
108
113
|
RUN yum clean all
|
metadata
CHANGED
@@ -1,97 +1,97 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: kitchen-docker
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 1.0.0.beta
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sean Porter
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2014-03-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: test-kitchen
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- -
|
17
|
+
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: 1.0.0.rc.2
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- -
|
24
|
+
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: 1.0.0.rc.2
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: bundler
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- - ~>
|
31
|
+
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: '1.3'
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- - ~>
|
38
|
+
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '1.3'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: rake
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- -
|
45
|
+
- - ">="
|
46
46
|
- !ruby/object:Gem::Version
|
47
47
|
version: '0'
|
48
48
|
type: :development
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- -
|
52
|
+
- - ">="
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '0'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: cane
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
|
-
- -
|
59
|
+
- - ">="
|
60
60
|
- !ruby/object:Gem::Version
|
61
61
|
version: '0'
|
62
62
|
type: :development
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
|
-
- -
|
66
|
+
- - ">="
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '0'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: tailor
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
|
-
- -
|
73
|
+
- - ">="
|
74
74
|
- !ruby/object:Gem::Version
|
75
75
|
version: '0'
|
76
76
|
type: :development
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
|
-
- -
|
80
|
+
- - ">="
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: '0'
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
84
|
name: countloc
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
|
-
- -
|
87
|
+
- - ">="
|
88
88
|
- !ruby/object:Gem::Version
|
89
89
|
version: '0'
|
90
90
|
type: :development
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
|
-
- -
|
94
|
+
- - ">="
|
95
95
|
- !ruby/object:Gem::Version
|
96
96
|
version: '0'
|
97
97
|
description: A Test Kitchen Driver for Docker
|
@@ -101,10 +101,11 @@ executables: []
|
|
101
101
|
extensions: []
|
102
102
|
extra_rdoc_files: []
|
103
103
|
files:
|
104
|
-
- .cane
|
105
|
-
- .gitignore
|
106
|
-
- .
|
107
|
-
- .
|
104
|
+
- ".cane"
|
105
|
+
- ".gitignore"
|
106
|
+
- ".kitchen.yml"
|
107
|
+
- ".tailor"
|
108
|
+
- ".travis.yml"
|
108
109
|
- CHANGELOG.md
|
109
110
|
- Gemfile
|
110
111
|
- LICENSE
|
@@ -123,19 +124,18 @@ require_paths:
|
|
123
124
|
- lib
|
124
125
|
required_ruby_version: !ruby/object:Gem::Requirement
|
125
126
|
requirements:
|
126
|
-
- -
|
127
|
+
- - ">="
|
127
128
|
- !ruby/object:Gem::Version
|
128
129
|
version: '0'
|
129
130
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
130
131
|
requirements:
|
131
|
-
- -
|
132
|
+
- - ">"
|
132
133
|
- !ruby/object:Gem::Version
|
133
|
-
version:
|
134
|
+
version: 1.3.1
|
134
135
|
requirements: []
|
135
136
|
rubyforge_project:
|
136
|
-
rubygems_version: 2.0
|
137
|
+
rubygems_version: 2.2.0
|
137
138
|
signing_key:
|
138
139
|
specification_version: 4
|
139
140
|
summary: A Test Kitchen Driver for Docker
|
140
141
|
test_files: []
|
141
|
-
has_rdoc:
|