gandi_v5 0.9.1 → 0.10.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (49) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +18 -0
  3. data/README.md +10 -6
  4. data/lib/gandi_v5.rb +2 -0
  5. data/lib/gandi_v5/domain.rb +39 -1
  6. data/lib/gandi_v5/domain/transfer_in.rb +2 -0
  7. data/lib/gandi_v5/domain/web_forwarding.rb +182 -0
  8. data/lib/gandi_v5/email.rb +2 -0
  9. data/lib/gandi_v5/email/forward.rb +1 -1
  10. data/lib/gandi_v5/email/mailbox.rb +1 -1
  11. data/lib/gandi_v5/live_dns/domain/snapshot.rb +1 -1
  12. data/lib/gandi_v5/live_dns/domain/tsig_key.rb +1 -1
  13. data/lib/gandi_v5/simple_hosting/instance.rb +6 -0
  14. data/lib/gandi_v5/simple_hosting/instance/virtual_host.rb +87 -2
  15. data/lib/gandi_v5/simple_hosting/instance/virtual_host/linked_dns_zone.rb +1 -1
  16. data/lib/gandi_v5/template.rb +271 -0
  17. data/lib/gandi_v5/template/dispatch.rb +109 -0
  18. data/lib/gandi_v5/template/payload.rb +64 -0
  19. data/lib/gandi_v5/template/payload/dns_record.rb +23 -0
  20. data/lib/gandi_v5/template/payload/web_forwarding.rb +82 -0
  21. data/lib/gandi_v5/version.rb +1 -1
  22. data/spec/fixtures/bodies/GandiV5_Domain_WebForwarding/fetch.yml +9 -0
  23. data/spec/fixtures/bodies/GandiV5_Domain_WebForwarding/list.yml +9 -0
  24. data/spec/fixtures/bodies/GandiV5_Template/fetch.yml +41 -0
  25. data/spec/fixtures/bodies/GandiV5_Template/list.yml +20 -0
  26. data/spec/fixtures/bodies/GandiV5_Template_Dispatch/fetch.yml +49 -0
  27. data/spec/spec_helper.rb +8 -7
  28. data/spec/units/gandi_v5/domain/web_forwarding_spec.rb +150 -0
  29. data/spec/units/gandi_v5/domain_spec.rb +50 -0
  30. data/spec/units/gandi_v5/simple_hosting/instance/virtual_host_spec.rb +125 -0
  31. data/spec/units/gandi_v5/simple_hosting/instance_spec.rb +8 -0
  32. data/spec/units/gandi_v5/template/dispatch_spec.rb +70 -0
  33. data/spec/units/gandi_v5/template/payload/web_forwarding_spec.rb +44 -0
  34. data/spec/units/gandi_v5/template_spec.rb +341 -0
  35. data/spec/units/gandi_v5_spec.rb +1 -1
  36. metadata +73 -47
  37. data/spec/units/gandi_v5/billing/info_spec.rb +0 -4
  38. data/spec/units/gandi_v5/domain/availability/product/period_spec.rb +0 -4
  39. data/spec/units/gandi_v5/domain/availability/product/price_spec.rb +0 -4
  40. data/spec/units/gandi_v5/domain/availability/product_spec.rb +0 -4
  41. data/spec/units/gandi_v5/domain/availability/tax_spec.rb +0 -4
  42. data/spec/units/gandi_v5/domain/contract_spec.rb +0 -4
  43. data/spec/units/gandi_v5/domain/dates_spec.rb +0 -4
  44. data/spec/units/gandi_v5/domain/restore_information_spec.rb +0 -4
  45. data/spec/units/gandi_v5/error_spec.rb +0 -4
  46. data/spec/units/gandi_v5/sharing_space_spec.rb +0 -4
  47. data/spec/units/gandi_v5/simple_hosting/instance/database_spec.rb +0 -4
  48. data/spec/units/gandi_v5/simple_hosting/instance/language_spec.rb +0 -4
  49. data/spec/units/gandi_v5/simple_hosting/instance/upgrade_spec.rb +0 -4
@@ -246,7 +246,7 @@ describe GandiV5 do
246
246
 
247
247
  describe '.paginated_get' do
248
248
  let(:url) { "#{GandiV5::BASE}test/url" }
249
- let(:do_nothing) { ->(_this_data) { nil } }
249
+ let(:do_nothing) { ->(_this_data) {} }
250
250
 
251
251
  it 'Keeps fetching until getting a partial list' do
252
252
  headers1 = { params: { 'page' => 1, 'per_page' => 2 } }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gandi_v5
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.1
4
+ version: 0.10.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Robert Gauld
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-12-25 00:00:00.000000000 Z
11
+ date: 2021-01-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: dotenv
@@ -58,20 +58,6 @@ dependencies:
58
58
  - - "~>"
59
59
  - !ruby/object:Gem::Version
60
60
  version: '2.1'
61
- - !ruby/object:Gem::Dependency
62
- name: coveralls
63
- requirement: !ruby/object:Gem::Requirement
64
- requirements:
65
- - - "~>"
66
- - !ruby/object:Gem::Version
67
- version: '0.8'
68
- type: :development
69
- prerelease: false
70
- version_requirements: !ruby/object:Gem::Requirement
71
- requirements:
72
- - - "~>"
73
- - !ruby/object:Gem::Version
74
- version: '0.8'
75
61
  - !ruby/object:Gem::Dependency
76
62
  name: guard
77
63
  requirement: !ruby/object:Gem::Requirement
@@ -202,14 +188,14 @@ dependencies:
202
188
  requirements:
203
189
  - - "~>"
204
190
  - !ruby/object:Gem::Version
205
- version: '0.87'
191
+ version: '1.7'
206
192
  type: :development
207
193
  prerelease: false
208
194
  version_requirements: !ruby/object:Gem::Requirement
209
195
  requirements:
210
196
  - - "~>"
211
197
  - !ruby/object:Gem::Version
212
- version: '0.87'
198
+ version: '1.7'
213
199
  - !ruby/object:Gem::Dependency
214
200
  name: rubocop-performance
215
201
  requirement: !ruby/object:Gem::Requirement
@@ -224,20 +210,62 @@ dependencies:
224
210
  - - "~>"
225
211
  - !ruby/object:Gem::Version
226
212
  version: '1.7'
213
+ - !ruby/object:Gem::Dependency
214
+ name: rubocop-rake
215
+ requirement: !ruby/object:Gem::Requirement
216
+ requirements:
217
+ - - "~>"
218
+ - !ruby/object:Gem::Version
219
+ version: 0.5.1
220
+ type: :development
221
+ prerelease: false
222
+ version_requirements: !ruby/object:Gem::Requirement
223
+ requirements:
224
+ - - "~>"
225
+ - !ruby/object:Gem::Version
226
+ version: 0.5.1
227
+ - !ruby/object:Gem::Dependency
228
+ name: rubocop-rspec
229
+ requirement: !ruby/object:Gem::Requirement
230
+ requirements:
231
+ - - "~>"
232
+ - !ruby/object:Gem::Version
233
+ version: '2.1'
234
+ type: :development
235
+ prerelease: false
236
+ version_requirements: !ruby/object:Gem::Requirement
237
+ requirements:
238
+ - - "~>"
239
+ - !ruby/object:Gem::Version
240
+ version: '2.1'
227
241
  - !ruby/object:Gem::Dependency
228
242
  name: simplecov
229
243
  requirement: !ruby/object:Gem::Requirement
230
244
  requirements:
231
245
  - - "~>"
232
246
  - !ruby/object:Gem::Version
233
- version: '0.7'
247
+ version: '0.18'
234
248
  type: :development
235
249
  prerelease: false
236
250
  version_requirements: !ruby/object:Gem::Requirement
237
251
  requirements:
238
252
  - - "~>"
239
253
  - !ruby/object:Gem::Version
240
- version: '0.7'
254
+ version: '0.18'
255
+ - !ruby/object:Gem::Dependency
256
+ name: simplecov-lcov
257
+ requirement: !ruby/object:Gem::Requirement
258
+ requirements:
259
+ - - "~>"
260
+ - !ruby/object:Gem::Version
261
+ version: '0.8'
262
+ type: :development
263
+ prerelease: false
264
+ version_requirements: !ruby/object:Gem::Requirement
265
+ requirements:
266
+ - - "~>"
267
+ - !ruby/object:Gem::Version
268
+ version: '0.8'
241
269
  - !ruby/object:Gem::Dependency
242
270
  name: timecop
243
271
  requirement: !ruby/object:Gem::Requirement
@@ -319,6 +347,7 @@ files:
319
347
  - lib/gandi_v5/domain/tld.rb
320
348
  - lib/gandi_v5/domain/transfer_in.rb
321
349
  - lib/gandi_v5/domain/transfer_in/availability.rb
350
+ - lib/gandi_v5/domain/web_forwarding.rb
322
351
  - lib/gandi_v5/email.rb
323
352
  - lib/gandi_v5/email/forward.rb
324
353
  - lib/gandi_v5/email/mailbox.rb
@@ -344,6 +373,11 @@ files:
344
373
  - lib/gandi_v5/simple_hosting/instance/upgrade.rb
345
374
  - lib/gandi_v5/simple_hosting/instance/virtual_host.rb
346
375
  - lib/gandi_v5/simple_hosting/instance/virtual_host/linked_dns_zone.rb
376
+ - lib/gandi_v5/template.rb
377
+ - lib/gandi_v5/template/dispatch.rb
378
+ - lib/gandi_v5/template/payload.rb
379
+ - lib/gandi_v5/template/payload/dns_record.rb
380
+ - lib/gandi_v5/template/payload/web_forwarding.rb
347
381
  - lib/gandi_v5/version.rb
348
382
  - spec/.rubocop.yml
349
383
  - spec/features/list_domain_renewals_spec.rb
@@ -362,6 +396,8 @@ files:
362
396
  - spec/fixtures/bodies/GandiV5_Domain_TLD/list.yml
363
397
  - spec/fixtures/bodies/GandiV5_Domain_TransferIn/fetch.yml
364
398
  - spec/fixtures/bodies/GandiV5_Domain_TransferIn_Availability/fetch.yml
399
+ - spec/fixtures/bodies/GandiV5_Domain_WebForwarding/fetch.yml
400
+ - spec/fixtures/bodies/GandiV5_Domain_WebForwarding/list.yml
365
401
  - spec/fixtures/bodies/GandiV5_Email_Forward/list.yml
366
402
  - spec/fixtures/bodies/GandiV5_Email_Mailbox/fetch.yml
367
403
  - spec/fixtures/bodies/GandiV5_Email_Mailbox/list.yml
@@ -384,12 +420,14 @@ files:
384
420
  - spec/fixtures/bodies/GandiV5_SimpleHosting_Instance/list.yml
385
421
  - spec/fixtures/bodies/GandiV5_SimpleHosting_Instance_VirtualHost/fetch.yml
386
422
  - spec/fixtures/bodies/GandiV5_SimpleHosting_Instance_VirtualHost/list.yml
423
+ - spec/fixtures/bodies/GandiV5_Template/fetch.yml
424
+ - spec/fixtures/bodies/GandiV5_Template/list.yml
425
+ - spec/fixtures/bodies/GandiV5_Template_Dispatch/fetch.yml
387
426
  - spec/fixtures/vcr/Examples/List_domain_renewals.yml
388
427
  - spec/fixtures/vcr/Examples/List_email_addresses.yml
389
428
  - spec/spec_helper.rb
390
429
  - spec/test.env
391
430
  - spec/units/gandi_v5/billing/info/prepaid_spec.rb
392
- - spec/units/gandi_v5/billing/info_spec.rb
393
431
  - spec/units/gandi_v5/billing_spec.rb
394
432
  - spec/units/gandi_v5/data/converter/array_of_spec.rb
395
433
  - spec/units/gandi_v5/data/converter/integer_spec.rb
@@ -398,20 +436,14 @@ files:
398
436
  - spec/units/gandi_v5/data/converter_spec.rb
399
437
  - spec/units/gandi_v5/data_spec.rb
400
438
  - spec/units/gandi_v5/domain/auto_renew_spec.rb
401
- - spec/units/gandi_v5/domain/availability/product/period_spec.rb
402
- - spec/units/gandi_v5/domain/availability/product/price_spec.rb
403
- - spec/units/gandi_v5/domain/availability/product_spec.rb
404
- - spec/units/gandi_v5/domain/availability/tax_spec.rb
405
439
  - spec/units/gandi_v5/domain/availability_spec.rb
406
440
  - spec/units/gandi_v5/domain/contact_spec.rb
407
- - spec/units/gandi_v5/domain/contract_spec.rb
408
- - spec/units/gandi_v5/domain/dates_spec.rb
409
441
  - spec/units/gandi_v5/domain/live_dns_spec.rb
410
442
  - spec/units/gandi_v5/domain/renewal_information_spec.rb
411
- - spec/units/gandi_v5/domain/restore_information_spec.rb
412
443
  - spec/units/gandi_v5/domain/tld_spec.rb
413
444
  - spec/units/gandi_v5/domain/transfer_in/availability_spec.rb
414
445
  - spec/units/gandi_v5/domain/transfer_in_spec.rb
446
+ - spec/units/gandi_v5/domain/web_forwarding_spec.rb
415
447
  - spec/units/gandi_v5/domain_spec.rb
416
448
  - spec/units/gandi_v5/email/forward_spec.rb
417
449
  - spec/units/gandi_v5/email/mailbox/responder_spec.rb
@@ -419,7 +451,6 @@ files:
419
451
  - spec/units/gandi_v5/email/offer_spec.rb
420
452
  - spec/units/gandi_v5/email/slot_spec.rb
421
453
  - spec/units/gandi_v5/error/gandi_error_spec.rb
422
- - spec/units/gandi_v5/error_spec.rb
423
454
  - spec/units/gandi_v5/live_dns/domain/dnssec_key_spec.rb
424
455
  - spec/units/gandi_v5/live_dns/domain/record_spec.rb
425
456
  - spec/units/gandi_v5/live_dns/domain/snapshot_spec.rb
@@ -428,19 +459,18 @@ files:
428
459
  - spec/units/gandi_v5/live_dns_spec.rb
429
460
  - spec/units/gandi_v5/organization/customer_spec.rb
430
461
  - spec/units/gandi_v5/organization_spec.rb
431
- - spec/units/gandi_v5/sharing_space_spec.rb
432
462
  - spec/units/gandi_v5/simple_hosting/instance/application_spec.rb
433
- - spec/units/gandi_v5/simple_hosting/instance/database_spec.rb
434
- - spec/units/gandi_v5/simple_hosting/instance/language_spec.rb
435
- - spec/units/gandi_v5/simple_hosting/instance/upgrade_spec.rb
436
463
  - spec/units/gandi_v5/simple_hosting/instance/virtual_host/linked_dns_zone_spec.rb
437
464
  - spec/units/gandi_v5/simple_hosting/instance/virtual_host_spec.rb
438
465
  - spec/units/gandi_v5/simple_hosting/instance_spec.rb
439
466
  - spec/units/gandi_v5/simple_hosting_spec.rb
467
+ - spec/units/gandi_v5/template/dispatch_spec.rb
468
+ - spec/units/gandi_v5/template/payload/web_forwarding_spec.rb
469
+ - spec/units/gandi_v5/template_spec.rb
440
470
  - spec/units/gandi_v5_spec.rb
441
471
  homepage: https://github.com/robertgauld/gandi_v5
442
472
  licenses:
443
- - BSD 3 clause
473
+ - BSD-3-Clause
444
474
  metadata:
445
475
  bug_tracker_uri: https://github.com/robertgauld/gandi_v5/issues
446
476
  changelog_uri: https://github.com/robertgauld/gandi_v5/blob/main/CHANGELOG.md
@@ -491,6 +521,8 @@ test_files:
491
521
  - spec/fixtures/bodies/GandiV5_Domain_TLD/list.yml
492
522
  - spec/fixtures/bodies/GandiV5_Domain_TransferIn/fetch.yml
493
523
  - spec/fixtures/bodies/GandiV5_Domain_TransferIn_Availability/fetch.yml
524
+ - spec/fixtures/bodies/GandiV5_Domain_WebForwarding/fetch.yml
525
+ - spec/fixtures/bodies/GandiV5_Domain_WebForwarding/list.yml
494
526
  - spec/fixtures/bodies/GandiV5_Email_Forward/list.yml
495
527
  - spec/fixtures/bodies/GandiV5_Email_Mailbox/fetch.yml
496
528
  - spec/fixtures/bodies/GandiV5_Email_Mailbox/list.yml
@@ -513,12 +545,14 @@ test_files:
513
545
  - spec/fixtures/bodies/GandiV5_SimpleHosting_Instance/list.yml
514
546
  - spec/fixtures/bodies/GandiV5_SimpleHosting_Instance_VirtualHost/fetch.yml
515
547
  - spec/fixtures/bodies/GandiV5_SimpleHosting_Instance_VirtualHost/list.yml
548
+ - spec/fixtures/bodies/GandiV5_Template/fetch.yml
549
+ - spec/fixtures/bodies/GandiV5_Template/list.yml
550
+ - spec/fixtures/bodies/GandiV5_Template_Dispatch/fetch.yml
516
551
  - spec/fixtures/vcr/Examples/List_domain_renewals.yml
517
552
  - spec/fixtures/vcr/Examples/List_email_addresses.yml
518
553
  - spec/spec_helper.rb
519
554
  - spec/test.env
520
555
  - spec/units/gandi_v5/billing/info/prepaid_spec.rb
521
- - spec/units/gandi_v5/billing/info_spec.rb
522
556
  - spec/units/gandi_v5/billing_spec.rb
523
557
  - spec/units/gandi_v5/data/converter/array_of_spec.rb
524
558
  - spec/units/gandi_v5/data/converter/integer_spec.rb
@@ -527,20 +561,14 @@ test_files:
527
561
  - spec/units/gandi_v5/data/converter_spec.rb
528
562
  - spec/units/gandi_v5/data_spec.rb
529
563
  - spec/units/gandi_v5/domain/auto_renew_spec.rb
530
- - spec/units/gandi_v5/domain/availability/product/period_spec.rb
531
- - spec/units/gandi_v5/domain/availability/product/price_spec.rb
532
- - spec/units/gandi_v5/domain/availability/product_spec.rb
533
- - spec/units/gandi_v5/domain/availability/tax_spec.rb
534
564
  - spec/units/gandi_v5/domain/availability_spec.rb
535
565
  - spec/units/gandi_v5/domain/contact_spec.rb
536
- - spec/units/gandi_v5/domain/contract_spec.rb
537
- - spec/units/gandi_v5/domain/dates_spec.rb
538
566
  - spec/units/gandi_v5/domain/live_dns_spec.rb
539
567
  - spec/units/gandi_v5/domain/renewal_information_spec.rb
540
- - spec/units/gandi_v5/domain/restore_information_spec.rb
541
568
  - spec/units/gandi_v5/domain/tld_spec.rb
542
569
  - spec/units/gandi_v5/domain/transfer_in/availability_spec.rb
543
570
  - spec/units/gandi_v5/domain/transfer_in_spec.rb
571
+ - spec/units/gandi_v5/domain/web_forwarding_spec.rb
544
572
  - spec/units/gandi_v5/domain_spec.rb
545
573
  - spec/units/gandi_v5/email/forward_spec.rb
546
574
  - spec/units/gandi_v5/email/mailbox/responder_spec.rb
@@ -548,7 +576,6 @@ test_files:
548
576
  - spec/units/gandi_v5/email/offer_spec.rb
549
577
  - spec/units/gandi_v5/email/slot_spec.rb
550
578
  - spec/units/gandi_v5/error/gandi_error_spec.rb
551
- - spec/units/gandi_v5/error_spec.rb
552
579
  - spec/units/gandi_v5/live_dns/domain/dnssec_key_spec.rb
553
580
  - spec/units/gandi_v5/live_dns/domain/record_spec.rb
554
581
  - spec/units/gandi_v5/live_dns/domain/snapshot_spec.rb
@@ -557,13 +584,12 @@ test_files:
557
584
  - spec/units/gandi_v5/live_dns_spec.rb
558
585
  - spec/units/gandi_v5/organization/customer_spec.rb
559
586
  - spec/units/gandi_v5/organization_spec.rb
560
- - spec/units/gandi_v5/sharing_space_spec.rb
561
587
  - spec/units/gandi_v5/simple_hosting/instance/application_spec.rb
562
- - spec/units/gandi_v5/simple_hosting/instance/database_spec.rb
563
- - spec/units/gandi_v5/simple_hosting/instance/language_spec.rb
564
- - spec/units/gandi_v5/simple_hosting/instance/upgrade_spec.rb
565
588
  - spec/units/gandi_v5/simple_hosting/instance/virtual_host/linked_dns_zone_spec.rb
566
589
  - spec/units/gandi_v5/simple_hosting/instance/virtual_host_spec.rb
567
590
  - spec/units/gandi_v5/simple_hosting/instance_spec.rb
568
591
  - spec/units/gandi_v5/simple_hosting_spec.rb
592
+ - spec/units/gandi_v5/template/dispatch_spec.rb
593
+ - spec/units/gandi_v5/template/payload/web_forwarding_spec.rb
594
+ - spec/units/gandi_v5/template_spec.rb
569
595
  - spec/units/gandi_v5_spec.rb
@@ -1,4 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- describe GandiV5::Billing::Info do
4
- end
@@ -1,4 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- describe GandiV5::Domain::Availability::Product::Period do
4
- end
@@ -1,4 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- describe GandiV5::Domain::Availability::Product::Price do
4
- end
@@ -1,4 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- describe GandiV5::Domain::Availability::Product do
4
- end
@@ -1,4 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- describe GandiV5::Domain::Availability::Tax do
4
- end
@@ -1,4 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- describe GandiV5::Domain::Contract do
4
- end
@@ -1,4 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- describe GandiV5::Domain::Dates do
4
- end
@@ -1,4 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- describe GandiV5::Domain::RestoreInformation do
4
- end
@@ -1,4 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- describe GandiV5::Error::GandiError do
4
- end
@@ -1,4 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- describe GandiV5::SharingSpace do
4
- end
@@ -1,4 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- describe GandiV5::SimpleHosting::Instance::Database do
4
- end
@@ -1,4 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- describe GandiV5::SimpleHosting::Instance::Language do
4
- end
@@ -1,4 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- describe GandiV5::SimpleHosting::Instance::Upgrade do
4
- end