gandi_v5 0.8.0 → 0.9.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (53) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +23 -9
  3. data/README.md +54 -10
  4. data/lib/gandi_v5.rb +112 -66
  5. data/lib/gandi_v5/billing/info/prepaid.rb +1 -0
  6. data/lib/gandi_v5/data.rb +1 -0
  7. data/lib/gandi_v5/data/converter.rb +3 -2
  8. data/lib/gandi_v5/data/converter/array_of.rb +3 -2
  9. data/lib/gandi_v5/data/converter/integer.rb +3 -2
  10. data/lib/gandi_v5/data/converter/symbol.rb +3 -2
  11. data/lib/gandi_v5/data/converter/time.rb +3 -2
  12. data/lib/gandi_v5/domain.rb +9 -6
  13. data/lib/gandi_v5/domain/availability/product/period.rb +1 -1
  14. data/lib/gandi_v5/domain/contact.rb +5 -5
  15. data/lib/gandi_v5/domain/tld.rb +2 -2
  16. data/lib/gandi_v5/domain/transfer_in.rb +170 -0
  17. data/lib/gandi_v5/domain/transfer_in/availability.rb +51 -0
  18. data/lib/gandi_v5/email.rb +1 -0
  19. data/lib/gandi_v5/email/mailbox.rb +1 -1
  20. data/lib/gandi_v5/error/gandi_error.rb +1 -0
  21. data/lib/gandi_v5/live_dns.rb +2 -0
  22. data/lib/gandi_v5/live_dns/domain.rb +28 -1
  23. data/lib/gandi_v5/live_dns/domain/dnssec_key.rb +16 -11
  24. data/lib/gandi_v5/live_dns/domain/snapshot.rb +4 -0
  25. data/lib/gandi_v5/live_dns/domain/tsig_key.rb +7 -4
  26. data/lib/gandi_v5/simple_hosting.rb +1 -0
  27. data/lib/gandi_v5/simple_hosting/instance.rb +3 -0
  28. data/lib/gandi_v5/simple_hosting/instance/application.rb +1 -0
  29. data/lib/gandi_v5/simple_hosting/instance/database.rb +1 -0
  30. data/lib/gandi_v5/simple_hosting/instance/language.rb +1 -1
  31. data/lib/gandi_v5/simple_hosting/instance/upgrade.rb +1 -0
  32. data/lib/gandi_v5/simple_hosting/instance/virtual_host.rb +2 -2
  33. data/lib/gandi_v5/simple_hosting/instance/virtual_host/linked_dns_zone.rb +1 -0
  34. data/lib/gandi_v5/version.rb +1 -1
  35. data/spec/features/list_domain_renewals_spec.rb +16 -0
  36. data/spec/features/list_email_addresses_spec.rb +39 -0
  37. data/spec/fixtures/bodies/GandiV5_Domain_TransferIn/fetch.yml +21 -0
  38. data/spec/fixtures/bodies/GandiV5_Domain_TransferIn_Availability/fetch.yml +10 -0
  39. data/spec/fixtures/vcr/Examples/List_domain_renewals.yml +54 -0
  40. data/spec/fixtures/vcr/Examples/List_email_addresses.yml +103 -0
  41. data/spec/units/gandi_v5/domain/transfer_in/availability_spec.rb +49 -0
  42. data/spec/units/gandi_v5/domain/transfer_in_spec.rb +143 -0
  43. metadata +127 -20
  44. data/.gitignore +0 -26
  45. data/.rspec +0 -3
  46. data/.rubocop.yml +0 -74
  47. data/.travis.yml +0 -38
  48. data/FUNDING.yml +0 -10
  49. data/Gemfile +0 -6
  50. data/Guardfile +0 -39
  51. data/Rakefile +0 -3
  52. data/bin/console +0 -13
  53. data/gandi_v5.gemspec +0 -42
@@ -2,6 +2,7 @@
2
2
 
3
3
  class GandiV5
4
4
  # Gandi Email Mailbox Management API.
5
+ # @see https://api.gandi.net/docs/email/
5
6
  class Email
6
7
  end
7
8
  end
@@ -43,7 +43,7 @@ class GandiV5
43
43
  alias mailbox_uuid uuid
44
44
 
45
45
  # Create a new GandiV5::Email::Mailbox
46
- # @param members [Hash<Symbol => Object>]
46
+ # @param members [Hash{Symbol => Object}]
47
47
  # @return [GandiV5::Email::Slot]
48
48
  def initialize(**members)
49
49
  super(**members)
@@ -5,6 +5,7 @@ class GandiV5
5
5
  # Generic error class for errors returned by Gandi.
6
6
  class GandiError < GandiV5::Error
7
7
  # Generate a new GandiV5::Error::GandiError from the hash returned by Gandi.
8
+ # @api private
8
9
  # @param hash [Hash] the hash returned by Gandi.
9
10
  # @return [GandiV5::Error::GandiError]
10
11
  def self.from_hash(hash)
@@ -1,9 +1,11 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  # Namespace for classes which access LiveDNS details.
4
+ # @see https://api.gandi.net/docs/livedns/
4
5
  class GandiV5
5
6
  # Gandi LiveDNS Management API.
6
7
  class LiveDNS
8
+ # Permitted record types.
7
9
  RECORD_TYPES = %w[
8
10
  A AAAA CNAME MX NS TXT ALIAS
9
11
  WKS SRV LOC SPF CAA DS SSHFP PTR KEY DNAME TLSA OPENPGPKEY CDS
@@ -21,6 +21,7 @@ class GandiV5
21
21
  end
22
22
 
23
23
  # Update this domain's settings.
24
+ # @see https://api.gandi.net/docs/livedns/#patch-v5-livedns-domains-fqdn
24
25
  # @param automatic_snapshots [String, #to_s]
25
26
  # Enable or disable the automatic creation of new snapshots when records are changed.
26
27
  # @return [String] The confirmation message from Gandi.
@@ -33,12 +34,14 @@ class GandiV5
33
34
 
34
35
  # @overload fetch_records()
35
36
  # Fetch all records for this domain.
37
+ # @see https://api.gandi.net/docs/livedns/#get-v5-livedns-domains-fqdn-records
36
38
  # @param page [Integer, #each<Integer>] which page(s) of results to get.
37
39
  # If page is not provided keep querying until an empty list is returned.
38
40
  # If page responds to .each then iterate until an empty list is returned.
39
41
  # @param per_page [Integer, #to_s] (optional default 100) how many results ot get per page.
40
42
  # @overload fetch_records(name)
41
43
  # Fetch records for a name.
44
+ # @see https://api.gandi.net/docs/livedns/#get-v5-livedns-domains-fqdn-records-rrset_name
42
45
  # @param name [String] the name to fetch records for.
43
46
  # @param page [Integer, #each<Integer>] which page(s) of results to get.
44
47
  # If page is not provided keep querying until an empty list is returned.
@@ -46,6 +49,7 @@ class GandiV5
46
49
  # @param per_page [Integer, #to_s] (optional default 100) how many results ot get per page.
47
50
  # @overload fetch_records(name, type)
48
51
  # Fetch records of a type for a name.
52
+ # @see https://api.gandi.net/docs/livedns/#get-v5-livedns-domains-fqdn-records-rrset_name-rrset_type
49
53
  # @param name [String] the name to fetch records for.
50
54
  # @param type [String] the record type to fetch.
51
55
  # @param page [Integer, #each<Integer>] which page(s) of results to get.
@@ -70,11 +74,14 @@ class GandiV5
70
74
 
71
75
  # @overload fetch_zone_lines()
72
76
  # Fetch all records for this domain.
77
+ # @see https://api.gandi.net/docs/livedns/#get-v5-livedns-domains-fqdn-records
73
78
  # @overload fetch_zone_lines(name)
74
79
  # Fetch records for a name.
80
+ # @see https://api.gandi.net/docs/livedns/#get-v5-livedns-domains-fqdn-records-rrset_name
75
81
  # @param name [String] the name to fetch records for.
76
82
  # @overload fetch_zone_lines(name, type)
77
83
  # Fetch records of a type for a name.
84
+ # @see https://api.gandi.net/docs/livedns/#get-v5-livedns-domains-fqdn-records-rrset_name-rrset_type
78
85
  # @param name [String] the name to fetch records for.
79
86
  # @param type [String] the record type to fetch.
80
87
  # @return [String]
@@ -90,6 +97,7 @@ class GandiV5
90
97
  end
91
98
 
92
99
  # Add record to this domain.
100
+ # @see https://api.gandi.net/docs/livedns/#post-v5-livedns-domains-fqdn-records
93
101
  # @param name [String]
94
102
  # @param type [String]
95
103
  # @param ttl [Integer]
@@ -113,11 +121,14 @@ class GandiV5
113
121
 
114
122
  # @overload delete_records()
115
123
  # Delete all records for this domain.
124
+ # @see https://api.gandi.net/docs/livedns/#delete-v5-livedns-domains-fqdn-records
116
125
  # @overload delete_records(name)
117
126
  # Delete records for a name.
127
+ # @see https://api.gandi.net/docs/livedns/#delete-v5-livedns-domains-fqdn-records-rrset_name
118
128
  # @param name [String] the name to delete records for.
119
129
  # @overload delete_records(name, type)
120
130
  # Delete records of a type for a name.
131
+ # @see https://api.gandi.net/docs/livedns/#delete-v5-livedns-domains-fqdn-records-rrset_name-rrset_type
121
132
  # @param name [String] the name to delete records for.
122
133
  # @param type [String] the record type to delete.
123
134
  # @return [nil]
@@ -136,6 +147,9 @@ class GandiV5
136
147
  # @param type [String, nil] only replaces record of this type (requires name).
137
148
  # @param values [Array<String>] the values to set for the record.
138
149
  # @raise [ArgumentError] if ttl is present and type is absent.
150
+ # @see https://api.gandi.net/docs/livedns/#put-v5-livedns-domains-fqdn-records
151
+ # @see https://api.gandi.net/docs/livedns/#put-v5-livedns-domains-fqdn-records-rrset_name
152
+ # @see https://api.gandi.net/docs/livedns/#put-v5-livedns-domains-fqdn-records-rrset_name-rrset_type
139
153
  # @return [String] The confirmation message from Gandi.
140
154
  # @raise [GandiV5::Error::GandiError] if Gandi returns an error.
141
155
  # rubocop:disable Metrics/PerceivedComplexity, Metrics/CyclomaticComplexity
@@ -161,6 +175,7 @@ class GandiV5
161
175
  # rubocop:enable Metrics/PerceivedComplexity, Metrics/CyclomaticComplexity
162
176
 
163
177
  # Replace all records for this domain.
178
+ # @see https://api.gandi.net/docs/livedns/#put-v5-livedns-domains-fqdn-records
164
179
  # @param text [String] zone file lines to replace the records with.
165
180
  # @return [String] The confirmation message from Gandi.
166
181
  # @raise [GandiV5::Error::GandiError] if Gandi returns an error.
@@ -199,6 +214,7 @@ class GandiV5
199
214
  end
200
215
 
201
216
  # Requery Gandi for the domain's DNSSEC keys.
217
+ # @see https://api.gandi.net/docs/livedns/#get-v5-livedns-domains-fqdn-keys
202
218
  # @return [Array<GandiV5::LiveDNS::Domain::DnssecKey>]
203
219
  # @raise [GandiV5::Error::GandiError] if Gandi returns an error.
204
220
  def fetch_dnssec_keys
@@ -215,6 +231,7 @@ class GandiV5
215
231
  end
216
232
 
217
233
  # Requery Gandi for the domain's TSIG keys.
234
+ # @see https://api.gandi.net/docs/livedns/#get-v5-livedns-domains-fqdn-axfr-tsig
218
235
  # @return [Array<GandiV5::LiveDNS::Domain::TsigKey>]
219
236
  # @raise [GandiV5::Error::GandiError] if Gandi returns an error.
220
237
  def fetch_tsig_keys
@@ -223,6 +240,7 @@ class GandiV5
223
240
  end
224
241
 
225
242
  # Add a Tsig key to this domain.
243
+ # @see https://api.gandi.net/docs/livedns/#put-v5-livedns-domains-fqdn-axfr-tsig-id
226
244
  # @param key [GandiV5::LiveDNS::Domain::TsigKey, #uuid, String, #to_s]
227
245
  # the key to add.
228
246
  # @param sharing_id [nil, String, #to_s]
@@ -235,6 +253,7 @@ class GandiV5
235
253
  end
236
254
 
237
255
  # Remove a Tsig key from this domain.
256
+ # @see https://api.gandi.net/docs/livedns/#delete-v5-livedns-domains-fqdn-axfr-tsig-id
238
257
  # @param key [GandiV5::LiveDNS::Domain::TsigKey, #uuid, String, #to_s]
239
258
  # the key to remove.
240
259
  # @param sharing_id [nil, String, #to_s]
@@ -254,6 +273,7 @@ class GandiV5
254
273
  end
255
274
 
256
275
  # Requery Gandi for the domain's AXFR clients.
276
+ # @see https://api.gandi.net/docs/livedns/#get-v5-livedns-domains-fqdn-axfr-slaves
257
277
  # @return [Array<String>] list of IP addresses.
258
278
  # @raise [GandiV5::Error::GandiError] if Gandi returns an error.
259
279
  def fetch_axfr_clients
@@ -262,6 +282,7 @@ class GandiV5
262
282
  end
263
283
 
264
284
  # Add an AXFR client to this domain.
285
+ # @see https://api.gandi.net/docs/livedns/#put-v5-livedns-domains-fqdn-axfr-slaves-ip
265
286
  # @param ip [String, #to_s] the IP address to add.
266
287
  # @raise [GandiV5::Error::GandiError] if Gandi returns an error.
267
288
  def add_axfr_client(ip)
@@ -269,6 +290,7 @@ class GandiV5
269
290
  end
270
291
 
271
292
  # Remove and AXFR client from this domain.
293
+ # @see https://api.gandi.net/docs/livedns/#delete-v5-livedns-domains-fqdn-axfr-slaves-ip
272
294
  # @param ip [String, #to_s] the IP address to remove.
273
295
  # @raise [GandiV5::Error::GandiError] if Gandi returns an error.
274
296
  def remove_axfr_client(ip)
@@ -276,6 +298,7 @@ class GandiV5
276
298
  end
277
299
 
278
300
  # List the domains.
301
+ # @see https://api.gandi.net/docs/livedns/#get-v5-livedns-domains
279
302
  # @param page [#each<Integer, #to_s>] the page(s) of results to retrieve.
280
303
  # If page is not provided keep querying until an empty list is returned.
281
304
  # If page responds to .each then iterate until an empty list is returned.
@@ -300,6 +323,7 @@ class GandiV5
300
323
  end
301
324
 
302
325
  # Get a domain.
326
+ # @see https://api.gandi.net/docs/livedns/#get-v5-livedns-domains-fqdn
303
327
  # @param fqdn [String, #to_s] the fully qualified domain name to fetch.
304
328
  # @return [GandiV5::LiveDNS::Domain]
305
329
  # @raise [GandiV5::Error::GandiError] if Gandi returns an error.
@@ -310,6 +334,7 @@ class GandiV5
310
334
 
311
335
  # Create a new domain in the LiveDNS system.
312
336
  # You must have sufficent permission to manage the domain to do this.
337
+ # @see https://api.gandi.net/docs/livedns/#post-v5-livedns-domains
313
338
  # @param fqdn [String, #to_s] the fully qualified domain to add to LiveDNS.
314
339
  # @param records [Array<Hash, GandiV5::LiveDNS::Domain::Record, #to_h, nil>]
315
340
  # @param ttl [Integer, #to_s, nil] the TTL of the SOA record.
@@ -335,6 +360,7 @@ class GandiV5
335
360
  end
336
361
 
337
362
  # Fetch the list of known record types (A, CNAME, etc.)
363
+ # @see https://api.gandi.net/docs/livedns/#get-v5-livedns-dns-rrtypes
338
364
  # @return [Array<String>]
339
365
  # @raise [GandiV5::Error::GandiError] if Gandi returns an error.
340
366
  def self.record_types
@@ -342,7 +368,8 @@ class GandiV5
342
368
  end
343
369
 
344
370
  # Get the LiveDNS servers to use for a domain.
345
- # Does not take into account any NS records that exist in the zone.
371
+ # @note Does not take into account any NS records that exist in the zone.
372
+ # @see https://api.gandi.net/docs/livedns/#get-v5-livedns-nameservers-fqdn
346
373
  # @param fqdn [String, #to_s] the fully qualified domain to hash in
347
374
  # in order to get the LiveDNS servers to use.
348
375
  # @return [Array<String>]
@@ -4,27 +4,27 @@ class GandiV5
4
4
  class LiveDNS
5
5
  class Domain
6
6
  # A DNSSEC key for a domain's DNS records.
7
- # @!attribyte [r] uuid
7
+ # @!attribute [r] uuid
8
8
  # @return [String]
9
- # @!attribyte [r] status
9
+ # @!attribute [r] status
10
10
  # @return [String]
11
- # @!attribyte [r] fqdn
11
+ # @!attribute [r] fqdn
12
12
  # @return [String]
13
- # @!attribyte [r] algorithm_id
13
+ # @!attribute [r] algorithm_id
14
14
  # @return [Integer]
15
- # @!attribyte [r] algorithm_name
15
+ # @!attribute [r] algorithm_name
16
16
  # @return [String]
17
- # @!attribyte [r] deleted
17
+ # @!attribute [r] deleted
18
18
  # @return [Boolean]
19
- # @!attribyte [r] ds
19
+ # @!attribute [r] ds
20
20
  # @return [String]
21
- # @!attribyte [r] flags
21
+ # @!attribute [r] flags
22
22
  # @return [Integer]
23
- # @!attribyte [r] fingerprint
23
+ # @!attribute [r] fingerprint
24
24
  # @return [String]
25
- # @!attribyte [r] public_key
25
+ # @!attribute [r] public_key
26
26
  # @return [String]
27
- # @!attribyte [r] tag
27
+ # @!attribute [r] tag
28
28
  # @return [String]
29
29
  class DnssecKey
30
30
  include GandiV5::Data
@@ -36,6 +36,7 @@ class GandiV5
36
36
  member :algorithm_id, gandi_key: 'algorithm'
37
37
 
38
38
  # Delete this key.
39
+ # @see https://api.gandi.net/docs/livedns/#delete-v5-livedns-domains-fqdn-keys-id
39
40
  # @return [String] The confirmation message from Gandi.
40
41
  # @raise [GandiV5::Error::GandiError] if Gandi returns an error.
41
42
  def delete
@@ -45,6 +46,7 @@ class GandiV5
45
46
  end
46
47
 
47
48
  # Undelete this key.
49
+ # @see https://api.gandi.net/docs/livedns/#patch-v5-livedns-domains-fqdn-keys-id
48
50
  # @return [String] The confirmation message from Gandi.
49
51
  # @raise [GandiV5::Error::GandiError] if Gandi returns an error.
50
52
  def undelete
@@ -66,6 +68,7 @@ class GandiV5
66
68
  end
67
69
 
68
70
  # Create a new DNSSEC key for a zone.
71
+ # @see https://api.gandi.net/docs/livedns/#post-v5-livedns-domains-fqdn-keys
69
72
  # @param fqdn [String, #to_s] the fully qualified domain to create the key for.
70
73
  # @param flags [Integer, :key_signing_key, :zone_signing_key] the key's flags.
71
74
  # @return [GandiV5::LiveDNS::Domain::DnssecKey]
@@ -80,6 +83,7 @@ class GandiV5
80
83
  end
81
84
 
82
85
  # Get keys for a FQDN from Gandi.
86
+ # @see https://api.gandi.net/docs/livedns/#get-v5-livedns-domains-fqdn-keys
83
87
  # @param fqdn [String, #to_s] The fully qualified domain name to get the keys for.
84
88
  # @return [Array<GandiV5::LiveDNS::Domain::DnssecKey>]
85
89
  # @raise [GandiV5::Error::GandiError] if Gandi returns an error.
@@ -89,6 +93,7 @@ class GandiV5
89
93
  end
90
94
 
91
95
  # Get DNSSEC key from Gandi.
96
+ # @see https://api.gandi.net/docs/livedns/#get-v5-livedns-domains-fqdn-keys-id
92
97
  # @param fqdn [String, #to_s] The fully qualified domain name the key was made for.
93
98
  # @param uuid [String, #to_s] the UUID of the key to fetch.
94
99
  # @return [GandiV5::LiveDNS::Domain::DnssecKey]
@@ -30,6 +30,7 @@ class GandiV5
30
30
  alias snapshot_uuid uuid
31
31
 
32
32
  # Delete this snapshot.
33
+ # @see https://api.gandi.net/docs/livedns/#delete-v5-livedns-domains-fqdn-snapshots-id
33
34
  # @return [String] The confirmation message from Gandi.
34
35
  # @raise [GandiV5::Error::GandiError] if Gandi returns an error.
35
36
  def delete
@@ -38,6 +39,7 @@ class GandiV5
38
39
  end
39
40
 
40
41
  # Update this snapshot.
42
+ # @see https://api.gandi.net/docs/livedns/#patch-v5-livedns-domains-fqdn-snapshots-id
41
43
  # @param name [String, #to_s] new name for the snapshot.
42
44
  # @return [String] The confirmation message from Gandi.
43
45
  # @raise [GandiV5::Error::GandiError] if Gandi returns an error.
@@ -48,6 +50,7 @@ class GandiV5
48
50
  end
49
51
 
50
52
  # Get snapshot details for this FQDN from Gandi.
53
+ # @see https://api.gandi.net/docs/livedns/#get-v5-livedns-domains-fqdn-snapshots
51
54
  # @param fqdn [String, #to_s] The fully qualified domain name to get the snapshots for.
52
55
  # @param page [#each<Integer, #to_s>] the page(s) of results to retrieve.
53
56
  # If page is not provided keep querying until an empty list is returned.
@@ -67,6 +70,7 @@ class GandiV5
67
70
  end
68
71
 
69
72
  # Get snapshot from Gandi.
73
+ # @see https://api.gandi.net/docs/livedns/#get-v5-livedns-domains-fqdn-snapshots-id
70
74
  # @param fqdn [String, #to_s] The fully qualified domain name the snapshot was made for.
71
75
  # @param uuid [String, #to_s] the UUID of the snapshot to fetch.
72
76
  # @return [GandiV5::LiveDNS::Domain::Snapshot]
@@ -4,13 +4,13 @@ class GandiV5
4
4
  class LiveDNS
5
5
  class Domain
6
6
  # A Tsig key.
7
- # @!attribyte [r] uuid
7
+ # @!attribute [r] uuid
8
8
  # @return [String]
9
- # @!attribyte [r] name
9
+ # @!attribute [r] name
10
10
  # @return [String]
11
- # @!attribyte [r] secret
11
+ # @!attribute [r] secret
12
12
  # @return [String]
13
- # @!attribyte [r] config_examples
13
+ # @!attribute [r] config_examples
14
14
  # @return [Hash<Symbol -> String>]
15
15
  class TsigKey
16
16
  include GandiV5::Data
@@ -28,6 +28,7 @@ class GandiV5
28
28
  )
29
29
 
30
30
  # Create a new DNSSEC key for a zone.
31
+ # @see https://api.gandi.net/docs/livedns/#post-v5-livedns-axfr-tsig
31
32
  # @param sharing_id [nil, String, #to_s]
32
33
  # @return [GandiV5::LiveDNS::Domain::DnssecKey]
33
34
  # @raise [GandiV5::Error::GandiError] if Gandi returns an error.
@@ -42,6 +43,7 @@ class GandiV5
42
43
  # Get keys from Gandi.
43
44
  # If you need the secret, fingerprint, public_key or tag attributes you'll need
44
45
  # to use GandiV5::LiveDNS::Domain::DnssecKey.fetch on each item.
46
+ # @see https://api.gandi.net/docs/livedns/#get-v5-livedns-axfr-tsig
45
47
  # @return [Array<GandiV5::LiveDNS::Domain::TsigKey>]
46
48
  # @raise [GandiV5::Error::GandiError] if Gandi returns an error.
47
49
  def self.list
@@ -50,6 +52,7 @@ class GandiV5
50
52
  end
51
53
 
52
54
  # Get Tsig key from Gandi.
55
+ # @see https://api.gandi.net/docs/livedns/#get-v5-livedns-axfr-tsig-id
53
56
  # @param uuid [String, #to_s] the UUID of the key to fetch.
54
57
  # @return [GandiV5::LiveDNS::Domain::TsigKey]
55
58
  # @raise [GandiV5::Error::GandiError] if Gandi returns an error.
@@ -3,6 +3,7 @@
3
3
  # Namespace for classes which access LiveDNS details.
4
4
  class GandiV5
5
5
  # Gandi Simple Hosting management API.
6
+ # @see https://api.gandi.net/docs/simplehosting/
6
7
  class SimpleHosting
7
8
  # @see GandiV5::Simplehosting::Instance.list
8
9
  def self.instances
@@ -117,6 +117,7 @@ class GandiV5
117
117
  )
118
118
 
119
119
  # Instruct Gandi to restart this instance.
120
+ # @see https://api.gandi.net/docs/simplehosting/#post-v5-simplehosting-instances-instance_id-action
120
121
  # @return [String] confirmation message.
121
122
  # @raise [GandiV5::Error::GandiError] if Gandi returns an error.
122
123
  def restart
@@ -125,6 +126,7 @@ class GandiV5
125
126
  end
126
127
 
127
128
  # Instruct Gandi to console this instance.
129
+ # @see https://api.gandi.net/docs/simplehosting/#post-v5-simplehosting-instances-instance_id-action
128
130
  # @return [String] confirmation message.
129
131
  # @raise [GandiV5::Error::GandiError] if Gandi returns an error.
130
132
  def console
@@ -133,6 +135,7 @@ class GandiV5
133
135
  end
134
136
 
135
137
  # Instruct Gandi to reset the database password for this instance.
138
+ # @see https://api.gandi.net/docs/simplehosting/#post-v5-simplehosting-instances-instance_id-action
136
139
  # @return [String] confirmation message.
137
140
  # @raise [GandiV5::Error::GandiError] if Gandi returns an error.
138
141
  def reset_database_password
@@ -3,6 +3,7 @@
3
3
  class GandiV5
4
4
  class SimpleHosting
5
5
  class Instance
6
+ # An application running on a simple hosting instance.
6
7
  # @!attribute [r] name
7
8
  # @return [String]
8
9
  # @!attribute [r] parameters
@@ -3,6 +3,7 @@
3
3
  class GandiV5
4
4
  class SimpleHosting
5
5
  class Instance
6
+ # A simple hosting instance.
6
7
  # @!attribute [r] name
7
8
  # @return [String]
8
9
  # @!attribute [r] status
@@ -3,7 +3,7 @@
3
3
  class GandiV5
4
4
  class SimpleHosting
5
5
  class Instance
6
- # Sharing space which contains other billable items.
6
+ # A language running on a simple hosting instance.
7
7
  # @!attribute [r] name
8
8
  # @return [String]
9
9
  # @!attribute [r] single_application
@@ -3,6 +3,7 @@
3
3
  class GandiV5
4
4
  class SimpleHosting
5
5
  class Instance
6
+ # An available upgrade on a simple hosting instance.
6
7
  # @!attribute [r] name
7
8
  # @return [String]
8
9
  # @!attribute [r] status
@@ -4,7 +4,7 @@
4
4
  class GandiV5
5
5
  class SimpleHosting
6
6
  class Instance
7
- # A simple hosting virtual host.
7
+ # A virtual host on a simple hosting instance.
8
8
  # @see https://api.gandi.net/docs/simplehosting/
9
9
  # @!attribute [r] created_at
10
10
  # @return [Time]
@@ -139,7 +139,7 @@ class GandiV5
139
139
 
140
140
  # Get information on a virtual host.
141
141
  # @see https://api.gandi.net/docs/simplehosting#get-v5-simplehosting-instances-instance_id-vhosts-vhost_fqdn
142
- # @param uuid [String, #to_s] the UUID of the simple hosting instance.
142
+ # @param instance_uuid [String, #to_s] the UUID of the simple hosting instance.
143
143
  # @param fqdn [String, #to_s] the fully qualified domain name of the virtual host.
144
144
  # @return [GandiV5::SimpleHosting::Instance]
145
145
  # @raise [GandiV5::Error::GandiError] if Gandi returns an error.