cloudfoundry-client 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 (76) hide show
  1. data/.gitignore +12 -0
  2. data/.rspec +2 -0
  3. data/.travis.yml +12 -0
  4. data/.yardopts +9 -0
  5. data/CHANGELOG.md +6 -0
  6. data/Gemfile +3 -0
  7. data/LICENSE +20 -0
  8. data/README.md +122 -0
  9. data/Rakefile +28 -0
  10. data/cloudfoundry.gemspec +29 -0
  11. data/lib/cloudfoundry.rb +34 -0
  12. data/lib/cloudfoundry/client.rb +93 -0
  13. data/lib/cloudfoundry/client/apps.rb +192 -0
  14. data/lib/cloudfoundry/client/info.rb +29 -0
  15. data/lib/cloudfoundry/client/request.rb +89 -0
  16. data/lib/cloudfoundry/client/resources.rb +16 -0
  17. data/lib/cloudfoundry/client/response.rb +68 -0
  18. data/lib/cloudfoundry/client/services.rb +122 -0
  19. data/lib/cloudfoundry/client/users.rb +121 -0
  20. data/lib/cloudfoundry/constants.rb +30 -0
  21. data/lib/cloudfoundry/exception.rb +24 -0
  22. data/lib/cloudfoundry/version.rb +27 -0
  23. data/spec/client/apps_spec.rb +423 -0
  24. data/spec/client/info_spec.rb +92 -0
  25. data/spec/client/resources_spec.rb +52 -0
  26. data/spec/client/services_spec.rb +230 -0
  27. data/spec/client/users_spec.rb +367 -0
  28. data/spec/client_spec.rb +110 -0
  29. data/spec/cloudfoundry_spec.rb +62 -0
  30. data/spec/fixtures/admin_logged/client.yml +85 -0
  31. data/spec/fixtures/admin_logged/users.yml +363 -0
  32. data/spec/fixtures/admin_logged/users_create_action.yml +36 -0
  33. data/spec/fixtures/admin_logged/users_proxy_action.yml +46 -0
  34. data/spec/fixtures/admin_logged/users_proxy_nouser_action.yml +44 -0
  35. data/spec/fixtures/admin_logged/users_unproxy_action.yml +44 -0
  36. data/spec/fixtures/app.js +16 -0
  37. data/spec/fixtures/app.zip +0 -0
  38. data/spec/fixtures/client.yml +151 -0
  39. data/spec/fixtures/client_invalid.yml +85 -0
  40. data/spec/fixtures/cloudfoundry.yml +124 -0
  41. data/spec/fixtures/cloudfoundry_vs_client.yml +159 -0
  42. data/spec/fixtures/no_logged/apps.yml +42 -0
  43. data/spec/fixtures/no_logged/client.yml +42 -0
  44. data/spec/fixtures/no_logged/info.yml +81 -0
  45. data/spec/fixtures/no_logged/resources.yml +42 -0
  46. data/spec/fixtures/no_logged/services.yml +42 -0
  47. data/spec/fixtures/no_logged/users.yml +108 -0
  48. data/spec/fixtures/no_logged/users_login_action.yml +81 -0
  49. data/spec/fixtures/no_logged/users_proxy_action.yml +42 -0
  50. data/spec/fixtures/no_logged/users_unproxy_action.yml +42 -0
  51. data/spec/fixtures/user_logged/apps.yml +828 -0
  52. data/spec/fixtures/user_logged/apps_create_action.yml +42 -0
  53. data/spec/fixtures/user_logged/apps_directory_action.yml +48 -0
  54. data/spec/fixtures/user_logged/apps_download_action.yml +55 -0
  55. data/spec/fixtures/user_logged/apps_file_action.yml +54 -0
  56. data/spec/fixtures/user_logged/apps_start_action.yml +81 -0
  57. data/spec/fixtures/user_logged/apps_stats_action.yml +44 -0
  58. data/spec/fixtures/user_logged/apps_update_info_action.yml +44 -0
  59. data/spec/fixtures/user_logged/apps_upload_filename_action.yml +62 -0
  60. data/spec/fixtures/user_logged/apps_upload_zipfile_action.yml +62 -0
  61. data/spec/fixtures/user_logged/client.yml +85 -0
  62. data/spec/fixtures/user_logged/info.yml +126 -0
  63. data/spec/fixtures/user_logged/resources.yml +44 -0
  64. data/spec/fixtures/user_logged/resources_check_action.yml +42 -0
  65. data/spec/fixtures/user_logged/services.yml +354 -0
  66. data/spec/fixtures/user_logged/services_bind_action.yml +161 -0
  67. data/spec/fixtures/user_logged/services_create_action.yml +83 -0
  68. data/spec/fixtures/user_logged/services_unbind_action.yml +122 -0
  69. data/spec/fixtures/user_logged/services_unbind_fail_action.yml +122 -0
  70. data/spec/fixtures/user_logged/users.yml +299 -0
  71. data/spec/fixtures/user_logged/users_proxy_action.yml +44 -0
  72. data/spec/fixtures/user_logged/users_unproxy_action.yml +44 -0
  73. data/spec/spec_helper.rb +29 -0
  74. data/spec/support/cf_connection_helper.rb +26 -0
  75. data/spec/support/vcr.rb +8 -0
  76. metadata +235 -0
@@ -0,0 +1,85 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://api.vcap.me:80/info
6
+ body: ""
7
+ headers:
8
+ User-Agent:
9
+ - cloudfoundry-client-0.1.0
10
+ Authorization:
11
+ - 04085b084922117573657240766361702e6d65063a0645546c2b073101dc4e2219f848b1aea2d82a2a6981750fa1aac61104aed60f
12
+ Accept:
13
+ - application/json
14
+ Content-Type:
15
+ - application/json
16
+ Accept-Encoding:
17
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
18
+ response:
19
+ status:
20
+ code: 200
21
+ message: OK
22
+ headers:
23
+ Server:
24
+ - nginx/0.7.65
25
+ Date:
26
+ - Fri, 02 Dec 2011 01:09:35 GMT
27
+ Content-Type:
28
+ - application/json; charset=utf-8
29
+ Transfer-Encoding:
30
+ - chunked
31
+ Connection:
32
+ - keep-alive
33
+ Keep-Alive:
34
+ - timeout=20
35
+ Etag:
36
+ - "\"adea3e8a7bd68a058b88fbec459e2022\""
37
+ Cache-Control:
38
+ - max-age=0, private, must-revalidate
39
+ X-Ua-Compatible:
40
+ - IE=Edge
41
+ body: "{\"name\":\"vcap\",\"build\":2222,\"support\":\"http://support.cloudfoundry.com\",\"version\":\"0.999\",\"description\":\"VMware's Cloud Application Platform\",\"allow_debug\":true,\"user\":\"user@vcap.me\",\"limits\":{\"memory\":2048,\"app_uris\":4,\"services\":16,\"apps\":20},\"usage\":{\"memory\":0,\"apps\":0,\"services\":0},\"frameworks\":{\"grails\":{\"name\":\"grails\",\"runtimes\":[{\"name\":\"java\",\"version\":\"1.6\",\"description\":\"Java 6\"}],\"appservers\":[{\"name\":\"tomcat\",\"description\":\"Tomcat\"}],\"detection\":[{\"*.war\":true}]},\"spring\":{\"name\":\"spring\",\"runtimes\":[{\"name\":\"java\",\"version\":\"1.6\",\"description\":\"Java 6\"}],\"appservers\":[{\"name\":\"tomcat\",\"description\":\"Tomcat\"}],\"detection\":[{\"*.war\":true}]},\"sinatra\":{\"name\":\"sinatra\",\"runtimes\":[{\"name\":\"ruby18\",\"version\":\"1.8.7\",\"description\":\"Ruby 1.8.7\"},{\"name\":\"ruby19\",\"version\":\"1.9.2p180\",\"description\":\"Ruby 1.9.2\"}],\"appservers\":[{\"name\":\"thin\",\"description\":\"Thin\"}],\"detection\":[{\"*.rb\":\"require 'sinatra'|require \\\"sinatra\\\"\"},{\"config/environment.rb\":false}]},\"java_web\":{\"name\":\"java_web\",\"runtimes\":[{\"name\":\"java\",\"version\":\"1.6\",\"description\":\"Java 6\"}],\"appservers\":[{\"name\":\"tomcat\",\"description\":\"Tomcat\"}],\"detection\":[{\"*.war\":true}]},\"php\":{\"name\":\"php\",\"runtimes\":[{\"name\":\"php\",\"version\":\"5.3\",\"description\":\"PHP 5\"}],\"appservers\":[{\"name\":\"apache\",\"description\":\"Apache\"}],\"detection\":[{\"*.php\":true}]},\"otp_rebar\":{\"name\":\"otp_rebar\",\"runtimes\":[{\"name\":\"erlangR14B02\",\"version\":\"R14B02\",\"description\":\"Erlang R14B02\"}],\"appservers\":[],\"detection\":[{\"releases/*/*.rel\":\".\"}]},\"lift\":{\"name\":\"lift\",\"runtimes\":[{\"name\":\"java\",\"version\":\"1.6\",\"description\":\"Java 6\"}],\"appservers\":[{\"name\":\"tomcat\",\"description\":\"Tomcat\"}],\"detection\":[{\"*.war\":true}]},\"rails3\":{\"name\":\"rails3\",\"runtimes\":[{\"name\":\"ruby18\",\"version\":\"1.8.7\",\"description\":\"Ruby 1.8.7\"},{\"name\":\"ruby19\",\"version\":\"1.9.2p180\",\"description\":\"Ruby 1.9.2\"}],\"appservers\":[{\"name\":\"thin\",\"description\":\"Thin\"}],\"detection\":[{\"config/application.rb\":true},{\"config/environment.rb\":true}]},\"django\":{\"name\":\"django\",\"runtimes\":[{\"name\":\"python26\",\"version\":\"2.6.5\",\"description\":\"Python 2.6.5\"}],\"appservers\":[],\"detection\":[{\"*.py\":\".\"}]},\"node\":{\"name\":\"node\",\"runtimes\":[{\"name\":\"node\",\"version\":\"0.4.5\",\"description\":\"Node.js\"}],\"appservers\":[],\"detection\":[{\"*.js\":\".\"}]},\"wsgi\":{\"name\":\"wsgi\",\"runtimes\":[{\"name\":\"python26\",\"version\":\"2.6.5\",\"description\":\"Python 2.6.5\"}],\"appservers\":[],\"detection\":[{\"*.py\":\".\"}]}}}"
42
+ http_version:
43
+ recorded_at: Fri, 02 Dec 2011 01:09:34 GMT
44
+ - request:
45
+ method: get
46
+ uri: http://api.vcap.me:80/info
47
+ body: ""
48
+ headers:
49
+ User-Agent:
50
+ - cloudfoundry-client-0.1.0
51
+ Authorization:
52
+ - 04085b084922117573657240766361702e6d65063a0645546c2b073101dc4e2219f848b1aea2d82a2a6981750fa1aac61104aed60f
53
+ Accept:
54
+ - application/json
55
+ Content-Type:
56
+ - application/json
57
+ Accept-Encoding:
58
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
59
+ response:
60
+ status:
61
+ code: 200
62
+ message: OK
63
+ headers:
64
+ Server:
65
+ - nginx/0.7.65
66
+ Date:
67
+ - Fri, 02 Dec 2011 01:09:35 GMT
68
+ Content-Type:
69
+ - application/json; charset=utf-8
70
+ Transfer-Encoding:
71
+ - chunked
72
+ Connection:
73
+ - keep-alive
74
+ Keep-Alive:
75
+ - timeout=20
76
+ Etag:
77
+ - "\"adea3e8a7bd68a058b88fbec459e2022\""
78
+ Cache-Control:
79
+ - max-age=0, private, must-revalidate
80
+ X-Ua-Compatible:
81
+ - IE=Edge
82
+ body: "{\"name\":\"vcap\",\"build\":2222,\"support\":\"http://support.cloudfoundry.com\",\"version\":\"0.999\",\"description\":\"VMware's Cloud Application Platform\",\"allow_debug\":true,\"user\":\"user@vcap.me\",\"limits\":{\"memory\":2048,\"app_uris\":4,\"services\":16,\"apps\":20},\"usage\":{\"memory\":0,\"apps\":0,\"services\":0},\"frameworks\":{\"grails\":{\"name\":\"grails\",\"runtimes\":[{\"name\":\"java\",\"version\":\"1.6\",\"description\":\"Java 6\"}],\"appservers\":[{\"name\":\"tomcat\",\"description\":\"Tomcat\"}],\"detection\":[{\"*.war\":true}]},\"spring\":{\"name\":\"spring\",\"runtimes\":[{\"name\":\"java\",\"version\":\"1.6\",\"description\":\"Java 6\"}],\"appservers\":[{\"name\":\"tomcat\",\"description\":\"Tomcat\"}],\"detection\":[{\"*.war\":true}]},\"sinatra\":{\"name\":\"sinatra\",\"runtimes\":[{\"name\":\"ruby18\",\"version\":\"1.8.7\",\"description\":\"Ruby 1.8.7\"},{\"name\":\"ruby19\",\"version\":\"1.9.2p180\",\"description\":\"Ruby 1.9.2\"}],\"appservers\":[{\"name\":\"thin\",\"description\":\"Thin\"}],\"detection\":[{\"*.rb\":\"require 'sinatra'|require \\\"sinatra\\\"\"},{\"config/environment.rb\":false}]},\"java_web\":{\"name\":\"java_web\",\"runtimes\":[{\"name\":\"java\",\"version\":\"1.6\",\"description\":\"Java 6\"}],\"appservers\":[{\"name\":\"tomcat\",\"description\":\"Tomcat\"}],\"detection\":[{\"*.war\":true}]},\"php\":{\"name\":\"php\",\"runtimes\":[{\"name\":\"php\",\"version\":\"5.3\",\"description\":\"PHP 5\"}],\"appservers\":[{\"name\":\"apache\",\"description\":\"Apache\"}],\"detection\":[{\"*.php\":true}]},\"otp_rebar\":{\"name\":\"otp_rebar\",\"runtimes\":[{\"name\":\"erlangR14B02\",\"version\":\"R14B02\",\"description\":\"Erlang R14B02\"}],\"appservers\":[],\"detection\":[{\"releases/*/*.rel\":\".\"}]},\"lift\":{\"name\":\"lift\",\"runtimes\":[{\"name\":\"java\",\"version\":\"1.6\",\"description\":\"Java 6\"}],\"appservers\":[{\"name\":\"tomcat\",\"description\":\"Tomcat\"}],\"detection\":[{\"*.war\":true}]},\"rails3\":{\"name\":\"rails3\",\"runtimes\":[{\"name\":\"ruby18\",\"version\":\"1.8.7\",\"description\":\"Ruby 1.8.7\"},{\"name\":\"ruby19\",\"version\":\"1.9.2p180\",\"description\":\"Ruby 1.9.2\"}],\"appservers\":[{\"name\":\"thin\",\"description\":\"Thin\"}],\"detection\":[{\"config/application.rb\":true},{\"config/environment.rb\":true}]},\"django\":{\"name\":\"django\",\"runtimes\":[{\"name\":\"python26\",\"version\":\"2.6.5\",\"description\":\"Python 2.6.5\"}],\"appservers\":[],\"detection\":[{\"*.py\":\".\"}]},\"node\":{\"name\":\"node\",\"runtimes\":[{\"name\":\"node\",\"version\":\"0.4.5\",\"description\":\"Node.js\"}],\"appservers\":[],\"detection\":[{\"*.js\":\".\"}]},\"wsgi\":{\"name\":\"wsgi\",\"runtimes\":[{\"name\":\"python26\",\"version\":\"2.6.5\",\"description\":\"Python 2.6.5\"}],\"appservers\":[],\"detection\":[{\"*.py\":\".\"}]}}}"
83
+ http_version:
84
+ recorded_at: Fri, 02 Dec 2011 01:09:34 GMT
85
+ recorded_with: VCR 2.0.0.beta2
@@ -0,0 +1,126 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://api.vcap.me:80/info
6
+ body: ""
7
+ headers:
8
+ User-Agent:
9
+ - cloudfoundry-client-0.1.0
10
+ Authorization:
11
+ - 04085b084922117573657240766361702e6d65063a0645546c2b073101dc4e2219f848b1aea2d82a2a6981750fa1aac61104aed60f
12
+ Accept:
13
+ - application/json
14
+ Content-Type:
15
+ - application/json
16
+ Accept-Encoding:
17
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
18
+ response:
19
+ status:
20
+ code: 200
21
+ message: OK
22
+ headers:
23
+ Server:
24
+ - nginx/0.7.65
25
+ Date:
26
+ - Fri, 02 Dec 2011 01:09:43 GMT
27
+ Content-Type:
28
+ - application/json; charset=utf-8
29
+ Transfer-Encoding:
30
+ - chunked
31
+ Connection:
32
+ - keep-alive
33
+ Keep-Alive:
34
+ - timeout=20
35
+ Etag:
36
+ - "\"adea3e8a7bd68a058b88fbec459e2022\""
37
+ Cache-Control:
38
+ - max-age=0, private, must-revalidate
39
+ X-Ua-Compatible:
40
+ - IE=Edge
41
+ body: "{\"name\":\"vcap\",\"build\":2222,\"support\":\"http://support.cloudfoundry.com\",\"version\":\"0.999\",\"description\":\"VMware's Cloud Application Platform\",\"allow_debug\":true,\"user\":\"user@vcap.me\",\"limits\":{\"memory\":2048,\"app_uris\":4,\"services\":16,\"apps\":20},\"usage\":{\"memory\":0,\"apps\":0,\"services\":0},\"frameworks\":{\"grails\":{\"name\":\"grails\",\"runtimes\":[{\"name\":\"java\",\"version\":\"1.6\",\"description\":\"Java 6\"}],\"appservers\":[{\"name\":\"tomcat\",\"description\":\"Tomcat\"}],\"detection\":[{\"*.war\":true}]},\"spring\":{\"name\":\"spring\",\"runtimes\":[{\"name\":\"java\",\"version\":\"1.6\",\"description\":\"Java 6\"}],\"appservers\":[{\"name\":\"tomcat\",\"description\":\"Tomcat\"}],\"detection\":[{\"*.war\":true}]},\"sinatra\":{\"name\":\"sinatra\",\"runtimes\":[{\"name\":\"ruby18\",\"version\":\"1.8.7\",\"description\":\"Ruby 1.8.7\"},{\"name\":\"ruby19\",\"version\":\"1.9.2p180\",\"description\":\"Ruby 1.9.2\"}],\"appservers\":[{\"name\":\"thin\",\"description\":\"Thin\"}],\"detection\":[{\"*.rb\":\"require 'sinatra'|require \\\"sinatra\\\"\"},{\"config/environment.rb\":false}]},\"java_web\":{\"name\":\"java_web\",\"runtimes\":[{\"name\":\"java\",\"version\":\"1.6\",\"description\":\"Java 6\"}],\"appservers\":[{\"name\":\"tomcat\",\"description\":\"Tomcat\"}],\"detection\":[{\"*.war\":true}]},\"php\":{\"name\":\"php\",\"runtimes\":[{\"name\":\"php\",\"version\":\"5.3\",\"description\":\"PHP 5\"}],\"appservers\":[{\"name\":\"apache\",\"description\":\"Apache\"}],\"detection\":[{\"*.php\":true}]},\"otp_rebar\":{\"name\":\"otp_rebar\",\"runtimes\":[{\"name\":\"erlangR14B02\",\"version\":\"R14B02\",\"description\":\"Erlang R14B02\"}],\"appservers\":[],\"detection\":[{\"releases/*/*.rel\":\".\"}]},\"lift\":{\"name\":\"lift\",\"runtimes\":[{\"name\":\"java\",\"version\":\"1.6\",\"description\":\"Java 6\"}],\"appservers\":[{\"name\":\"tomcat\",\"description\":\"Tomcat\"}],\"detection\":[{\"*.war\":true}]},\"rails3\":{\"name\":\"rails3\",\"runtimes\":[{\"name\":\"ruby18\",\"version\":\"1.8.7\",\"description\":\"Ruby 1.8.7\"},{\"name\":\"ruby19\",\"version\":\"1.9.2p180\",\"description\":\"Ruby 1.9.2\"}],\"appservers\":[{\"name\":\"thin\",\"description\":\"Thin\"}],\"detection\":[{\"config/application.rb\":true},{\"config/environment.rb\":true}]},\"django\":{\"name\":\"django\",\"runtimes\":[{\"name\":\"python26\",\"version\":\"2.6.5\",\"description\":\"Python 2.6.5\"}],\"appservers\":[],\"detection\":[{\"*.py\":\".\"}]},\"node\":{\"name\":\"node\",\"runtimes\":[{\"name\":\"node\",\"version\":\"0.4.5\",\"description\":\"Node.js\"}],\"appservers\":[],\"detection\":[{\"*.js\":\".\"}]},\"wsgi\":{\"name\":\"wsgi\",\"runtimes\":[{\"name\":\"python26\",\"version\":\"2.6.5\",\"description\":\"Python 2.6.5\"}],\"appservers\":[],\"detection\":[{\"*.py\":\".\"}]}}}"
42
+ http_version:
43
+ recorded_at: Fri, 02 Dec 2011 01:09:42 GMT
44
+ - request:
45
+ method: get
46
+ uri: http://api.vcap.me:80/info/runtimes
47
+ body: ""
48
+ headers:
49
+ User-Agent:
50
+ - cloudfoundry-client-0.1.0
51
+ Authorization:
52
+ - 04085b084922117573657240766361702e6d65063a0645546c2b073101dc4e2219f848b1aea2d82a2a6981750fa1aac61104aed60f
53
+ Accept:
54
+ - application/json
55
+ Content-Type:
56
+ - application/json
57
+ Accept-Encoding:
58
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
59
+ response:
60
+ status:
61
+ code: 200
62
+ message: OK
63
+ headers:
64
+ Server:
65
+ - nginx/0.7.65
66
+ Date:
67
+ - Fri, 02 Dec 2011 01:09:43 GMT
68
+ Content-Type:
69
+ - application/json; charset=utf-8
70
+ Transfer-Encoding:
71
+ - chunked
72
+ Connection:
73
+ - keep-alive
74
+ Keep-Alive:
75
+ - timeout=20
76
+ Etag:
77
+ - "\"2f385a3c5eaf836cbbd0ca37c1c5c5a7\""
78
+ Cache-Control:
79
+ - max-age=0, private, must-revalidate
80
+ X-Ua-Compatible:
81
+ - IE=Edge
82
+ body: "{\"ruby18\":{\"version\":\"1.8.7\"},\"ruby19\":{\"version\":\"1.9.2\"},\"node\":{\"version\":\"0.4.[2-9]\"},\"java\":{\"version\":\"1.6.0\",\"debug_modes\":[\"run\",\"suspend\"]},\"php\":{\"version\":\"5.3.[2-6]\"},\"erlangR14B02\":{\"version\":\".* 5.8.3\"},\"python26\":{\"version\":\"2.6.5\"}}"
83
+ http_version:
84
+ recorded_at: Fri, 02 Dec 2011 01:09:42 GMT
85
+ - request:
86
+ method: get
87
+ uri: http://api.vcap.me:80/info/services
88
+ body: ""
89
+ headers:
90
+ User-Agent:
91
+ - cloudfoundry-client-0.1.0
92
+ Authorization:
93
+ - 04085b084922117573657240766361702e6d65063a0645546c2b073101dc4e2219f848b1aea2d82a2a6981750fa1aac61104aed60f
94
+ Accept:
95
+ - application/json
96
+ Content-Type:
97
+ - application/json
98
+ Accept-Encoding:
99
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
100
+ response:
101
+ status:
102
+ code: 200
103
+ message: OK
104
+ headers:
105
+ Server:
106
+ - nginx/0.7.65
107
+ Date:
108
+ - Fri, 02 Dec 2011 01:09:43 GMT
109
+ Content-Type:
110
+ - application/json; charset=utf-8
111
+ Transfer-Encoding:
112
+ - chunked
113
+ Connection:
114
+ - keep-alive
115
+ Keep-Alive:
116
+ - timeout=20
117
+ Etag:
118
+ - "\"c53736fe07a3f48b7e0f08c13d0649bd\""
119
+ Cache-Control:
120
+ - max-age=0, private, must-revalidate
121
+ X-Ua-Compatible:
122
+ - IE=Edge
123
+ body: "{\"key-value\":{\"redis\":{\"2.2\":{\"id\":1,\"vendor\":\"redis\",\"version\":\"2.2\",\"tiers\":{\"free\":{\"options\":{},\"order\":1}},\"type\":\"key-value\",\"description\":\"Redis key-value store service\"}},\"mongodb\":{\"1.8\":{\"id\":3,\"vendor\":\"mongodb\",\"version\":\"1.8\",\"tiers\":{\"free\":{\"options\":{},\"order\":1}},\"type\":\"key-value\",\"description\":\"MongoDB NoSQL store\"}}},\"database\":{\"mysql\":{\"5.1\":{\"id\":2,\"vendor\":\"mysql\",\"version\":\"5.1\",\"tiers\":{\"free\":{\"options\":{},\"order\":1}},\"type\":\"database\",\"description\":\"MySQL database service\"}}},\"generic\":{\"neo4j\":{\"1.4\":{\"id\":4,\"vendor\":\"neo4j\",\"version\":\"1.4\",\"tiers\":{\"free\":{\"options\":{},\"order\":1}},\"type\":\"generic\",\"description\":\"Neo4j NOSQL store\"}}}}"
124
+ http_version:
125
+ recorded_at: Fri, 02 Dec 2011 01:09:42 GMT
126
+ recorded_with: VCR 2.0.0.beta2
@@ -0,0 +1,44 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: http://api.vcap.me:80/resources
6
+ body: ""
7
+ headers:
8
+ User-Agent:
9
+ - cloudfoundry-client-0.1.0
10
+ Authorization:
11
+ - 04085b084922117573657240766361702e6d65063a0645546c2b073101dc4e2219f848b1aea2d82a2a6981750fa1aac61104aed60f
12
+ Accept:
13
+ - application/json
14
+ Content-Type:
15
+ - application/json
16
+ Content-Length:
17
+ - "0"
18
+ response:
19
+ status:
20
+ code: 200
21
+ message: OK
22
+ headers:
23
+ Server:
24
+ - nginx/0.7.65
25
+ Date:
26
+ - Fri, 02 Dec 2011 01:09:43 GMT
27
+ Content-Type:
28
+ - application/json; charset=utf-8
29
+ Transfer-Encoding:
30
+ - chunked
31
+ Connection:
32
+ - keep-alive
33
+ Keep-Alive:
34
+ - timeout=20
35
+ Etag:
36
+ - "\"d751713988987e9331980363e24189ce\""
37
+ Cache-Control:
38
+ - max-age=0, private, must-revalidate
39
+ X-Ua-Compatible:
40
+ - IE=Edge
41
+ body: "[]"
42
+ http_version:
43
+ recorded_at: Fri, 02 Dec 2011 01:09:42 GMT
44
+ recorded_with: VCR 2.0.0.beta2
@@ -0,0 +1,42 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: http://api.vcap.me:80/resources
6
+ body: "[{\"size\":457,\"sha1\":\"80e11ec5ac403c9198776471c80aef8d84334ccb\",\"fn\":\"/Users/frodenas/Rails/cloudfoundry-client/spec/fixtures/app.js\"}]"
7
+ headers:
8
+ User-Agent:
9
+ - cloudfoundry-client-0.1.0
10
+ Authorization:
11
+ - 04085b084922117573657240766361702e6d65063a0645546c2b073101dc4e2219f848b1aea2d82a2a6981750fa1aac61104aed60f
12
+ Accept:
13
+ - application/json
14
+ Content-Type:
15
+ - application/json
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Server:
22
+ - nginx/0.7.65
23
+ Date:
24
+ - Fri, 02 Dec 2011 01:09:43 GMT
25
+ Content-Type:
26
+ - application/json; charset=utf-8
27
+ Transfer-Encoding:
28
+ - chunked
29
+ Connection:
30
+ - keep-alive
31
+ Keep-Alive:
32
+ - timeout=20
33
+ Etag:
34
+ - "\"5248cbc951edd3e9f89b389b66139630\""
35
+ Cache-Control:
36
+ - max-age=0, private, must-revalidate
37
+ X-Ua-Compatible:
38
+ - IE=Edge
39
+ body: "[{\"size\":457,\"sha1\":\"80e11ec5ac403c9198776471c80aef8d84334ccb\",\"fn\":\"/Users/frodenas/Rails/cloudfoundry-client/spec/fixtures/app.js\"}]"
40
+ http_version:
41
+ recorded_at: Fri, 02 Dec 2011 01:09:42 GMT
42
+ recorded_with: VCR 2.0.0.beta2
@@ -0,0 +1,354 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://api.vcap.me:80/info/services
6
+ body: ""
7
+ headers:
8
+ User-Agent:
9
+ - cloudfoundry-client-0.1.0
10
+ Authorization:
11
+ - 04085b084922117573657240766361702e6d65063a0645546c2b073101dc4e2219f848b1aea2d82a2a6981750fa1aac61104aed60f
12
+ Accept:
13
+ - application/json
14
+ Content-Type:
15
+ - application/json
16
+ Accept-Encoding:
17
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
18
+ response:
19
+ status:
20
+ code: 200
21
+ message: OK
22
+ headers:
23
+ Server:
24
+ - nginx/0.7.65
25
+ Date:
26
+ - Fri, 02 Dec 2011 01:09:43 GMT
27
+ Content-Type:
28
+ - application/json; charset=utf-8
29
+ Transfer-Encoding:
30
+ - chunked
31
+ Connection:
32
+ - keep-alive
33
+ Keep-Alive:
34
+ - timeout=20
35
+ Etag:
36
+ - "\"c53736fe07a3f48b7e0f08c13d0649bd\""
37
+ Cache-Control:
38
+ - max-age=0, private, must-revalidate
39
+ X-Ua-Compatible:
40
+ - IE=Edge
41
+ body: "{\"key-value\":{\"redis\":{\"2.2\":{\"id\":1,\"vendor\":\"redis\",\"version\":\"2.2\",\"tiers\":{\"free\":{\"options\":{},\"order\":1}},\"type\":\"key-value\",\"description\":\"Redis key-value store service\"}},\"mongodb\":{\"1.8\":{\"id\":3,\"vendor\":\"mongodb\",\"version\":\"1.8\",\"tiers\":{\"free\":{\"options\":{},\"order\":1}},\"type\":\"key-value\",\"description\":\"MongoDB NoSQL store\"}}},\"database\":{\"mysql\":{\"5.1\":{\"id\":2,\"vendor\":\"mysql\",\"version\":\"5.1\",\"tiers\":{\"free\":{\"options\":{},\"order\":1}},\"type\":\"database\",\"description\":\"MySQL database service\"}}},\"generic\":{\"neo4j\":{\"1.4\":{\"id\":4,\"vendor\":\"neo4j\",\"version\":\"1.4\",\"tiers\":{\"free\":{\"options\":{},\"order\":1}},\"type\":\"generic\",\"description\":\"Neo4j NOSQL store\"}}}}"
42
+ http_version:
43
+ recorded_at: Fri, 02 Dec 2011 01:09:42 GMT
44
+ - request:
45
+ method: post
46
+ uri: http://api.vcap.me:80/services
47
+ body: "{\"type\":\"key-value\",\"vendor\":\"redis\",\"version\":\"2.2\",\"tier\":\"free\",\"name\":\"redis-mock\"}"
48
+ headers:
49
+ User-Agent:
50
+ - cloudfoundry-client-0.1.0
51
+ Authorization:
52
+ - 04085b084922117573657240766361702e6d65063a0645546c2b073101dc4e2219f848b1aea2d82a2a6981750fa1aac61104aed60f
53
+ Accept:
54
+ - application/json
55
+ Content-Type:
56
+ - application/json
57
+ response:
58
+ status:
59
+ code: 400
60
+ message: Bad Request
61
+ headers:
62
+ Server:
63
+ - nginx/0.7.65
64
+ Date:
65
+ - Fri, 02 Dec 2011 01:09:46 GMT
66
+ Content-Type:
67
+ - application/json; charset=utf-8
68
+ Transfer-Encoding:
69
+ - chunked
70
+ Connection:
71
+ - keep-alive
72
+ Keep-Alive:
73
+ - timeout=20
74
+ Cache-Control:
75
+ - no-cache
76
+ X-Ua-Compatible:
77
+ - IE=Edge
78
+ body: "{\"description\":\"Validation failed: Alias has already been taken\"}"
79
+ http_version:
80
+ recorded_at: Fri, 02 Dec 2011 01:09:45 GMT
81
+ - request:
82
+ method: get
83
+ uri: http://api.vcap.me:80/services
84
+ body: ""
85
+ headers:
86
+ User-Agent:
87
+ - cloudfoundry-client-0.1.0
88
+ Authorization:
89
+ - 04085b084922117573657240766361702e6d65063a0645546c2b073101dc4e2219f848b1aea2d82a2a6981750fa1aac61104aed60f
90
+ Accept:
91
+ - application/json
92
+ Content-Type:
93
+ - application/json
94
+ Accept-Encoding:
95
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
96
+ response:
97
+ status:
98
+ code: 200
99
+ message: OK
100
+ headers:
101
+ Server:
102
+ - nginx/0.7.65
103
+ Date:
104
+ - Fri, 02 Dec 2011 01:09:46 GMT
105
+ Content-Type:
106
+ - application/json; charset=utf-8
107
+ Transfer-Encoding:
108
+ - chunked
109
+ Connection:
110
+ - keep-alive
111
+ Keep-Alive:
112
+ - timeout=20
113
+ Etag:
114
+ - "\"81a77363e3c9ee36bcc903c128f173a7\""
115
+ Cache-Control:
116
+ - max-age=0, private, must-revalidate
117
+ X-Ua-Compatible:
118
+ - IE=Edge
119
+ body: "[{\"name\":\"redis-mock\",\"type\":\"key-value\",\"vendor\":\"redis\",\"version\":\"2.2\",\"tier\":\"free\",\"properties\":{},\"meta\":{\"created\":1322788185,\"updated\":1322788185,\"tags\":[\"redis\",\"redis-2.2\",\"key-value\",\"nosql\"],\"version\":1}}]"
120
+ http_version:
121
+ recorded_at: Fri, 02 Dec 2011 01:09:45 GMT
122
+ - request:
123
+ method: get
124
+ uri: http://api.vcap.me:80/services/noservice
125
+ body: ""
126
+ headers:
127
+ User-Agent:
128
+ - cloudfoundry-client-0.1.0
129
+ Authorization:
130
+ - 04085b084922117573657240766361702e6d65063a0645546c2b073101dc4e2219f848b1aea2d82a2a6981750fa1aac61104aed60f
131
+ Accept:
132
+ - application/json
133
+ Content-Type:
134
+ - application/json
135
+ Accept-Encoding:
136
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
137
+ response:
138
+ status:
139
+ code: 404
140
+ message: Not Found
141
+ headers:
142
+ Server:
143
+ - nginx/0.7.65
144
+ Date:
145
+ - Fri, 02 Dec 2011 01:09:46 GMT
146
+ Content-Type:
147
+ - application/json; charset=utf-8
148
+ Transfer-Encoding:
149
+ - chunked
150
+ Connection:
151
+ - keep-alive
152
+ Keep-Alive:
153
+ - timeout=20
154
+ Cache-Control:
155
+ - no-cache
156
+ X-Ua-Compatible:
157
+ - IE=Edge
158
+ body: "{\"code\":500,\"description\":\"Service not found\"}"
159
+ http_version:
160
+ recorded_at: Fri, 02 Dec 2011 01:09:45 GMT
161
+ - request:
162
+ method: get
163
+ uri: http://api.vcap.me:80/services/redis-mock
164
+ body: ""
165
+ headers:
166
+ User-Agent:
167
+ - cloudfoundry-client-0.1.0
168
+ Authorization:
169
+ - 04085b084922117573657240766361702e6d65063a0645546c2b073101dc4e2219f848b1aea2d82a2a6981750fa1aac61104aed60f
170
+ Accept:
171
+ - application/json
172
+ Content-Type:
173
+ - application/json
174
+ Accept-Encoding:
175
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
176
+ response:
177
+ status:
178
+ code: 200
179
+ message: OK
180
+ headers:
181
+ Server:
182
+ - nginx/0.7.65
183
+ Date:
184
+ - Fri, 02 Dec 2011 01:09:46 GMT
185
+ Content-Type:
186
+ - application/json; charset=utf-8
187
+ Transfer-Encoding:
188
+ - chunked
189
+ Connection:
190
+ - keep-alive
191
+ Keep-Alive:
192
+ - timeout=20
193
+ Etag:
194
+ - "\"4d597daf1e538043afab00e953920f32\""
195
+ Cache-Control:
196
+ - max-age=0, private, must-revalidate
197
+ X-Ua-Compatible:
198
+ - IE=Edge
199
+ body: "{\"name\":\"redis-mock\",\"type\":\"key-value\",\"vendor\":\"redis\",\"version\":\"2.2\",\"tier\":\"free\",\"properties\":{},\"meta\":{\"created\":1322788185,\"updated\":1322788185,\"tags\":[\"redis\",\"redis-2.2\",\"key-value\",\"nosql\"],\"version\":1}}"
200
+ http_version:
201
+ recorded_at: Fri, 02 Dec 2011 01:09:45 GMT
202
+ - request:
203
+ method: get
204
+ uri: http://api.vcap.me:80/apps/appname
205
+ body: ""
206
+ headers:
207
+ User-Agent:
208
+ - cloudfoundry-client-0.1.0
209
+ Authorization:
210
+ - 04085b084922117573657240766361702e6d65063a0645546c2b073101dc4e2219f848b1aea2d82a2a6981750fa1aac61104aed60f
211
+ Accept:
212
+ - application/json
213
+ Content-Type:
214
+ - application/json
215
+ Accept-Encoding:
216
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
217
+ response:
218
+ status:
219
+ code: 404
220
+ message: Not Found
221
+ headers:
222
+ Server:
223
+ - nginx/0.7.65
224
+ Date:
225
+ - Fri, 02 Dec 2011 01:09:46 GMT
226
+ Content-Type:
227
+ - application/json; charset=utf-8
228
+ Transfer-Encoding:
229
+ - chunked
230
+ Connection:
231
+ - keep-alive
232
+ Keep-Alive:
233
+ - timeout=20
234
+ Cache-Control:
235
+ - no-cache
236
+ X-Ua-Compatible:
237
+ - IE=Edge
238
+ body: "{\"code\":301,\"description\":\"Application not found\"}"
239
+ http_version:
240
+ recorded_at: Fri, 02 Dec 2011 01:09:45 GMT
241
+ - request:
242
+ method: get
243
+ uri: http://api.vcap.me:80/apps/newapp
244
+ body: ""
245
+ headers:
246
+ User-Agent:
247
+ - cloudfoundry-client-0.1.0
248
+ Authorization:
249
+ - 04085b084922117573657240766361702e6d65063a0645546c2b073101dc4e2219f848b1aea2d82a2a6981750fa1aac61104aed60f
250
+ Accept:
251
+ - application/json
252
+ Content-Type:
253
+ - application/json
254
+ Accept-Encoding:
255
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
256
+ response:
257
+ status:
258
+ code: 200
259
+ message: OK
260
+ headers:
261
+ Server:
262
+ - nginx/0.7.65
263
+ Date:
264
+ - Fri, 02 Dec 2011 01:09:48 GMT
265
+ Content-Type:
266
+ - application/json; charset=utf-8
267
+ Transfer-Encoding:
268
+ - chunked
269
+ Connection:
270
+ - keep-alive
271
+ Keep-Alive:
272
+ - timeout=20
273
+ Etag:
274
+ - "\"e102e2b9f13097abf0b76d9142798506\""
275
+ Cache-Control:
276
+ - max-age=0, private, must-revalidate
277
+ X-Ua-Compatible:
278
+ - IE=Edge
279
+ body: "{\"name\":\"newapp\",\"staging\":{\"model\":\"node\",\"stack\":\"node\"},\"uris\":[\"newapp.vcap.me\"],\"instances\":1,\"runningInstances\":0,\"resources\":{\"memory\":64,\"disk\":2048,\"fds\":256},\"state\":\"STOPPED\",\"services\":[\"redis-mock\"],\"version\":\"538bc8f284a499ef33931b950abed7c4-0\",\"env\":[],\"meta\":{\"debug\":null,\"version\":2,\"created\":1322788188}}"
280
+ http_version:
281
+ recorded_at: Fri, 02 Dec 2011 01:09:46 GMT
282
+ - request:
283
+ method: delete
284
+ uri: http://api.vcap.me:80/services/noservice
285
+ body: ""
286
+ headers:
287
+ User-Agent:
288
+ - cloudfoundry-client-0.1.0
289
+ Authorization:
290
+ - 04085b084922117573657240766361702e6d65063a0645546c2b073101dc4e2219f848b1aea2d82a2a6981750fa1aac61104aed60f
291
+ Accept:
292
+ - "*/*"
293
+ response:
294
+ status:
295
+ code: 404
296
+ message: Not Found
297
+ headers:
298
+ Server:
299
+ - nginx/0.7.65
300
+ Date:
301
+ - Fri, 02 Dec 2011 01:09:49 GMT
302
+ Content-Type:
303
+ - application/json; charset=utf-8
304
+ Transfer-Encoding:
305
+ - chunked
306
+ Connection:
307
+ - keep-alive
308
+ Keep-Alive:
309
+ - timeout=20
310
+ Cache-Control:
311
+ - no-cache
312
+ X-Ua-Compatible:
313
+ - IE=Edge
314
+ body: "{\"code\":500,\"description\":\"Service not found\"}"
315
+ http_version:
316
+ recorded_at: Fri, 02 Dec 2011 01:09:48 GMT
317
+ - request:
318
+ method: delete
319
+ uri: http://api.vcap.me:80/services/redis-mock
320
+ body: ""
321
+ headers:
322
+ User-Agent:
323
+ - cloudfoundry-client-0.1.0
324
+ Authorization:
325
+ - 04085b084922117573657240766361702e6d65063a0645546c2b073101dc4e2219f848b1aea2d82a2a6981750fa1aac61104aed60f
326
+ Accept:
327
+ - "*/*"
328
+ response:
329
+ status:
330
+ code: 200
331
+ message: OK
332
+ headers:
333
+ Server:
334
+ - nginx/0.7.65
335
+ Date:
336
+ - Fri, 02 Dec 2011 01:09:49 GMT
337
+ Content-Type:
338
+ - application/json; charset=utf-8
339
+ Transfer-Encoding:
340
+ - chunked
341
+ Connection:
342
+ - keep-alive
343
+ Keep-Alive:
344
+ - timeout=20
345
+ Etag:
346
+ - "\"99914b932bd37a50b983c5e7c90ae93b\""
347
+ Cache-Control:
348
+ - max-age=0, private, must-revalidate
349
+ X-Ua-Compatible:
350
+ - IE=Edge
351
+ body: "{}"
352
+ http_version:
353
+ recorded_at: Fri, 02 Dec 2011 01:09:48 GMT
354
+ recorded_with: VCR 2.0.0.beta2