mirror of
https://github.com/fog/fog.git
synced 2022-11-09 13:51:43 -05:00
52dbca5f20
Mention that two consecutive test runs will trigger the rate limit.
56 lines
1.6 KiB
Markdown
56 lines
1.6 KiB
Markdown
# Testing the Dreamhost DNS API
|
|
|
|
Dreamhost API sandbox only permits read-only commands, so you'll need a Dreamhost
|
|
PS account for the testing and a dedicated domain.
|
|
|
|
See http://wiki.dreamhost.com/Application_programming_interface#Test_Account
|
|
|
|
## Create an API key
|
|
|
|
You'll need a Dreamhost (PS I think) account and a dedicated domain for testing.
|
|
|
|
1. Go to the Dreamhost web panel and create an API key to manage DNS records
|
|
|
|
https://panel.dreamhost.com/index.cgi?tree=home.api
|
|
|
|
Select 'All dns functions' for the new API key to be able to add/remove/list
|
|
records.
|
|
|
|
2. Create a .fog file in the tests/ directory with the following contents:
|
|
|
|
```yaml
|
|
:default:
|
|
:dreamhost_api_key: SDFASDFWQWASDFASDFAS
|
|
```
|
|
Where dreamhost_api_key is the key you created in the previous step.
|
|
|
|
3. Update the test_domain helper in tests/dreamhost/helper.rb to use your own
|
|
domain for testing. You will also need at least a record created via
|
|
the Dreamhost Webpanel (you'll get a **no_such_zone** error otherwise).
|
|
|
|
I usually create a do-not-delete.my-domain.com record. The tests skip that
|
|
record when cleaning up (see the do_not_delete_record helper).
|
|
|
|
4. Run the tests
|
|
|
|
```
|
|
shindo tests/dreamhost
|
|
```
|
|
|
|
## Notes
|
|
|
|
The API is rate limited, so do not smash the DH servers too often. Two
|
|
consecutive test runs will trigger the rate limit.
|
|
You'll see a **slow_down_bucko** error if the frequency is too high.
|
|
|
|
http://wiki.dreamhost.com/Application_programming_interface#Rate_Limit
|
|
|
|
## Resources
|
|
|
|
Dreamhost API:
|
|
|
|
http://wiki.dreamhost.com/Application_programming_interface
|
|
|
|
Dreamhost DNS API:
|
|
|
|
http://wiki.dreamhost.com/API/Dns_commands
|