digital_ocean 0.0.1 → 0.1.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. data/.gitignore +0 -1
  2. data/CHANGELOG.md +40 -0
  3. data/LICENSE.txt +1 -1
  4. data/README.md +114 -2
  5. data/digital_ocean.gemspec +1 -0
  6. data/doc/DigitalOcean/API.html +844 -0
  7. data/doc/DigitalOcean/AuthenticationMiddleware.html +342 -0
  8. data/doc/DigitalOcean/Resource/Base.html +206 -0
  9. data/doc/DigitalOcean/Resource/Droplet.html +1016 -0
  10. data/doc/DigitalOcean/Resource/Image.html +312 -0
  11. data/doc/DigitalOcean/Resource/Region.html +247 -0
  12. data/doc/DigitalOcean/Resource/SSHKey.html +312 -0
  13. data/doc/DigitalOcean/Resource/Size.html +208 -0
  14. data/doc/DigitalOcean/Resource.html +117 -0
  15. data/doc/DigitalOcean.html +131 -0
  16. data/doc/_index.html +213 -0
  17. data/doc/class_list.html +53 -0
  18. data/doc/css/common.css +1 -0
  19. data/doc/css/full_list.css +57 -0
  20. data/doc/css/style.css +328 -0
  21. data/doc/file.README.html +402 -0
  22. data/doc/file_list.html +55 -0
  23. data/doc/frames.html +28 -0
  24. data/doc/index.html +402 -0
  25. data/doc/js/app.js +214 -0
  26. data/doc/js/full_list.js +173 -0
  27. data/doc/js/jquery.js +4 -0
  28. data/doc/method_list.html +332 -0
  29. data/doc/top-level-namespace.html +112 -0
  30. data/lib/digital_ocean/api.rb +28 -0
  31. data/lib/digital_ocean/resource/droplet.rb +2 -2
  32. data/lib/digital_ocean/resource/region.rb +3 -0
  33. data/lib/digital_ocean/version.rb +1 -1
  34. data/spec/api_spec.rb +8 -4
  35. data/spec/vcr/cassettes/DigitalOcean_API/_droplets/_create/should_be_successful.yml +7 -5
  36. data/spec/vcr/cassettes/DigitalOcean_API/_droplets/_create/should_return_droplet_id.yml +50 -0
  37. data/spec/vcr/cassettes/DigitalOcean_API/_droplets/_delete/should_be_successful.yml +8 -6
  38. data/spec/vcr/cassettes/DigitalOcean_API/_droplets/_disable_backups/should_be_successful.yml +8 -6
  39. data/spec/vcr/cassettes/DigitalOcean_API/_droplets/_enable_backups/should_be_successful.yml +8 -6
  40. data/spec/vcr/cassettes/DigitalOcean_API/_droplets/_list/should_be_successful.yml +7 -5
  41. data/spec/vcr/cassettes/DigitalOcean_API/_droplets/_list/should_return_a_list_of_all_droplets.yml +7 -5
  42. data/spec/vcr/cassettes/DigitalOcean_API/_droplets/{_reset_root_password → _password_reset}/should_be_successful.yml +10 -9
  43. data/spec/vcr/cassettes/DigitalOcean_API/_droplets/_power_cycle/should_be_successful.yml +8 -6
  44. data/spec/vcr/cassettes/DigitalOcean_API/_droplets/_power_off/should_be_successful.yml +8 -6
  45. data/spec/vcr/cassettes/DigitalOcean_API/_droplets/_power_on/should_be_successful.yml +8 -6
  46. data/spec/vcr/cassettes/DigitalOcean_API/_droplets/_reboot/should_be_successful.yml +8 -6
  47. data/spec/vcr/cassettes/DigitalOcean_API/_droplets/_rebuild/should_be_successful.yml +8 -6
  48. data/spec/vcr/cassettes/DigitalOcean_API/_droplets/_resize/should_be_successful.yml +8 -6
  49. data/spec/vcr/cassettes/DigitalOcean_API/_droplets/_restore/should_be_successful.yml +1 -1
  50. data/spec/vcr/cassettes/DigitalOcean_API/_droplets/_show/should_be_successful.yml +6 -4
  51. data/spec/vcr/cassettes/DigitalOcean_API/_droplets/_shutdown/should_be_successful.yml +8 -6
  52. data/spec/vcr/cassettes/DigitalOcean_API/_droplets/_snapshot/should_be_successful.yml +8 -6
  53. metadata +34 -7
data/.gitignore CHANGED
@@ -7,7 +7,6 @@ Gemfile.lock
7
7
  InstalledFiles
8
8
  _yardoc
9
9
  coverage
10
- doc/
11
10
  lib/bundler/man
12
11
  pkg
13
12
  rdoc
data/CHANGELOG.md ADDED
@@ -0,0 +1,40 @@
1
+ ## Unreleased Changes
2
+
3
+ [Full Changelog](https://github.com/rmoriz/digital_ocean/compare/v0.1.0...master)
4
+
5
+ **Enhancements:**
6
+
7
+
8
+ **Bug Fixes:**
9
+
10
+
11
+ ## 0.1.0 (February 20, 2013)
12
+
13
+ [Full Changelog](https://github.com/rmoriz/digital_ocean/compare/v0.0.1...v0.1.0)
14
+
15
+
16
+ **Enhancements:**
17
+
18
+ * support password reset (thanks )
19
+
20
+ * documentation
21
+
22
+ * basic YARD setup
23
+
24
+ * add changelog :)
25
+
26
+
27
+ ## 0.0.1 (January 24, 2013)
28
+
29
+ [Full Changelog](https://github.com/rmoriz/digital_ocean/compare/3afd6a3c00cf447bc890703d9221fbed9662856e...v0.0.1)
30
+
31
+
32
+ **Enhancements:**
33
+
34
+ * First release
35
+
36
+
37
+ **Bug Fixes:**
38
+
39
+ * n/a
40
+
data/LICENSE.txt CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2013 Moriz GmbH
1
+ Copyright (c) 2013 Moriz GmbH — https://moriz.de/
2
2
 
3
3
  MIT License
4
4
 
data/README.md CHANGED
@@ -1,14 +1,17 @@
1
1
  # DigitalOcean
2
2
  [![Build Status](https://travis-ci.org/rmoriz/digital_ocean.png)](https://travis-ci.org/rmoriz/digital_ocean)
3
+ <a href="https://gemnasium.com/rmoriz/digital_ocean"><img src="https://gemnasium.com/rmoriz/digital_ocean.png" height="13" /></a>
4
+ <a href="https://codeclimate.com/github/rmoriz/digital_ocean"><img src="https://codeclimate.com/github/rmoriz/digital_ocean.png" height="13" /></a>
3
5
 
4
6
  DigitalOcean provides simple cloud hosting. Create and delete
5
7
  SSD-based virtual machines within seconds for a very affordable price.
6
8
 
7
9
  Go to https://www.digitalocean.com/ for more information.
8
10
 
9
- This gem is a simple ruby wrapper for the HTTP API of DigitalOcean using
11
+ This gem is a simple ruby wrapper for the [HTTP API of DigitalOcean](https://api.digitalocean.com/) using
10
12
  the great [Faraday](https://github.com/lostisland/faraday) library.
11
13
 
14
+ __*If you use [Opscode Chef](http://www.opscode.com/) for DevOps, make sure to checkout my knife plugin [knife-digital_ocean](https://github.com/rmoriz/knife-digital_ocean)*__
12
15
 
13
16
  ## Installation
14
17
 
@@ -94,6 +97,102 @@ res.droplets
94
97
  see ```spec/api_spec.rb``` for more details and all implemented
95
98
  resources.
96
99
 
100
+ ## Features
101
+
102
+ ### DigitalOcean::API
103
+ - .new
104
+ - should return an instance when called with the essential parameters
105
+ - \#droplets
106
+ - \#list
107
+ - should be successful
108
+ - should return a list of all droplets
109
+ - \#show
110
+ - should be successful
111
+ - \#create
112
+ - should be successful
113
+ - should return a droplet.id
114
+ - \#reboot
115
+ - should be successful
116
+ - \#power\_cycle
117
+ - should be successful
118
+ - \#shutdown
119
+ - should be successful
120
+ - \#power\_on
121
+ - should be successful
122
+ - \#power\_off
123
+ - should be successful
124
+ - \#password\_reset
125
+ - should be successful
126
+ - \#resize
127
+ - should be successful
128
+ - \#snapshot
129
+ - should be successful
130
+ - \#restore
131
+ - should be successful
132
+ - \#rebuild
133
+ - should be successful
134
+ - \#enable\_backups
135
+ - should be successful
136
+ - \#disable\_backups
137
+ - should be successful
138
+ - \#delete
139
+ #<Hashie::Rash event_id=594739 status="OK">
140
+ - should be successful
141
+ - \#sizes
142
+ - \#list
143
+ - should be successful
144
+ - should return a list of all droplet sizes
145
+ - should return the correct ID for the 96GB size
146
+ - \#regions
147
+ - \#list
148
+ - should be successful
149
+ - should return a list of all regions
150
+ - \#ssh\_keys
151
+ - \#list
152
+ - should be successful
153
+ - should return a list of all SSH keys
154
+ - \#show
155
+ - valid
156
+ - should be successful
157
+ - should return the public keykey
158
+ - invalid
159
+ - should not be successful
160
+ - \#add
161
+ - does not work, ask digitalocean to fix (PENDING: No reason given)
162
+ - should be successful (PENDING: Temporarily disabled with xit)
163
+ - \#edit
164
+ - does not work, ask digitalocean to fix (PENDING: No reason given)
165
+ - \#delete
166
+ - should be successful
167
+ - \#images
168
+ - \#list
169
+ - without filter
170
+ - should be successful
171
+ - should return a list of all images
172
+ - with filter: global
173
+ - should be successful
174
+ - should return global images
175
+ - with filter: my\_images
176
+ - should be successful
177
+ - should return my\_images
178
+ - \#show
179
+ - valid
180
+ - should be successful
181
+ - should return the image
182
+ - invalid
183
+ - should not be successful
184
+ - \#delete
185
+ - valid
186
+ - should be successful (PENDING: does not work, ask digitalocean to fix)
187
+ - invalid
188
+ - should not be successful
189
+
190
+ ### DigitalOcean
191
+ - should have a version number
192
+
193
+ ## ChangeLog / History / Releases
194
+
195
+ see the [CHANGELOG.md](./CHANGELOG.md) file.
97
196
 
98
197
  ## Contributing
99
198
 
@@ -103,11 +202,24 @@ resources.
103
202
  4. Push to the branch (`git push origin my-new-feature`)
104
203
  5. Create new Pull Request
105
204
 
205
+ ### Contributors
206
+
207
+ * [joshfng](https://github.com/joshfng)
208
+ * [willglynn](https://github.com/willglynn)
209
+
210
+ For more information and a complete list see [the contributor page on GitHub](https://github.com/rmoriz/digital_ocean/contributors).
211
+
106
212
  ## License
107
213
 
108
214
  MIT
109
215
 
216
+ ## Commercial Support
217
+
218
+ Commercial support is available. Please contact [https://roland.io/](https://roland.io/) or [http://moriz.com/](http://moriz.com/)
219
+
110
220
  ## Copyright
111
221
 
112
- 2013 Moriz GmbH, https://moriz.de/
222
+ Copyright © 2013 [Roland Moriz](https://roland.io), [Moriz GmbH](https://moriz.de/)
223
+
224
+ [![LinkedIn](http://www.linkedin.com/img/webpromo/btn_viewmy_160x25.png)](http://www.linkedin.com/in/rmoriz)
113
225
 
@@ -17,6 +17,7 @@ Gem::Specification.new do |gem|
17
17
  gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
18
18
  gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
19
19
  gem.require_paths = ['lib']
20
+ gem.has_rdoc = 'yard'
20
21
 
21
22
  if RUBY_PLATFORM == 'java'
22
23
  gem.add_runtime_dependency 'jruby-openssl'