dnsimple-ruby 1.3.2 → 1.4.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +15 -0
- data/.gitignore +9 -2
- data/.rspec +1 -0
- data/.ruby-gemset +1 -0
- data/.ruby-version +1 -0
- data/.travis.yml +7 -0
- data/CHANGELOG.md +20 -0
- data/Gemfile +0 -2
- data/LICENSE +2 -2
- data/README.md +121 -0
- data/Rakefile +30 -14
- data/bin/dnsimple.rb +1 -1
- data/dnsimple-ruby.gemspec +9 -8
- data/features/README +1 -1
- data/features/step_definitions/cli_steps.rb +1 -1
- data/features/support/env.rb +4 -4
- data/fixtures/vcr_cassettes/DNSimple_Certificate/_all.yml +45 -32
- data/fixtures/vcr_cassettes/DNSimple_Certificate/_purchase.yml +45 -32
- data/fixtures/vcr_cassettes/DNSimple_Certificate/_submit.yml +45 -32
- data/fixtures/vcr_cassettes/DNSimple_Contact/a_new_contact.yml +39 -31
- data/fixtures/vcr_cassettes/DNSimple_Contact/an_existing_contact.yml +39 -31
- data/fixtures/vcr_cassettes/DNSimple_Domain/_all.yml +113 -94
- data/fixtures/vcr_cassettes/DNSimple_Domain/applying_templates.yml +186 -156
- data/fixtures/vcr_cassettes/DNSimple_Domain/creating_a_new_domain.yml +39 -32
- data/fixtures/vcr_cassettes/DNSimple_Domain/finding_an_existing_domain/by_id.yml +39 -32
- data/fixtures/vcr_cassettes/DNSimple_Domain/finding_an_existing_domain/by_name.yml +39 -32
- data/fixtures/vcr_cassettes/DNSimple_Domain/registration/with_a_new_registrant_contact.yml +40 -32
- data/fixtures/vcr_cassettes/DNSimple_Domain/registration/with_an_existing_contact.yml +40 -32
- data/fixtures/vcr_cassettes/DNSimple_ExtendedAttribute/list_extended_attributes/for_ca.yml +262 -29
- data/fixtures/vcr_cassettes/DNSimple_ExtendedAttribute/list_extended_attributes/for_com.yml +35 -29
- data/fixtures/vcr_cassettes/DNSimple_Record/_all.yml +147 -125
- data/fixtures/vcr_cassettes/DNSimple_Record/creating_a_new_record.yml +39 -32
- data/fixtures/vcr_cassettes/DNSimple_Record/find_a_record.yml +39 -32
- data/fixtures/vcr_cassettes/DNSimple_Template/a_template.yml +41 -32
- data/fixtures/vcr_cassettes/DNSimple_User/_me.yml +38 -31
- data/lib/dnsimple.rb +14 -1
- data/lib/dnsimple/base.rb +7 -5
- data/lib/dnsimple/certificate.rb +100 -95
- data/lib/dnsimple/cli.rb +92 -93
- data/lib/dnsimple/client.rb +109 -99
- data/lib/dnsimple/commands/{describe_certificate.rb → certificate_describe.rb} +2 -2
- data/lib/dnsimple/commands/{list_certificates.rb → certificate_list.rb} +2 -2
- data/lib/dnsimple/commands/{purchase_certificate.rb → certificate_purchase.rb} +3 -5
- data/lib/dnsimple/commands/{submit_certificate.rb → certificate_submit.rb} +3 -5
- data/lib/dnsimple/commands/{create_contact.rb → contact_create.rb} +8 -6
- data/lib/dnsimple/commands/{delete_contact.rb → contact_delete.rb} +2 -2
- data/lib/dnsimple/commands/{describe_contact.rb → contact_describe.rb} +2 -2
- data/lib/dnsimple/commands/{list_contacts.rb → contact_list.rb} +2 -2
- data/lib/dnsimple/commands/{update_contact.rb → contact_update.rb} +2 -2
- data/lib/dnsimple/commands/{apply_template.rb → domain_apply_template.rb} +2 -2
- data/lib/dnsimple/commands/{check_domain.rb → domain_check.rb} +2 -2
- data/lib/dnsimple/commands/{clear_domain.rb → domain_clear.rb} +2 -2
- data/lib/dnsimple/commands/{create_domain.rb → domain_create.rb} +2 -2
- data/lib/dnsimple/commands/{delete_domain.rb → domain_delete.rb} +2 -2
- data/lib/dnsimple/commands/{describe_domain.rb → domain_describe.rb} +2 -2
- data/lib/dnsimple/commands/{list_domains.rb → domain_list.rb} +2 -2
- data/lib/dnsimple/commands/{register_domain.rb → domain_register.rb} +2 -2
- data/lib/dnsimple/commands/{transfer_domain.rb → domain_transfer.rb} +2 -2
- data/lib/dnsimple/commands/{list_extended_attributes.rb → extended_attribute_list.rb} +2 -2
- data/lib/dnsimple/commands/{describe_user.rb → me.rb} +2 -2
- data/lib/dnsimple/commands/{create_record.rb → record_create.rb} +5 -7
- data/lib/dnsimple/commands/{delete_record.rb → record_delete.rb} +2 -2
- data/lib/dnsimple/commands/{describe_record.rb → record_describe.rb} +2 -2
- data/lib/dnsimple/commands/{list_records.rb → record_list.rb} +4 -6
- data/lib/dnsimple/commands/{update_record.rb → record_update.rb} +2 -2
- data/lib/dnsimple/commands/{add_service.rb → service_add.rb} +3 -5
- data/lib/dnsimple/commands/{describe_service.rb → service_describe.rb} +2 -2
- data/lib/dnsimple/commands/{list_services.rb → service_list.rb} +2 -2
- data/lib/dnsimple/commands/{list_applied_services.rb → service_list_applied.rb} +2 -2
- data/lib/dnsimple/commands/{list_available_services.rb → service_list_available.rb} +2 -2
- data/lib/dnsimple/commands/{remove_service.rb → service_remove.rb} +2 -2
- data/lib/dnsimple/commands/{create_template.rb → template_create.rb} +2 -2
- data/lib/dnsimple/commands/{delete_template.rb → template_delete.rb} +2 -2
- data/lib/dnsimple/commands/{add_template_record.rb → template_record_create.rb} +2 -2
- data/lib/dnsimple/commands/{delete_template_record.rb → template_record_delete.rb} +2 -2
- data/lib/dnsimple/commands/{list_template_records.rb → template_record_list.rb} +2 -2
- data/lib/dnsimple/commands/{list_templates.rb → templates_list.rb} +2 -2
- data/lib/dnsimple/contact.rb +115 -110
- data/lib/dnsimple/domain.rb +134 -132
- data/lib/dnsimple/error.rb +8 -19
- data/lib/dnsimple/extended_attribute.rb +39 -33
- data/lib/dnsimple/record.rb +71 -67
- data/lib/dnsimple/service.rb +31 -24
- data/lib/dnsimple/template.rb +52 -46
- data/lib/dnsimple/template_record.rb +61 -53
- data/lib/dnsimple/transfer_order.rb +24 -18
- data/lib/dnsimple/user.rb +22 -18
- data/lib/dnsimple/version.rb +1 -1
- data/spec/README +1 -1
- data/spec/ci/.dnsimple.test +3 -0
- data/spec/commands/{purchase_certificate_spec.rb → certificate_purchase_spec.rb} +3 -4
- data/spec/commands/{submit_certificate_spec.rb → certificate_submit_spec.rb} +3 -4
- data/spec/commands/{create_record_spec.rb → record_create_spec.rb} +4 -4
- data/spec/commands/{list_records_spec.rb → records_list_spec.rb} +2 -13
- data/spec/commands/{add_service_spec.rb → service_add_spec.rb} +3 -12
- data/spec/{certificate_spec.rb → dnsimple/certificate_spec.rb} +0 -0
- data/spec/dnsimple/client_spec.rb +45 -18
- data/spec/{contact_spec.rb → dnsimple/contact_spec.rb} +3 -1
- data/spec/{domain_spec.rb → dnsimple/domain_spec.rb} +2 -0
- data/spec/{extended_attributes_spec.rb → dnsimple/extended_attributes_spec.rb} +4 -0
- data/spec/{record_spec.rb → dnsimple/record_spec.rb} +2 -0
- data/spec/{template_spec.rb → dnsimple/template_spec.rb} +0 -0
- data/spec/{user_spec.rb → dnsimple/user_spec.rb} +2 -0
- data/spec/spec_helper.rb +24 -10
- metadata +96 -99
- data/Gemfile.lock +0 -71
- data/README +0 -108
- data/README.rdoc +0 -108
- data/README.textile +0 -138
- data/lib/dnsimple/command.rb +0 -10
- data/spec/command_spec.rb +0 -19
checksums.yaml
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
---
|
2
|
+
!binary "U0hBMQ==":
|
3
|
+
metadata.gz: !binary |-
|
4
|
+
NTU4NDQ0ZDYxZGRmN2EzMWVmODQyYjAxYWY2OTg1ODc3ZDFkNjhiNQ==
|
5
|
+
data.tar.gz: !binary |-
|
6
|
+
NDAwMTE1MTVjMDViOTA4Y2NkMzQ4ODNiYTZlNzEyZjc3ZjkyYTE4Yw==
|
7
|
+
!binary "U0hBNTEy":
|
8
|
+
metadata.gz: !binary |-
|
9
|
+
NmJmNjA2Nzg5YjdhNzU3M2MwNWQzZTVjMTI2YTY1MjgwNDFlZGNmYjM3MTZm
|
10
|
+
MWFiYjBmNDhlNzU4ZTA5NmM2NjA3OTMwZWRjOTk3YWU1ZDExMmY2ZTNlYWQx
|
11
|
+
ZjA1MDgwYWQ2NWRmNWZmOWQ5ZmUwZWNhYzg5NzYxY2FjM2NhYjg=
|
12
|
+
data.tar.gz: !binary |-
|
13
|
+
MGEzMWJjYjU2NDY0NzA2NmI1OGIwYjU5NDBiYTM0MDlhZGE1YzE2ZmRlMjVl
|
14
|
+
ODM1MjEyM2E2ZjM3ZWVkNDA2OGZjYmZiMDk0Mjc5Yzk3NmY4NzE2MzgyZDEy
|
15
|
+
YzY4MDJlMDI0ZTE0ZTRlN2I3NWVkMzdmMDc5NmEzOGQ3OTNmMzc=
|
data/.gitignore
CHANGED
data/.rspec
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
--colour
|
data/.ruby-gemset
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
dnsimple-ruby
|
data/.ruby-version
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
ruby-1.9.3
|
data/.travis.yml
ADDED
data/CHANGELOG.md
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
# Changelog
|
2
|
+
|
3
|
+
## Release 1.4.0
|
4
|
+
|
5
|
+
- CHANGED: Normalized exception handling. No more RuntimeError.
|
6
|
+
In case of request error, the client raises RequestError, RecordExists or RecodNotFound
|
7
|
+
depending on the called method.
|
8
|
+
|
9
|
+
- CHANGED: Use Accept header to determine the request type instead of the .json suffix in the URL.
|
10
|
+
|
11
|
+
- CHANGED: Renamed commands to the ObjectAction scheme (e.g. CreateDomain became DomainCreate).
|
12
|
+
|
13
|
+
- CHANGED: Removed DomainError, UserNotFound, CertificateNotFound, CertificateExists error classes.
|
14
|
+
See Error and RequestError.
|
15
|
+
|
16
|
+
- CHANGED: Removed DNSimple::Command base class.
|
17
|
+
|
18
|
+
- FIXED: Cucumber was trying to execute steps on dnsimple.com main website instead of given site.
|
19
|
+
|
20
|
+
- FIXED: We're no longer accepting route format. Use the correct header.
|
data/Gemfile
CHANGED
data/LICENSE
CHANGED
@@ -1,6 +1,6 @@
|
|
1
|
-
|
1
|
+
Copyright (c) 2010-2013 Aetrion LLC
|
2
2
|
|
3
|
-
|
3
|
+
MIT License
|
4
4
|
|
5
5
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
6
6
|
of this software and associated documentation files (the "Software"), to deal
|
data/README.md
ADDED
@@ -0,0 +1,121 @@
|
|
1
|
+
# DNSimple Ruby Client
|
2
|
+
|
3
|
+
A Ruby command line utility and wrapper for the [DNSimple API](https://dnsimple.com/documentation/api).
|
4
|
+
|
5
|
+
[![Build Status](https://secure.travis-ci.org/aetrion/dnsimple-ruby.png)](http://travis-ci.org/aetrion/dnsimple-ruby)
|
6
|
+
|
7
|
+
[DNSimple](https://dnsimple.com/) provides DNS hosting
|
8
|
+
and domain registration that is simple and friendly.
|
9
|
+
We provide a full API and an easy-to-use web interface so you can get
|
10
|
+
your domain registered and set up with a minimal amount of effort.
|
11
|
+
|
12
|
+
## Installation
|
13
|
+
|
14
|
+
$ gem install dnsimple-ruby
|
15
|
+
|
16
|
+
## Credentials
|
17
|
+
|
18
|
+
Create a file in your home directory called `.dnsimple`.
|
19
|
+
|
20
|
+
In this file add the following:
|
21
|
+
|
22
|
+
username: YOUR_USERNAME
|
23
|
+
password: YOUR_PASSWORD
|
24
|
+
|
25
|
+
## Commands
|
26
|
+
|
27
|
+
There are two ways to interact with the DNSimple Ruby wrapper. The first is
|
28
|
+
to use the command line utility that is included. The commands available
|
29
|
+
are as follows:
|
30
|
+
|
31
|
+
For help:
|
32
|
+
|
33
|
+
- dnsimple help
|
34
|
+
|
35
|
+
The following commands are available for domains:
|
36
|
+
|
37
|
+
- dnsimple list
|
38
|
+
- dnsimple describe domain.com
|
39
|
+
- dnsimple create domain.com
|
40
|
+
- dnsimple register domain.com registrant_id
|
41
|
+
- dnsimple transfer domain.com registrant_id [authinfo]
|
42
|
+
- dnsimple delete domain.com
|
43
|
+
- dnsimple apply domain.com template_short_name
|
44
|
+
|
45
|
+
Please note that domain registration and transfer can only be done through the API for domains that do not require extended attributes. A future version of the API will add support for extended attributes.
|
46
|
+
|
47
|
+
The following commands are available for records:
|
48
|
+
|
49
|
+
- dnsimple record:create [--prio=priority] domain.com name type content [ttl]
|
50
|
+
- dnsimple record:list domain.com
|
51
|
+
- dnsimple record:delete domain.com record_id
|
52
|
+
|
53
|
+
The following commands are available for custom templates:
|
54
|
+
|
55
|
+
- dnsimple template:list
|
56
|
+
- dnsimple template:create name short_name [description]
|
57
|
+
- dnsimple template:delete short_name
|
58
|
+
- dnsimple template:list_records short_name
|
59
|
+
- dnsimple template:add_record short_name name type content [ttl] [prio]
|
60
|
+
- dnsimple template:delete_record short_name template_record_id
|
61
|
+
|
62
|
+
The following commands are available for managing contacts:
|
63
|
+
|
64
|
+
- dnsimple contact:list
|
65
|
+
- dnsimple contact:describe id
|
66
|
+
- dnsimple contact:create [name:value name:value ...]
|
67
|
+
- dnsimple contact:update id [name:value name:value ...]
|
68
|
+
- dnsimple contact:delete id
|
69
|
+
|
70
|
+
The following commands are available for purchasing certificates:
|
71
|
+
|
72
|
+
- dnsimple certificate:purchase domain.com name contact_id
|
73
|
+
- dnsimple certificate:submit id
|
74
|
+
|
75
|
+
The contact name/value pairs are:
|
76
|
+
|
77
|
+
- first_name
|
78
|
+
- last_name
|
79
|
+
- organization_name (optional)
|
80
|
+
- job_title (required if organization name is specified)
|
81
|
+
- address1
|
82
|
+
- address2 (optional)
|
83
|
+
- city
|
84
|
+
- state_province (also aliased as state)
|
85
|
+
- postal_code
|
86
|
+
- country
|
87
|
+
- email
|
88
|
+
- phone
|
89
|
+
- phone_ext (optional)
|
90
|
+
- fax (optional)
|
91
|
+
|
92
|
+
## Wrapper Classes
|
93
|
+
|
94
|
+
In addition to the command line utility you may also use the included Ruby
|
95
|
+
classes directly in your Ruby applications.
|
96
|
+
|
97
|
+
Here's a short example.
|
98
|
+
|
99
|
+
require 'rubygems'
|
100
|
+
require 'dnsimple'
|
101
|
+
|
102
|
+
DNSimple::Client.username = 'YOUR_USERNAME'
|
103
|
+
DNSimple::Client.password = 'YOUR_PASSWORD'
|
104
|
+
DNSimple::Client.http_proxy = {}
|
105
|
+
|
106
|
+
user = DNSimple::User.me
|
107
|
+
puts "#{user.domain_count} domains"
|
108
|
+
|
109
|
+
puts "Domains..."
|
110
|
+
DNSimple::Domain.all.each do |domain|
|
111
|
+
puts " #{domain.name}"
|
112
|
+
end
|
113
|
+
|
114
|
+
domain = DNSimple::Domain.find("example.com")
|
115
|
+
domain.apply("template") # applies a standard or custom template to the domain
|
116
|
+
|
117
|
+
domain = DNSimple::Domain.create("newdomain.com")
|
118
|
+
puts "Added #{domain.name}"
|
119
|
+
domain.delete # removes from DNSimple
|
120
|
+
|
121
|
+
For the full API documentation visit http://rubydoc.info/gems/dnsimple-ruby
|
data/Rakefile
CHANGED
@@ -1,17 +1,33 @@
|
|
1
|
-
require 'rake'
|
2
|
-
require 'rake/rdoctask'
|
3
|
-
|
4
1
|
require 'bundler/gem_tasks'
|
5
2
|
|
6
|
-
|
7
|
-
task :default =>
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
3
|
+
# Run test by default.
|
4
|
+
task :default => :spec
|
5
|
+
task :test => :spec
|
6
|
+
|
7
|
+
|
8
|
+
require 'rspec/core/rake_task'
|
9
|
+
|
10
|
+
RSpec::Core::RakeTask.new do |t|
|
11
|
+
t.verbose = !!ENV["VERBOSE"]
|
12
|
+
end
|
13
|
+
|
14
|
+
|
15
|
+
require 'yard'
|
16
|
+
|
17
|
+
YARD::Rake::YardocTask.new(:yardoc) do |y|
|
18
|
+
y.options = ["--output-dir", "yardoc"]
|
19
|
+
end
|
20
|
+
|
21
|
+
namespace :yardoc do
|
22
|
+
task :clobber do
|
23
|
+
rm_r "yardoc" rescue nil
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
task :clobber => "yardoc:clobber"
|
28
|
+
|
29
|
+
|
30
|
+
desc "Open an irb session preloaded with this library"
|
31
|
+
task :console do
|
32
|
+
sh "irb -rubygems -I lib -r dnsimple.rb"
|
17
33
|
end
|
data/bin/dnsimple.rb
CHANGED
@@ -97,7 +97,7 @@ if $0.split("/").last == 'dnsimple'
|
|
97
97
|
|
98
98
|
global = OptionParser.new do |opts|
|
99
99
|
opts.on("-s", "--site [ARG]") do |site|
|
100
|
-
DNSimple::Client.
|
100
|
+
DNSimple::Client.site_uri = site
|
101
101
|
end
|
102
102
|
opts.on("-u", "--username [ARG]") do |username|
|
103
103
|
DNSimple::Client.username = username
|
data/dnsimple-ruby.gemspec
CHANGED
@@ -14,18 +14,19 @@ Gem::Specification.new do |s|
|
|
14
14
|
s.require_paths = ['lib']
|
15
15
|
s.files = `git ls-files`.split("\n")
|
16
16
|
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
17
|
-
s.extra_rdoc_files = %w(
|
17
|
+
s.extra_rdoc_files = %w( README.md CHANGELOG.md LICENSE )
|
18
18
|
s.executables = `git ls-files -- bin/*`.split("\n").collect { |f|
|
19
19
|
File.basename(f)
|
20
20
|
}
|
21
21
|
|
22
22
|
s.add_runtime_dependency 'httparty', '>= 0'
|
23
23
|
|
24
|
-
s.add_development_dependency '
|
25
|
-
s.add_development_dependency '
|
26
|
-
s.add_development_dependency '
|
27
|
-
s.add_development_dependency '
|
28
|
-
s.add_development_dependency '
|
29
|
-
s.add_development_dependency 'rspec'
|
30
|
-
s.add_development_dependency 'vcr'
|
24
|
+
s.add_development_dependency 'rake'
|
25
|
+
s.add_development_dependency 'aruba'
|
26
|
+
s.add_development_dependency 'cucumber'
|
27
|
+
s.add_development_dependency 'fakeweb'
|
28
|
+
s.add_development_dependency 'mocha'
|
29
|
+
s.add_development_dependency 'rspec'
|
30
|
+
s.add_development_dependency 'vcr'
|
31
|
+
s.add_development_dependency 'yard'
|
31
32
|
end
|
data/features/README
CHANGED
@@ -4,5 +4,5 @@ Given /^I have set up my credentials$/ do
|
|
4
4
|
credentials = YAML.load(File.new(File.expand_path(path)))
|
5
5
|
credentials['username'].should_not be_nil, "You must specify a username in your #{path} file"
|
6
6
|
credentials['password'].should_not be_nil, "You must specify a password in your #{path} file"
|
7
|
-
credentials['
|
7
|
+
credentials['base_uri'].should_not be_nil, "For cucumber to run, you must specify a base_uri in your #{path} file"
|
8
8
|
end
|
data/features/support/env.rb
CHANGED
@@ -1,10 +1,10 @@
|
|
1
1
|
require 'rubygems'
|
2
|
-
require 'bundler'
|
3
|
-
|
4
|
-
Bundler.require :default, :development
|
5
|
-
|
2
|
+
require 'bundler/setup'
|
6
3
|
require 'aruba/cucumber'
|
7
4
|
|
5
|
+
$:.unshift(File.dirname(__FILE__) + '/lib')
|
6
|
+
require 'dnsimple'
|
7
|
+
|
8
8
|
Before do
|
9
9
|
@aruba_timeout_seconds = 30
|
10
10
|
ENV['DNSIMPLE_CONFIG'] = '~/.dnsimple.test'
|
@@ -1,44 +1,57 @@
|
|
1
|
-
---
|
2
|
-
|
3
|
-
|
4
|
-
method:
|
5
|
-
uri:
|
6
|
-
body:
|
7
|
-
|
8
|
-
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: https://<USERNAME>:<PASSWORD>@test.dnsimple.com/domains/example.com/certificates
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: ''
|
9
|
+
headers:
|
10
|
+
Accept:
|
9
11
|
- application/json
|
10
|
-
|
12
|
+
Authorization:
|
11
13
|
- Basic YW50aG9ueWVkZW5AZ21haWwuY29tOmxldG1laW4=
|
12
|
-
response:
|
13
|
-
status:
|
14
|
+
response:
|
15
|
+
status:
|
14
16
|
code: 200
|
15
17
|
message: OK
|
16
|
-
headers:
|
17
|
-
|
18
|
+
headers:
|
19
|
+
X-Ua-Compatible:
|
18
20
|
- IE=Edge
|
19
|
-
|
21
|
+
Access-Control-Allow-Headers:
|
20
22
|
- Authorization,Accepts,Content-Type
|
21
|
-
|
23
|
+
X-Dnsimple-Api-Version:
|
22
24
|
- 1.0.0
|
23
|
-
|
24
|
-
- "
|
25
|
-
|
25
|
+
Etag:
|
26
|
+
- ! '"ee7304ebee78ff7065676d9aff2e1967"'
|
27
|
+
Access-Control-Allow-Methods:
|
26
28
|
- OPTIONS
|
27
|
-
|
29
|
+
Content-Type:
|
28
30
|
- application/json; charset=utf-8
|
29
|
-
|
30
|
-
-
|
31
|
-
|
31
|
+
Access-Control-Allow-Origin:
|
32
|
+
- ! '*'
|
33
|
+
Date:
|
32
34
|
- Fri, 11 Nov 2011 21:18:55 GMT
|
33
|
-
|
35
|
+
Server:
|
34
36
|
- WEBrick/1.3.1 (Ruby/1.9.2/2011-07-09)
|
35
|
-
|
36
|
-
-
|
37
|
-
|
38
|
-
-
|
39
|
-
|
40
|
-
- _dnsimple_session=BAh7CEkiD3Nlc3Npb25faWQGOgZFRiIlYzE1ZDBhNDlhNmY1NzM4ZWU0MWM4ZGM5NWM2ODFlOWJJIhV1c2VyX2NyZWRlbnRpYWxzBjsARkkiAYA1YzI0ZTYzOGYwNjFkZWRmN2Y5YTNiYjY3MTdiZjUxMjliZmUwYjdjODg5OGZkZTVhNmEzNGMxZDkwOWUyMmNlNmIzMTc4MzRlZTdmY2RkYjllYjQ3ODdhYjZlMDM1Y2E0ZmEyYmY0MWVkYzJiOWMxZGEwNzYwZDdjMzhmNzY1OAY7AFRJIhh1c2VyX2NyZWRlbnRpYWxzX2lkBjsARmkG--fadb5db75b3ab141668c6511771e2d22eeb07409;
|
41
|
-
|
37
|
+
X-Runtime:
|
38
|
+
- '8.864356'
|
39
|
+
Content-Length:
|
40
|
+
- '3936'
|
41
|
+
Set-Cookie:
|
42
|
+
- _dnsimple_session=BAh7CEkiD3Nlc3Npb25faWQGOgZFRiIlYzE1ZDBhNDlhNmY1NzM4ZWU0MWM4ZGM5NWM2ODFlOWJJIhV1c2VyX2NyZWRlbnRpYWxzBjsARkkiAYA1YzI0ZTYzOGYwNjFkZWRmN2Y5YTNiYjY3MTdiZjUxMjliZmUwYjdjODg5OGZkZTVhNmEzNGMxZDkwOWUyMmNlNmIzMTc4MzRlZTdmY2RkYjllYjQ3ODdhYjZlMDM1Y2E0ZmEyYmY0MWVkYzJiOWMxZGEwNzYwZDdjMzhmNzY1OAY7AFRJIhh1c2VyX2NyZWRlbnRpYWxzX2lkBjsARmkG--fadb5db75b3ab141668c6511771e2d22eeb07409;
|
43
|
+
path=/; HttpOnly
|
44
|
+
Cache-Control:
|
42
45
|
- max-age=0, private, must-revalidate
|
43
|
-
body:
|
44
|
-
|
46
|
+
body:
|
47
|
+
encoding: UTF-8
|
48
|
+
string: ! '[{"certificate":{"approver_email":null,"certificate_status":"Awaiting
|
49
|
+
Configuration","configured_at":"2011-11-11T20:56:36Z","contact_id":1,"created_at":"2011-11-11T20:56:14Z","csr":"-----BEGIN
|
50
|
+
NEW CERTIFICATE REQUEST-----\nMIIDMjCCAeoCAQAwXTELMAkGA1UEBhMCVVMxFTATBgNVBAoTDEFudGhvbnkgRWRl\nbjEQMA4GA1UEBxMHTWFsYWJhcjELMAkGA1UECBMCRkwxGDAWBgNVBAMTD3d3dy5l\neGFtcGxlLmNvbTCCAVIwDQYJKoZIhvcNAQEBBQADggE/ADCCAToCggExALVqxT38\nVYrafdjtqrYGCn1/HOYnOTJ0r8aYR71cW/AN50H6t0NOwLdrKstQ11uxGxkqFotl\ndHklfJUh5gJyrisIZNP/YZ55s+rjcbuFeiAyouEs12YwYOK2GzsHB6t3OBJC2+Nm\nZirDUUbhA4VDkf7DqiIRVSKcC0BKJyr69fnGewpAW9xiECryYqq884vD1/MoxuPQ\nYWKSWXB4G/iD5vXamBNqF5TCJV8U8/53mKClWBTsMQxO2eCjPEqO6Yf1LViu4vZx\nOmB093Iet8h+DI93FYGRQFmYy8SKBb/jOnr83gXEKIbKSGccYNHy8QGlYMguX+Yb\nNbUGqKgr2LL2sk9rtLv8rCu/fSkJMhOw7Rz9N1TAVccZYLqGm+gNDDlI3TcKUQ6o\n1R4uE7TOX3OFCOsCAwEAAaAwMC4GCSqGSIb3DQEJDjEhMB8wDAYDVR0TAQH/BAIw\nADAPBgNVHQ8BAf8EBQMDB4AAMA0GCSqGSIb3DQEBBQUAA4IBMQAFJ9nGFHx5Mcg6\n/TnT3kvT8qaux6SwfCw35XepT9rJ7YppaMgeOanEGJdvjtZtYxIWzxq2E+lFcNGd\nAsJoNk1jnmvbFLARjTAfN9JSvxfkT6x+rcR8rSbpzYb19NV2QTUivrDuur5BvLI3\nCUHunT7bQaWuxbZK/GgZ4KiRIvplsUz09Ir6HDcLS2TNeswSRwqNYs1v1uY1TWeS\nUGbW391e7EsmesnHi8QdzqafwIjWqUoz55V8TMN0xJF7Dlwfw09NZ7rhh3hmC9aT\nk/s8jl+Cfaz9aumrTHex2RkBfBpfLNnTbkCrBuYSp2lkV7XSn6GRXL84QVIrVwZo\nRgQisMWQ0HWKVVGpAhh8u1PcRBHpJiCsK1AoN+TsQ/7N/cbGpyllS5IBAzRCDM9V\nUNT4A6BR\n-----END
|
51
|
+
NEW CERTIFICATE REQUEST-----\n","domain_id":39,"expiration_date":"11/11/2012
|
52
|
+
12:56:14 PM","id":1,"name":"www","order_date":"11/11/2011 12:56:14 PM","private_key":"-----BEGIN
|
53
|
+
RSA PRIVATE KEY-----\nMIIFewIBAAKCATEAtWrFPfxVitp92O2qtgYKfX8c5ic5MnSvxphHvVxb8A3nQfq3\nQ07At2sqy1DXW7EbGSoWi2V0eSV8lSHmAnKuKwhk0/9hnnmz6uNxu4V6IDKi4SzX\nZjBg4rYbOwcHq3c4EkLb42ZmKsNRRuEDhUOR/sOqIhFVIpwLQEonKvr1+cZ7CkBb\n3GIQKvJiqrzzi8PX8yjG49BhYpJZcHgb+IPm9dqYE2oXlMIlXxTz/neYoKVYFOwx\nDE7Z4KM8So7ph/UtWK7i9nE6YHT3ch63yH4Mj3cVgZFAWZjLxIoFv+M6evzeBcQo\nhspIZxxg0fLxAaVgyC5f5hs1tQaoqCvYsvayT2u0u/ysK799KQkyE7DtHP03VMBV\nxxlguoab6A0MOUjdNwpRDqjVHi4TtM5fc4UI6wIDAQABAoIBLxQcLxiT1s62Kzbj\n6W+O9zCUf5x6UnXLnwG5BSgUoWEQv1aUJjMhB7jD+ZmpFKbBF0MHJcnK4pHo/OmL\nLLi7FqYxqMmx05PseV/FYAT19a/UOA5HV4BKeLFkP/4ov/i1ZxSGKRhHY/Lvbxxp\nLHR9N9ps4qQ7jFCFJ2j14hayx5GHyX/AcKzUx90NnXg2xMiXIiQHUYfpJEAdIGc4\njAMO8wjTQk9CGW3U/faibxdvRplpNbCV9Zmi7Wj3K3bX83LraqdbkhG7gWLono8S\ntVwcKd7JFKhooyHpVmLt7M9VhRS08/oxuwOlwL/ETdNN1BwOhiZv6U74QoiW1wjN\nfwbo4+QkE00a66E/TsX6CFQ6ec14tJKOcuHfQS+0bfBLK10XdgD696B/l1C9LwKy\nVYcnzQKBmQDDazs4EZjpdxOLoqfWpo9ae6q7RXbFcsdDehf+fbWgvJdRuZlchwPQ\nTYlmotJWuJZrmrAvkn0oo9WV8ct0teE5xcXyHCo1oACUyNpA0cRTAf5HYBghfJR8\nx4UkFDK6cqZTYKdqs9HMbHs50Mc5geXaZVzSn034VD788Nuw1v06DSWkamDBqHBp\nXYJnYdArUZGkwT7i1sdRPQKBmQDtqFU2gvTM6W7rwqxNbt90ZL+jJ/szduGsgPNO\nQNXP4SKE41k3orqwpt7QYBGefGtPoI8294D0YV1K78yYOMkA83KbjAr5aUcCRLdL\nXjk8E4esQAjWWYurdbwmrpD0WoKWgIlvM+s6aYjRzRYvamZa9bGk+a2n0zrM+HgX\nBhQYSdpd1DiSvuV561UgmAiIRmNYdT7txRmVRwKBmGZUaogrvtTSQ+vk2tquEXci\nNv8lmtI+DlYpQxNCpK9s0hg7hjFLihWz5HVYYaiDtFDYidX/cYasdBW2rgGJlEz6\nYXMsiHXYOTWwD4nNzm5hJtQdX8V5RRAqMm/4G7BChRI4FLLtQrk3PTfDOe/FM6Wv\nWnH4dY3KH8m4HnJ1wdh6NfHouo3uNB8Ylkaok6d7aTbK8rE6ItlJAoGZAJ6UHhf7\nlgFNGdhy06nve2cc+sqRmQqkHr2OZcsndAP8A56MXTHEgbHyBucf02HfP3OofSd+\nSyvF9AxWqjxAV88soqKr9X6rAti+pVfDDYnKtlL3f24X3hyQuPVOsiZ6ZnyqVApB\nqIoXdVYY9N66roWvP9QHThqX1bqDaQ5j3fC/BthpDT7N5i1OHEVdbQQRg6S4xz68\nr+9tAoGZAIyiHwn1QZqCUsIKiffm4g5sfVPcNqHhtKPCOTnNkNxAM7G4XB9WQyBA\nzDnRRpwtFq+5R4XyJUyloSflZpltJ+T/aifq6lDn9sLf0ma6y+cCkTm06Lfx4MHw\nMGvuTjj6oOeGj30kAe35j6e0xcNyhGFTRK+QROKkdMFMV2V9a9Jo3wTOr4PYr8Q6\nt1BYovwF54fuQF/ceAFz\n-----END
|
54
|
+
RSA PRIVATE KEY-----\n","ssl_certificate":null,"updated_at":"2011-11-11T20:56:36Z","available_approver_emails":"res-dom@iana.org,res-dom@iana.org,admin@example.com,administrator@example.com,hostmaster@example.com,root@example.com,webmaster@example.com,postmaster@example.com,admin@www.example.com,administrator@www.example.com,hostmaster@www.example.com,root@www.example.com,webmaster@www.example.com,postmaster@www.example.com"}}]'
|
55
|
+
http_version: '1.1'
|
56
|
+
recorded_at: Thu, 06 Sep 2012 18:52:19 GMT
|
57
|
+
recorded_with: VCR 2.2.5
|
@@ -1,44 +1,57 @@
|
|
1
|
-
---
|
2
|
-
|
3
|
-
|
4
|
-
method:
|
5
|
-
uri:
|
6
|
-
body:
|
7
|
-
|
8
|
-
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: post
|
5
|
+
uri: https://<USERNAME>:<PASSWORD>@test.dnsimple.com/domains/example.com/certificates
|
6
|
+
body:
|
7
|
+
encoding: UTF-8
|
8
|
+
string: certificate[name]=www&certificate[contact_id]=1
|
9
|
+
headers:
|
10
|
+
Accept:
|
9
11
|
- application/json
|
10
|
-
|
12
|
+
Authorization:
|
11
13
|
- Basic YW50aG9ueWVkZW5AZ21haWwuY29tOmxldG1laW4=
|
12
|
-
response:
|
13
|
-
status:
|
14
|
+
response:
|
15
|
+
status:
|
14
16
|
code: 201
|
15
17
|
message: Created
|
16
|
-
headers:
|
17
|
-
|
18
|
+
headers:
|
19
|
+
X-Ua-Compatible:
|
18
20
|
- IE=Edge
|
19
|
-
|
21
|
+
Access-Control-Allow-Headers:
|
20
22
|
- Authorization,Accepts,Content-Type
|
21
|
-
|
23
|
+
X-Dnsimple-Api-Version:
|
22
24
|
- 1.0.0
|
23
|
-
|
24
|
-
-
|
25
|
-
|
25
|
+
Location:
|
26
|
+
- https://test.dnsimple.com/domains/example.com/certificates/1
|
27
|
+
Access-Control-Allow-Methods:
|
26
28
|
- OPTIONS
|
27
|
-
|
29
|
+
Content-Type:
|
28
30
|
- application/json; charset=utf-8
|
29
|
-
|
30
|
-
-
|
31
|
-
|
31
|
+
Access-Control-Allow-Origin:
|
32
|
+
- ! '*'
|
33
|
+
Date:
|
32
34
|
- Fri, 11 Nov 2011 20:56:40 GMT
|
33
|
-
|
35
|
+
Server:
|
34
36
|
- WEBrick/1.3.1 (Ruby/1.9.2/2011-07-09)
|
35
|
-
|
36
|
-
-
|
37
|
-
|
38
|
-
-
|
39
|
-
|
40
|
-
- _dnsimple_session=BAh7CEkiD3Nlc3Npb25faWQGOgZFRiIlMDcwNmU3ZmFjYjkwNTNiZmMxZDYxNTg1NTlkOWJlMjFJIhV1c2VyX2NyZWRlbnRpYWxzBjsARkkiAYA1YzI0ZTYzOGYwNjFkZWRmN2Y5YTNiYjY3MTdiZjUxMjliZmUwYjdjODg5OGZkZTVhNmEzNGMxZDkwOWUyMmNlNmIzMTc4MzRlZTdmY2RkYjllYjQ3ODdhYjZlMDM1Y2E0ZmEyYmY0MWVkYzJiOWMxZGEwNzYwZDdjMzhmNzY1OAY7AFRJIhh1c2VyX2NyZWRlbnRpYWxzX2lkBjsARmkG--532360b59a4ad0353247bd38617b4ede4dbe5e6c;
|
41
|
-
|
37
|
+
X-Runtime:
|
38
|
+
- '26.966412'
|
39
|
+
Content-Length:
|
40
|
+
- '3934'
|
41
|
+
Set-Cookie:
|
42
|
+
- _dnsimple_session=BAh7CEkiD3Nlc3Npb25faWQGOgZFRiIlMDcwNmU3ZmFjYjkwNTNiZmMxZDYxNTg1NTlkOWJlMjFJIhV1c2VyX2NyZWRlbnRpYWxzBjsARkkiAYA1YzI0ZTYzOGYwNjFkZWRmN2Y5YTNiYjY3MTdiZjUxMjliZmUwYjdjODg5OGZkZTVhNmEzNGMxZDkwOWUyMmNlNmIzMTc4MzRlZTdmY2RkYjllYjQ3ODdhYjZlMDM1Y2E0ZmEyYmY0MWVkYzJiOWMxZGEwNzYwZDdjMzhmNzY1OAY7AFRJIhh1c2VyX2NyZWRlbnRpYWxzX2lkBjsARmkG--532360b59a4ad0353247bd38617b4ede4dbe5e6c;
|
43
|
+
path=/; HttpOnly
|
44
|
+
Cache-Control:
|
42
45
|
- no-cache
|
43
|
-
body:
|
44
|
-
|
46
|
+
body:
|
47
|
+
encoding: UTF-8
|
48
|
+
string: ! '{"certificate":{"approver_email":null,"certificate_status":"Awaiting
|
49
|
+
Configuration","configured_at":"2011-11-11T20:56:36Z","contact_id":1,"created_at":"2011-11-11T20:56:14Z","csr":"-----BEGIN
|
50
|
+
NEW CERTIFICATE REQUEST-----\nMIIDMjCCAeoCAQAwXTELMAkGA1UEBhMCVVMxFTATBgNVBAoTDEFudGhvbnkgRWRl\nbjEQMA4GA1UEBxMHTWFsYWJhcjELMAkGA1UECBMCRkwxGDAWBgNVBAMTD3d3dy5l\neGFtcGxlLmNvbTCCAVIwDQYJKoZIhvcNAQEBBQADggE/ADCCAToCggExALVqxT38\nVYrafdjtqrYGCn1/HOYnOTJ0r8aYR71cW/AN50H6t0NOwLdrKstQ11uxGxkqFotl\ndHklfJUh5gJyrisIZNP/YZ55s+rjcbuFeiAyouEs12YwYOK2GzsHB6t3OBJC2+Nm\nZirDUUbhA4VDkf7DqiIRVSKcC0BKJyr69fnGewpAW9xiECryYqq884vD1/MoxuPQ\nYWKSWXB4G/iD5vXamBNqF5TCJV8U8/53mKClWBTsMQxO2eCjPEqO6Yf1LViu4vZx\nOmB093Iet8h+DI93FYGRQFmYy8SKBb/jOnr83gXEKIbKSGccYNHy8QGlYMguX+Yb\nNbUGqKgr2LL2sk9rtLv8rCu/fSkJMhOw7Rz9N1TAVccZYLqGm+gNDDlI3TcKUQ6o\n1R4uE7TOX3OFCOsCAwEAAaAwMC4GCSqGSIb3DQEJDjEhMB8wDAYDVR0TAQH/BAIw\nADAPBgNVHQ8BAf8EBQMDB4AAMA0GCSqGSIb3DQEBBQUAA4IBMQAFJ9nGFHx5Mcg6\n/TnT3kvT8qaux6SwfCw35XepT9rJ7YppaMgeOanEGJdvjtZtYxIWzxq2E+lFcNGd\nAsJoNk1jnmvbFLARjTAfN9JSvxfkT6x+rcR8rSbpzYb19NV2QTUivrDuur5BvLI3\nCUHunT7bQaWuxbZK/GgZ4KiRIvplsUz09Ir6HDcLS2TNeswSRwqNYs1v1uY1TWeS\nUGbW391e7EsmesnHi8QdzqafwIjWqUoz55V8TMN0xJF7Dlwfw09NZ7rhh3hmC9aT\nk/s8jl+Cfaz9aumrTHex2RkBfBpfLNnTbkCrBuYSp2lkV7XSn6GRXL84QVIrVwZo\nRgQisMWQ0HWKVVGpAhh8u1PcRBHpJiCsK1AoN+TsQ/7N/cbGpyllS5IBAzRCDM9V\nUNT4A6BR\n-----END
|
51
|
+
NEW CERTIFICATE REQUEST-----\n","domain_id":39,"expiration_date":"11/11/2012
|
52
|
+
12:56:14 PM","id":1,"name":"www","order_date":"11/11/2011 12:56:14 PM","private_key":"-----BEGIN
|
53
|
+
RSA PRIVATE KEY-----\nMIIFewIBAAKCATEAtWrFPfxVitp92O2qtgYKfX8c5ic5MnSvxphHvVxb8A3nQfq3\nQ07At2sqy1DXW7EbGSoWi2V0eSV8lSHmAnKuKwhk0/9hnnmz6uNxu4V6IDKi4SzX\nZjBg4rYbOwcHq3c4EkLb42ZmKsNRRuEDhUOR/sOqIhFVIpwLQEonKvr1+cZ7CkBb\n3GIQKvJiqrzzi8PX8yjG49BhYpJZcHgb+IPm9dqYE2oXlMIlXxTz/neYoKVYFOwx\nDE7Z4KM8So7ph/UtWK7i9nE6YHT3ch63yH4Mj3cVgZFAWZjLxIoFv+M6evzeBcQo\nhspIZxxg0fLxAaVgyC5f5hs1tQaoqCvYsvayT2u0u/ysK799KQkyE7DtHP03VMBV\nxxlguoab6A0MOUjdNwpRDqjVHi4TtM5fc4UI6wIDAQABAoIBLxQcLxiT1s62Kzbj\n6W+O9zCUf5x6UnXLnwG5BSgUoWEQv1aUJjMhB7jD+ZmpFKbBF0MHJcnK4pHo/OmL\nLLi7FqYxqMmx05PseV/FYAT19a/UOA5HV4BKeLFkP/4ov/i1ZxSGKRhHY/Lvbxxp\nLHR9N9ps4qQ7jFCFJ2j14hayx5GHyX/AcKzUx90NnXg2xMiXIiQHUYfpJEAdIGc4\njAMO8wjTQk9CGW3U/faibxdvRplpNbCV9Zmi7Wj3K3bX83LraqdbkhG7gWLono8S\ntVwcKd7JFKhooyHpVmLt7M9VhRS08/oxuwOlwL/ETdNN1BwOhiZv6U74QoiW1wjN\nfwbo4+QkE00a66E/TsX6CFQ6ec14tJKOcuHfQS+0bfBLK10XdgD696B/l1C9LwKy\nVYcnzQKBmQDDazs4EZjpdxOLoqfWpo9ae6q7RXbFcsdDehf+fbWgvJdRuZlchwPQ\nTYlmotJWuJZrmrAvkn0oo9WV8ct0teE5xcXyHCo1oACUyNpA0cRTAf5HYBghfJR8\nx4UkFDK6cqZTYKdqs9HMbHs50Mc5geXaZVzSn034VD788Nuw1v06DSWkamDBqHBp\nXYJnYdArUZGkwT7i1sdRPQKBmQDtqFU2gvTM6W7rwqxNbt90ZL+jJ/szduGsgPNO\nQNXP4SKE41k3orqwpt7QYBGefGtPoI8294D0YV1K78yYOMkA83KbjAr5aUcCRLdL\nXjk8E4esQAjWWYurdbwmrpD0WoKWgIlvM+s6aYjRzRYvamZa9bGk+a2n0zrM+HgX\nBhQYSdpd1DiSvuV561UgmAiIRmNYdT7txRmVRwKBmGZUaogrvtTSQ+vk2tquEXci\nNv8lmtI+DlYpQxNCpK9s0hg7hjFLihWz5HVYYaiDtFDYidX/cYasdBW2rgGJlEz6\nYXMsiHXYOTWwD4nNzm5hJtQdX8V5RRAqMm/4G7BChRI4FLLtQrk3PTfDOe/FM6Wv\nWnH4dY3KH8m4HnJ1wdh6NfHouo3uNB8Ylkaok6d7aTbK8rE6ItlJAoGZAJ6UHhf7\nlgFNGdhy06nve2cc+sqRmQqkHr2OZcsndAP8A56MXTHEgbHyBucf02HfP3OofSd+\nSyvF9AxWqjxAV88soqKr9X6rAti+pVfDDYnKtlL3f24X3hyQuPVOsiZ6ZnyqVApB\nqIoXdVYY9N66roWvP9QHThqX1bqDaQ5j3fC/BthpDT7N5i1OHEVdbQQRg6S4xz68\nr+9tAoGZAIyiHwn1QZqCUsIKiffm4g5sfVPcNqHhtKPCOTnNkNxAM7G4XB9WQyBA\nzDnRRpwtFq+5R4XyJUyloSflZpltJ+T/aifq6lDn9sLf0ma6y+cCkTm06Lfx4MHw\nMGvuTjj6oOeGj30kAe35j6e0xcNyhGFTRK+QROKkdMFMV2V9a9Jo3wTOr4PYr8Q6\nt1BYovwF54fuQF/ceAFz\n-----END
|
54
|
+
RSA PRIVATE KEY-----\n","ssl_certificate":null,"updated_at":"2011-11-11T20:56:36Z","available_approver_emails":"res-dom@iana.org,res-dom@iana.org,admin@example.com,administrator@example.com,hostmaster@example.com,root@example.com,webmaster@example.com,postmaster@example.com,admin@www.example.com,administrator@www.example.com,hostmaster@www.example.com,root@www.example.com,webmaster@www.example.com,postmaster@www.example.com"}}'
|
55
|
+
http_version: '1.1'
|
56
|
+
recorded_at: Thu, 06 Sep 2012 18:52:19 GMT
|
57
|
+
recorded_with: VCR 2.2.5
|