cloudfoundry-client 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
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