kitchen-digitalocean 0.10.4 → 0.11.1

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 68195b7d8679000076cf03644908a986fcf47fa253267992d36bc50f69da0e40
4
- data.tar.gz: b4cca9c75d8ffb17f63ff4a0efc847c06facfd6b8e7be7ef6a307c4a68343c01
3
+ metadata.gz: 9ee936b646475252b3c7690f1b75a05a41806f6a4c8acfea8b716b1f096607f7
4
+ data.tar.gz: 37ec7efe3db5588d1aeb609e3261ec00fe9b2bf62d7793967282bd208019c932
5
5
  SHA512:
6
- metadata.gz: 35d008d75782d64c2711668e548701c493e59c2aea6b58847a0fa5eeac1b2a1a6b1322499acd817c6491ba0e271bcef0fef920246f02944df588fe4f341b6cf3
7
- data.tar.gz: 1fed1a3efb6e7b85b2e283e7fd132d5bfc5215a63976ad7eec58ac59841b5b38cb8846f7a2cf2346a7ab7e53f7b42b492b27279e5409ddd3c029a084437b3035
6
+ metadata.gz: ddc4afea267452af18a249a95ba44f4772fbfbdfc914e0e40ebe17ef914fc186c9be42318ccd90ab4911ffb60c5e3174c934230cee054288ccb7eded877efdb8
7
+ data.tar.gz: d8961e6347160b8a5a9e8de7528cde4551831a7f8407998800ad1a6cb847100cb04d09dc4e5613aa188b9b52a95bacc546cbb9d46d1d57040b5bef950ebe77ff
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  #
2
4
  # Author:: Greg Fitzgerald (<greg@gregf.org>)
3
5
  #
@@ -15,12 +17,12 @@
15
17
  # See the License for the specific language governing permissions and
16
18
  # limitations under the License.
17
19
 
18
- require 'benchmark'
19
- require 'droplet_kit'
20
+ require 'benchmark' unless defined?(Benchmark)
21
+ require 'droplet_kit' unless defined?(DropletKit)
20
22
  require 'kitchen'
21
- require 'etc'
22
- require 'socket'
23
- require 'json'
23
+ require 'etc' unless defined?(Etc)
24
+ require 'socket' unless defined?(Socket)
25
+ require 'json' unless defined?(JSON)
24
26
 
25
27
  module Kitchen
26
28
  module Driver
@@ -30,7 +32,7 @@ module Kitchen
30
32
  class Digitalocean < Kitchen::Driver::SSHBase
31
33
  default_config :username, 'root'
32
34
  default_config :port, '22'
33
- default_config :size, '512mb'
35
+ default_config :size, '1gb'
34
36
  default_config :monitoring, false
35
37
  default_config(:image, &:default_image)
36
38
  default_config(:server_name, &:default_name)
@@ -39,6 +41,8 @@ module Kitchen
39
41
  default_config :user_data, nil
40
42
  default_config :tags, nil
41
43
  default_config :firewalls, nil
44
+ default_config :vpcs, nil
45
+
42
46
 
43
47
  default_config :region do
44
48
  ENV['DIGITALOCEAN_REGION'] || 'nyc1'
@@ -55,6 +59,26 @@ module Kitchen
55
59
  required_config :digitalocean_access_token
56
60
  required_config :ssh_key_ids
57
61
 
62
+ PLATFORM_SLUG_MAP = {
63
+ 'centos-6' => 'centos-6-x64',
64
+ 'centos-7' => 'centos-7-x64',
65
+ 'centos-8' => 'centos-8-x64',
66
+ 'coreos-stable' => 'coreos-stable',
67
+ 'coreos-beta' => 'coreos-beta',
68
+ 'coreos-alpha' => 'coreos-alpha',
69
+ 'debian-9' => 'debian-9-x64',
70
+ 'debian-10' => 'debian-10-x64',
71
+ 'fedora-30' => 'fedora-30-x64',
72
+ 'fedora-31' => 'fedora-31-x64',
73
+ 'fedora-32' => 'fedora-32-x64',
74
+ 'freebsd-11' => 'freebsd-11-x64-zfs',
75
+ 'freebsd-12' => 'freebsd-12-x64-zfs',
76
+ 'ubuntu-16' => 'ubuntu-16-04-x64',
77
+ 'ubuntu-18' => 'ubuntu-18-04-x64',
78
+ 'ubuntu-19' => 'ubuntu-19-10-x64',
79
+ 'ubuntu-20' => 'ubuntu-20-04-x64'
80
+ }.freeze
81
+
58
82
  def create(state)
59
83
  server = create_server
60
84
 
@@ -130,8 +154,8 @@ module Kitchen
130
154
  # platform => slug mappings, and falls back to using just the platform as
131
155
  # provided if it can't find a mapping.
132
156
  def default_image
133
- platform_to_slug_mapping.fetch(instance.platform.name,
134
- instance.platform.name)
157
+ PLATFORM_SLUG_MAP.fetch(instance.platform.name,
158
+ instance.platform.name)
135
159
  end
136
160
 
137
161
  # Generate what should be a unique server name up to 63 total chars
@@ -172,6 +196,7 @@ module Kitchen
172
196
  private_networking: config[:private_networking],
173
197
  ipv6: config[:ipv6],
174
198
  user_data: config[:user_data],
199
+ vpc_uuid: config[:vpcs],
175
200
  tags: if config[:tags].is_a?(String)
176
201
  config[:tags].split(/\s+|,\s+|,+/)
177
202
  else
@@ -207,32 +232,6 @@ module Kitchen
207
232
  def debug_client_config
208
233
  debug("digitalocean_api_key #{config[:digitalocean_access_token]}")
209
234
  end
210
-
211
- def platform_to_slug_mapping
212
- {
213
- 'centos-6' => 'centos-6-x64',
214
- 'centos-7' => 'centos-7-x64',
215
- 'coreos-stable' => 'coreos-stable-x64',
216
- 'coreos-beta' => 'coreos-beta-x64',
217
- 'coreos-alpha' => 'coreos-alpha-x64',
218
- 'debian-7' => 'debian-7-x64',
219
- 'debian-8' => 'debian-8-x64',
220
- 'debian-9' => 'debian-9-x64',
221
- 'fedora-28' => 'fedora-28-x64',
222
- 'fedora-29' => 'fedora-29-x64',
223
- 'fedora-30' => 'fedora-30-x64',
224
- 'freebsd-11.2' => 'freebsd-11-2-x64-zfs',
225
- 'freebsd-11.1' => 'freebsd-11-1-x64-zfs',
226
- 'freebsd-11.0' => 'freebsd-11-0-x64-zfs',
227
- 'freebsd-10.3' => 'freebsd-10-3-x64-zfs',
228
- 'freebsd-10.4' => 'freebsd-10-4-x64-zfs',
229
- 'ubuntu-14' => 'ubuntu-14-04-x64',
230
- 'ubuntu-16' => 'ubuntu-16-04-x64',
231
- 'ubuntu-17' => 'ubuntu-17-10-x64',
232
- 'ubuntu-18' => 'ubuntu-18-04-x64',
233
- 'ubuntu-19' => 'ubuntu-19-04-x64'
234
- }
235
- end
236
235
  end
237
236
  end
238
237
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  #
2
4
  # Author:: Greg Fitzgerald (<greg@gregf.org>)
3
5
  #
@@ -18,7 +20,7 @@
18
20
  module Kitchen
19
21
  module Driver
20
22
  # Version string for Digital Ocean Kitchen driver
21
- DIGITALOCEAN_VERSION = '0.10.4'.freeze
23
+ DIGITALOCEAN_VERSION = '0.11.1'
22
24
  end
23
25
  end
24
26
 
metadata CHANGED
@@ -1,29 +1,35 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kitchen-digitalocean
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.10.4
4
+ version: 0.11.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Greg Fitzgerald
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-06-28 00:00:00.000000000 Z
11
+ date: 2020-08-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: droplet_kit
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '3.7'
20
+ - - "<"
18
21
  - !ruby/object:Gem::Version
19
- version: '2.8'
22
+ version: '4.0'
20
23
  type: :runtime
21
24
  prerelease: false
22
25
  version_requirements: !ruby/object:Gem::Requirement
23
26
  requirements:
24
- - - "~>"
27
+ - - ">="
28
+ - !ruby/object:Gem::Version
29
+ version: '3.7'
30
+ - - "<"
25
31
  - !ruby/object:Gem::Version
26
- version: '2.8'
32
+ version: '4.0'
27
33
  - !ruby/object:Gem::Dependency
28
34
  name: test-kitchen
29
35
  requirement: !ruby/object:Gem::Requirement
@@ -134,14 +140,14 @@ dependencies:
134
140
  requirements:
135
141
  - - "~>"
136
142
  - !ruby/object:Gem::Version
137
- version: '0.64'
143
+ version: '0.74'
138
144
  type: :development
139
145
  prerelease: false
140
146
  version_requirements: !ruby/object:Gem::Requirement
141
147
  requirements:
142
148
  - - "~>"
143
149
  - !ruby/object:Gem::Version
144
- version: '0.64'
150
+ version: '0.74'
145
151
  - !ruby/object:Gem::Dependency
146
152
  name: simplecov
147
153
  requirement: !ruby/object:Gem::Requirement
@@ -198,7 +204,7 @@ homepage: https://github.com/test-kitchen/kitchen-digitalocean
198
204
  licenses:
199
205
  - Apache-2.0
200
206
  metadata: {}
201
- post_install_message:
207
+ post_install_message:
202
208
  rdoc_options: []
203
209
  require_paths:
204
210
  - lib
@@ -213,8 +219,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
213
219
  - !ruby/object:Gem::Version
214
220
  version: '0'
215
221
  requirements: []
216
- rubygems_version: 3.0.4
217
- signing_key:
222
+ rubygems_version: 3.1.2
223
+ signing_key:
218
224
  specification_version: 4
219
225
  summary: A Test Kitchen Driver for Digital Ocean
220
226
  test_files: []