gandi_v5 0.8.0 → 0.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.
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.