ovh-provisioner 0.1.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 +7 -0
- data/.gitignore +9 -0
- data/.gitlab-ci.yml +23 -0
- data/.rspec +2 -0
- data/.ruby-version +1 -0
- data/CHANGELOG +7 -0
- data/CONTRIBUTING.md +62 -0
- data/Gemfile +6 -0
- data/LICENSE +202 -0
- data/README.md +107 -0
- data/Rakefile +24 -0
- data/bin/console +32 -0
- data/bin/ovh_provisioner +27 -0
- data/bin/setup +23 -0
- data/lib/ovh/provisioner.rb +43 -0
- data/lib/ovh/provisioner/api_list.rb +158 -0
- data/lib/ovh/provisioner/api_object/api_object.rb +125 -0
- data/lib/ovh/provisioner/api_object/dedicated_server.rb +225 -0
- data/lib/ovh/provisioner/api_object/domain_zone.rb +115 -0
- data/lib/ovh/provisioner/api_object/ip.rb +83 -0
- data/lib/ovh/provisioner/api_object/record.rb +48 -0
- data/lib/ovh/provisioner/api_object/vrack.rb +92 -0
- data/lib/ovh/provisioner/cli.rb +173 -0
- data/lib/ovh/provisioner/cli_domain.rb +138 -0
- data/lib/ovh/provisioner/cli_ip.rb +64 -0
- data/lib/ovh/provisioner/cli_vrack.rb +71 -0
- data/lib/ovh/provisioner/init.rb +77 -0
- data/lib/ovh/provisioner/self_cli.rb +81 -0
- data/lib/ovh/provisioner/spawner.rb +63 -0
- data/lib/ovh/provisioner/version.rb +24 -0
- data/ovh-provisioner.gemspec +53 -0
- data/spec/config.yml +53 -0
- data/spec/helpers/highline_helper.rb +36 -0
- data/spec/ovh/provisioner/cli_domain_spec.rb +140 -0
- data/spec/ovh/provisioner/cli_ip_spec.rb +90 -0
- data/spec/ovh/provisioner/cli_spec.rb +186 -0
- data/spec/ovh/provisioner/cli_vrack_spec.rb +83 -0
- data/spec/ovh/provisioner/stubs/domain_stubs.rb +204 -0
- data/spec/ovh/provisioner/stubs/ip_stubs.rb +152 -0
- data/spec/ovh/provisioner/stubs/server_stubs.rb +146 -0
- data/spec/ovh/provisioner/stubs/vrack_stubs.rb +87 -0
- data/spec/ovh/provisioner_spec.rb +25 -0
- data/spec/spec_helper.rb +47 -0
- metadata +350 -0
@@ -0,0 +1,87 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
#
|
4
|
+
# Copyright (c) 2015-2016 Sam4Mobile, 2017-2018 Make.org
|
5
|
+
#
|
6
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
7
|
+
# you may not use this file except in compliance with the License.
|
8
|
+
# You may obtain a copy of the License at
|
9
|
+
#
|
10
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
11
|
+
#
|
12
|
+
# Unless required by applicable law or agreed to in writing, software
|
13
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
14
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
15
|
+
# See the License for the specific language governing permissions and
|
16
|
+
# limitations under the License.
|
17
|
+
#
|
18
|
+
|
19
|
+
vracks = {
|
20
|
+
'pn-1111' => { 'name' => 'avrack', 'description' => '' },
|
21
|
+
'pn-2222' => { 'name' => 'bvrack', 'description' => 'Vrack n°2' }
|
22
|
+
}
|
23
|
+
|
24
|
+
servers = {
|
25
|
+
'pn-1111' => ['test-server-01'],
|
26
|
+
'pn-2222' => ['test-server-02']
|
27
|
+
}
|
28
|
+
|
29
|
+
tasks = {
|
30
|
+
321 => {
|
31
|
+
'function' => 'removeDedicatedServerFromBridgeDomain',
|
32
|
+
'targetDomain' => 'test-server-02',
|
33
|
+
'status' => 'init',
|
34
|
+
'serviceName' => 'pn-2222',
|
35
|
+
'orderId' => nil,
|
36
|
+
'lastUpdate' => now,
|
37
|
+
'todoDate' => now,
|
38
|
+
'id' => 321
|
39
|
+
},
|
40
|
+
322 => {
|
41
|
+
'function' => 'addDedicatedServerToBridgeDomain',
|
42
|
+
'targetDomain' => 'test-server-03',
|
43
|
+
'status' => 'init',
|
44
|
+
'serviceName' => 'pn-2222',
|
45
|
+
'orderId' => nil,
|
46
|
+
'lastUpdate' => now,
|
47
|
+
'todoDate' => now,
|
48
|
+
'id' => 322
|
49
|
+
}
|
50
|
+
}
|
51
|
+
|
52
|
+
# Stubs
|
53
|
+
RSpec.configure do |config|
|
54
|
+
config.before(:each) do
|
55
|
+
url = 'https://api.test.com/1.0/vrack'
|
56
|
+
|
57
|
+
stub_request(:get, "#{url}/")
|
58
|
+
.to_return(status: 200, body: vracks.keys.to_json, headers: {})
|
59
|
+
|
60
|
+
vracks.each_pair do |vrack, general|
|
61
|
+
stub_request(:get, "#{url}/#{vrack}/")
|
62
|
+
.to_return(status: 200, body: general.to_json, headers: {})
|
63
|
+
|
64
|
+
serverlist = servers[vrack].to_json
|
65
|
+
stub_request(:get, "#{url}/#{vrack}/dedicatedServer")
|
66
|
+
.to_return(status: 200, body: serverlist, headers: {})
|
67
|
+
end
|
68
|
+
|
69
|
+
stub_request(:delete, "#{url}/pn-2222/dedicatedServer/test-server-02")
|
70
|
+
.to_return(status: 200, body: tasks[321].to_json, headers: {})
|
71
|
+
|
72
|
+
stub_request(:post, "#{url}/pn-2222/dedicatedServer")
|
73
|
+
.with(body: '{"dedicatedServer":"test-server-03"}')
|
74
|
+
.to_return(status: 200, body: tasks[322].to_json, headers: {})
|
75
|
+
|
76
|
+
stub_request(:get, "#{url}/pn-1111/task")
|
77
|
+
.to_return(status: 200, body: '[]', headers: {})
|
78
|
+
|
79
|
+
stub_request(:get, "#{url}/pn-2222/task")
|
80
|
+
.to_return(status: 200, body: tasks.keys.to_json, headers: {})
|
81
|
+
|
82
|
+
tasks.each_pair do |task, body|
|
83
|
+
stub_request(:get, "#{url}/pn-2222/task/#{task}")
|
84
|
+
.to_return(status: 200, body: body.to_json, headers: {})
|
85
|
+
end
|
86
|
+
end
|
87
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
#
|
4
|
+
# Copyright (c) 2015-2016 Sam4Mobile, 2017-2018 Make.org
|
5
|
+
#
|
6
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
7
|
+
# you may not use this file except in compliance with the License.
|
8
|
+
# You may obtain a copy of the License at
|
9
|
+
#
|
10
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
11
|
+
#
|
12
|
+
# Unless required by applicable law or agreed to in writing, software
|
13
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
14
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
15
|
+
# See the License for the specific language governing permissions and
|
16
|
+
# limitations under the License.
|
17
|
+
#
|
18
|
+
|
19
|
+
require 'spec_helper'
|
20
|
+
|
21
|
+
describe OVH::Provisioner do
|
22
|
+
it 'has a version number' do
|
23
|
+
expect(OVH::Provisioner::VERSION).not_to be nil
|
24
|
+
end
|
25
|
+
end
|
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,47 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
#
|
4
|
+
# Copyright (c) 2015-2016 Sam4Mobile, 2017-2018 Make.org
|
5
|
+
#
|
6
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
7
|
+
# you may not use this file except in compliance with the License.
|
8
|
+
# You may obtain a copy of the License at
|
9
|
+
#
|
10
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
11
|
+
#
|
12
|
+
# Unless required by applicable law or agreed to in writing, software
|
13
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
14
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
15
|
+
# See the License for the specific language governing permissions and
|
16
|
+
# limitations under the License.
|
17
|
+
#
|
18
|
+
|
19
|
+
$LOAD_PATH.unshift File.expand_path('../lib', __dir__)
|
20
|
+
require 'ovh/provisioner'
|
21
|
+
require 'webmock/rspec' # Most tests will use webmock
|
22
|
+
|
23
|
+
# Force expect syntax over should
|
24
|
+
RSpec.configure do |config|
|
25
|
+
config.expect_with :rspec do |c|
|
26
|
+
c.syntax = :expect
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
30
|
+
dir = File.dirname(__FILE__)
|
31
|
+
# Load helpers
|
32
|
+
Dir[File.join(dir, 'helpers', '*.rb')].each { |file| require file }
|
33
|
+
|
34
|
+
def now
|
35
|
+
Time.new.strftime('%Y-%m-%dT%H:%M:%S%z').insert(-3, ':')
|
36
|
+
end
|
37
|
+
|
38
|
+
# Load stubs
|
39
|
+
files = File.join(dir, 'ovh', 'provisioner', 'stubs', '*.rb')
|
40
|
+
Dir[files].each { |file| require file }
|
41
|
+
|
42
|
+
# To test the cli
|
43
|
+
def start(caller_object, subcommand = nil)
|
44
|
+
cmd = caller_object.class.description.split(' ')
|
45
|
+
args = [subcommand, *cmd, '-c', 'spec/config.yml'].compact
|
46
|
+
OVH::Provisioner::Cli.start(args)
|
47
|
+
end
|
metadata
ADDED
@@ -0,0 +1,350 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: ovh-provisioner
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Samuel Bernard
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2018-10-22 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: bundler
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '1.10'
|
20
|
+
type: :development
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '1.10'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: rake
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '12'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '12'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: rspec
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - "~>"
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '3'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '3'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: rubocop
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - "~>"
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0.40'
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - "~>"
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0.40'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: webmock
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - "~>"
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '3'
|
76
|
+
type: :development
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - "~>"
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '3'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: celluloid
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - "~>"
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '0.17'
|
90
|
+
type: :runtime
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - "~>"
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '0.17'
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: hashdiff
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - "~>"
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: '0.3'
|
104
|
+
type: :runtime
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - "~>"
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: '0.3'
|
111
|
+
- !ruby/object:Gem::Dependency
|
112
|
+
name: highline
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - "~>"
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: '2.0'
|
118
|
+
type: :runtime
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - "~>"
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: '2.0'
|
125
|
+
- !ruby/object:Gem::Dependency
|
126
|
+
name: ovh-rest
|
127
|
+
requirement: !ruby/object:Gem::Requirement
|
128
|
+
requirements:
|
129
|
+
- - "~>"
|
130
|
+
- !ruby/object:Gem::Version
|
131
|
+
version: 0.0.5
|
132
|
+
type: :runtime
|
133
|
+
prerelease: false
|
134
|
+
version_requirements: !ruby/object:Gem::Requirement
|
135
|
+
requirements:
|
136
|
+
- - "~>"
|
137
|
+
- !ruby/object:Gem::Version
|
138
|
+
version: 0.0.5
|
139
|
+
- !ruby/object:Gem::Dependency
|
140
|
+
name: ruby-progressbar
|
141
|
+
requirement: !ruby/object:Gem::Requirement
|
142
|
+
requirements:
|
143
|
+
- - "~>"
|
144
|
+
- !ruby/object:Gem::Version
|
145
|
+
version: '1.10'
|
146
|
+
type: :runtime
|
147
|
+
prerelease: false
|
148
|
+
version_requirements: !ruby/object:Gem::Requirement
|
149
|
+
requirements:
|
150
|
+
- - "~>"
|
151
|
+
- !ruby/object:Gem::Version
|
152
|
+
version: '1.10'
|
153
|
+
- !ruby/object:Gem::Dependency
|
154
|
+
name: thor
|
155
|
+
requirement: !ruby/object:Gem::Requirement
|
156
|
+
requirements:
|
157
|
+
- - "~>"
|
158
|
+
- !ruby/object:Gem::Version
|
159
|
+
version: '0.19'
|
160
|
+
type: :runtime
|
161
|
+
prerelease: false
|
162
|
+
version_requirements: !ruby/object:Gem::Requirement
|
163
|
+
requirements:
|
164
|
+
- - "~>"
|
165
|
+
- !ruby/object:Gem::Version
|
166
|
+
version: '0.19'
|
167
|
+
description: |
|
168
|
+
OVH::Provisioner
|
169
|
+
================
|
170
|
+
|
171
|
+
Interact with OVH REST API, mainly targeted to manage dedicated servers and
|
172
|
+
OVH DNS.
|
173
|
+
|
174
|
+
Installation
|
175
|
+
------------
|
176
|
+
|
177
|
+
Add this line to your application's Gemfile:
|
178
|
+
|
179
|
+
```ruby
|
180
|
+
gem 'ovh-provisioner'
|
181
|
+
```
|
182
|
+
|
183
|
+
And then execute:
|
184
|
+
|
185
|
+
$ bundle
|
186
|
+
|
187
|
+
Or install it yourself as:
|
188
|
+
|
189
|
+
$ gem install ovh-provisioner
|
190
|
+
|
191
|
+
Configuration
|
192
|
+
-------------
|
193
|
+
|
194
|
+
The best way to use ovh-provisioner is to create a configuration file
|
195
|
+
(recommended path: ~/.config/ovh-provisioner.yml) containing your keys and some
|
196
|
+
general configuration. Then, just launch it to get all commands with their
|
197
|
+
description.
|
198
|
+
|
199
|
+
Example:
|
200
|
+
|
201
|
+
```yaml
|
202
|
+
# All keys can be overriden with cli options
|
203
|
+
api_url: https://eu.api.ovh.com/1.0
|
204
|
+
app_key: XXXXXXXXXXXX
|
205
|
+
app_secret: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
|
206
|
+
consumer_key: XXXXXXXXXXXXXXXXXXXXXXXXXXXX
|
207
|
+
|
208
|
+
template: template_name # is be defined in OVH manager when you save a template
|
209
|
+
use_distrib_kernel: true
|
210
|
+
ssh-key: 'key_name_to install'
|
211
|
+
|
212
|
+
# name_scheme support any variable available as attribute in
|
213
|
+
# lib/ovh/provisioner/api_object/dedicated_server.rb
|
214
|
+
# Along with name_domain, it is used to rename (reverse dns) servers
|
215
|
+
name_scheme: '%{location}-%{flavor_tag}-%{server_id}.%{vrack}'
|
216
|
+
name_domain: example.com
|
217
|
+
|
218
|
+
# example of flavors, you can use any hardware parameters from
|
219
|
+
# GET /dedicated/server/{serviceName}/specifications/hardware
|
220
|
+
# to differentiate your flavors
|
221
|
+
flavors:
|
222
|
+
EG-16S:
|
223
|
+
tag: eg16s
|
224
|
+
hardware:
|
225
|
+
description: 'Serveur EG-16 - E3-1230v6 - 16GB - SoftRaid 2x450GB NVMe'
|
226
|
+
EG-32S:
|
227
|
+
tag: eg32s
|
228
|
+
hardware:
|
229
|
+
description: 'Serveur EG-32 - E3-1270v6 - 32GB - SoftRaid 2x450GB NVMe'
|
230
|
+
EG-64S:
|
231
|
+
tag: eg64s
|
232
|
+
hardware:
|
233
|
+
description: 'Serveur EG-64 - E5-1650v3 - 64GB - SoftRaid 2x450GB NVMe'
|
234
|
+
```
|
235
|
+
|
236
|
+
Development
|
237
|
+
-----------
|
238
|
+
|
239
|
+
After checking out the repo, run `bin/setup` to install dependencies. Then, run
|
240
|
+
`rake spec` to run the tests. You can also run `bin/console` for an interactive
|
241
|
+
prompt that will allow you to experiment.
|
242
|
+
|
243
|
+
To install this gem onto your local machine, run `bundle exec rake install`. To
|
244
|
+
release a new version, update the version number in `version.rb`, and then run
|
245
|
+
`bundle exec rake release`, which will create a git tag for the version, push
|
246
|
+
git commits and tags, and push the `.gem` file to
|
247
|
+
[rubygems.org](https://rubygems.org).
|
248
|
+
|
249
|
+
Contributing
|
250
|
+
------------
|
251
|
+
|
252
|
+
Please read carefully [CONTRIBUTING.md](CONTRIBUTING.md) before making a merge
|
253
|
+
request.
|
254
|
+
|
255
|
+
License and Author
|
256
|
+
------------------
|
257
|
+
|
258
|
+
- Author:: Samuel Bernard (<samuel.bernard@gmail.com>)
|
259
|
+
|
260
|
+
```text
|
261
|
+
Copyright (c) 2015-2016 Sam4Mobile, 2017-2018 Make.org
|
262
|
+
|
263
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
264
|
+
you may not use this file except in compliance with the License.
|
265
|
+
You may obtain a copy of the License at
|
266
|
+
|
267
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
268
|
+
|
269
|
+
Unless required by applicable law or agreed to in writing, software
|
270
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
271
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
272
|
+
See the License for the specific language governing permissions and
|
273
|
+
limitations under the License.
|
274
|
+
```
|
275
|
+
email:
|
276
|
+
- samuel.bernard@gmail.com
|
277
|
+
executables:
|
278
|
+
- console
|
279
|
+
- ovh_provisioner
|
280
|
+
- setup
|
281
|
+
extensions: []
|
282
|
+
extra_rdoc_files: []
|
283
|
+
files:
|
284
|
+
- ".gitignore"
|
285
|
+
- ".gitlab-ci.yml"
|
286
|
+
- ".rspec"
|
287
|
+
- ".ruby-version"
|
288
|
+
- CHANGELOG
|
289
|
+
- CONTRIBUTING.md
|
290
|
+
- Gemfile
|
291
|
+
- LICENSE
|
292
|
+
- README.md
|
293
|
+
- Rakefile
|
294
|
+
- bin/console
|
295
|
+
- bin/ovh_provisioner
|
296
|
+
- bin/setup
|
297
|
+
- lib/ovh/provisioner.rb
|
298
|
+
- lib/ovh/provisioner/api_list.rb
|
299
|
+
- lib/ovh/provisioner/api_object/api_object.rb
|
300
|
+
- lib/ovh/provisioner/api_object/dedicated_server.rb
|
301
|
+
- lib/ovh/provisioner/api_object/domain_zone.rb
|
302
|
+
- lib/ovh/provisioner/api_object/ip.rb
|
303
|
+
- lib/ovh/provisioner/api_object/record.rb
|
304
|
+
- lib/ovh/provisioner/api_object/vrack.rb
|
305
|
+
- lib/ovh/provisioner/cli.rb
|
306
|
+
- lib/ovh/provisioner/cli_domain.rb
|
307
|
+
- lib/ovh/provisioner/cli_ip.rb
|
308
|
+
- lib/ovh/provisioner/cli_vrack.rb
|
309
|
+
- lib/ovh/provisioner/init.rb
|
310
|
+
- lib/ovh/provisioner/self_cli.rb
|
311
|
+
- lib/ovh/provisioner/spawner.rb
|
312
|
+
- lib/ovh/provisioner/version.rb
|
313
|
+
- ovh-provisioner.gemspec
|
314
|
+
- spec/config.yml
|
315
|
+
- spec/helpers/highline_helper.rb
|
316
|
+
- spec/ovh/provisioner/cli_domain_spec.rb
|
317
|
+
- spec/ovh/provisioner/cli_ip_spec.rb
|
318
|
+
- spec/ovh/provisioner/cli_spec.rb
|
319
|
+
- spec/ovh/provisioner/cli_vrack_spec.rb
|
320
|
+
- spec/ovh/provisioner/stubs/domain_stubs.rb
|
321
|
+
- spec/ovh/provisioner/stubs/ip_stubs.rb
|
322
|
+
- spec/ovh/provisioner/stubs/server_stubs.rb
|
323
|
+
- spec/ovh/provisioner/stubs/vrack_stubs.rb
|
324
|
+
- spec/ovh/provisioner_spec.rb
|
325
|
+
- spec/spec_helper.rb
|
326
|
+
homepage: https://gitlab.com/sre-gems/ovh-provisioner
|
327
|
+
licenses:
|
328
|
+
- Apache-2.0
|
329
|
+
metadata: {}
|
330
|
+
post_install_message:
|
331
|
+
rdoc_options: []
|
332
|
+
require_paths:
|
333
|
+
- lib
|
334
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
335
|
+
requirements:
|
336
|
+
- - ">="
|
337
|
+
- !ruby/object:Gem::Version
|
338
|
+
version: '0'
|
339
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
340
|
+
requirements:
|
341
|
+
- - ">="
|
342
|
+
- !ruby/object:Gem::Version
|
343
|
+
version: '0'
|
344
|
+
requirements: []
|
345
|
+
rubyforge_project:
|
346
|
+
rubygems_version: 2.7.7
|
347
|
+
signing_key:
|
348
|
+
specification_version: 4
|
349
|
+
summary: Provision dedicated servers hosted by OVH
|
350
|
+
test_files: []
|