squall 0.0.3 → 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +10 -0
- data/.rspec +2 -0
- data/.rvmrc +1 -0
- data/.travis.yml +7 -0
- data/Gemfile +3 -0
- data/Gemfile.lock +100 -0
- data/LICENSE +1 -1
- data/README.md +69 -0
- data/Rakefile +48 -42
- data/lib/squall/base.rb +96 -0
- data/lib/squall/config.rb +26 -0
- data/lib/squall/exception.rb +13 -0
- data/lib/squall/hypervisor.rb +46 -16
- data/lib/squall/ip_address.rb +13 -0
- data/lib/squall/network.rb +42 -0
- data/lib/squall/params.rb +50 -0
- data/lib/squall/role.rb +56 -0
- data/lib/squall/statistic.rb +10 -0
- data/lib/squall/template.rb +22 -0
- data/lib/squall/transaction.rb +16 -0
- data/lib/squall/user.rb +87 -0
- data/lib/squall/version.rb +3 -0
- data/lib/squall/virtual_machine.rb +169 -41
- data/lib/squall.rb +76 -20
- data/spec/params_spec.rb +195 -0
- data/spec/spec_helper.rb +47 -0
- data/spec/squall/base_spec.rb +135 -0
- data/spec/squall/config_spec.rb +44 -0
- data/spec/squall/hypervisor_spec.rb +143 -0
- data/spec/squall/ip_address_spec.rb +32 -0
- data/spec/squall/network_spec.rb +121 -0
- data/spec/squall/role_spec.rb +123 -0
- data/spec/squall/statistic_spec.rb +23 -0
- data/spec/squall/template_spec.rb +59 -0
- data/spec/squall/transaction_spec.rb +42 -0
- data/spec/squall/user_spec.rb +195 -0
- data/spec/squall/virtual_machine_spec.rb +471 -0
- data/spec/squall_spec.rb +67 -0
- data/spec/vcr_cassettes/hypervisor/create.yml +77 -0
- data/spec/vcr_cassettes/hypervisor/delete.yml +77 -0
- data/spec/vcr_cassettes/hypervisor/edit.yml +79 -0
- data/spec/vcr_cassettes/hypervisor/list.yml +40 -0
- data/spec/vcr_cassettes/hypervisor/reboot.yml +77 -0
- data/spec/vcr_cassettes/hypervisor/show.yml +77 -0
- data/spec/vcr_cassettes/ipaddress/list.yml +77 -0
- data/spec/vcr_cassettes/network/create.yml +196 -0
- data/spec/vcr_cassettes/network/delete.yml +77 -0
- data/spec/vcr_cassettes/network/edit.yml +233 -0
- data/spec/vcr_cassettes/network/list.yml +40 -0
- data/spec/vcr_cassettes/role/create.yml +77 -0
- data/spec/vcr_cassettes/role/delete.yml +77 -0
- data/spec/vcr_cassettes/role/edit.yml +139 -0
- data/spec/vcr_cassettes/role/list.yml +40 -0
- data/spec/vcr_cassettes/role/permissions.yml +40 -0
- data/spec/vcr_cassettes/role/show.yml +77 -0
- data/spec/vcr_cassettes/statistic/usage_statistics.yml +40 -0
- data/spec/vcr_cassettes/template/download.yml +40 -0
- data/spec/vcr_cassettes/template/list.yml +40 -0
- data/spec/vcr_cassettes/template/make_public.yml +77 -0
- data/spec/vcr_cassettes/transaction/list.yml +40 -0
- data/spec/vcr_cassettes/transaction/show.yml +77 -0
- data/spec/vcr_cassettes/user/activate.yml +40 -0
- data/spec/vcr_cassettes/user/create.yml +116 -0
- data/spec/vcr_cassettes/user/delete.yml +77 -0
- data/spec/vcr_cassettes/user/edit_role.yml +116 -0
- data/spec/vcr_cassettes/user/generate_api_key.yml +40 -0
- data/spec/vcr_cassettes/user/list.yml +40 -0
- data/spec/vcr_cassettes/user/show.yml +77 -0
- data/spec/vcr_cassettes/user/stats.yml +40 -0
- data/spec/vcr_cassettes/user/suspend.yml +40 -0
- data/spec/vcr_cassettes/user/virtual_machines.yml +79 -0
- data/spec/vcr_cassettes/virtual_machine/build.yml +77 -0
- data/spec/vcr_cassettes/virtual_machine/change_owner.yml +108 -0
- data/spec/vcr_cassettes/virtual_machine/change_password.yml +77 -0
- data/spec/vcr_cassettes/virtual_machine/create.yml +40 -0
- data/spec/vcr_cassettes/virtual_machine/delete.yml +77 -0
- data/spec/vcr_cassettes/virtual_machine/edit.yml +77 -0
- data/spec/vcr_cassettes/virtual_machine/list.yml +40 -0
- data/spec/vcr_cassettes/virtual_machine/migrate.yml +116 -0
- data/spec/vcr_cassettes/virtual_machine/reboot.yml +77 -0
- data/spec/vcr_cassettes/virtual_machine/resize.yml +77 -0
- data/spec/vcr_cassettes/virtual_machine/show.yml +77 -0
- data/spec/vcr_cassettes/virtual_machine/shutdown.yml +77 -0
- data/spec/vcr_cassettes/virtual_machine/startup.yml +77 -0
- data/spec/vcr_cassettes/virtual_machine/stop.yml +77 -0
- data/spec/vcr_cassettes/virtual_machine/suspend.yml +77 -0
- data/spec/vcr_cassettes/virtual_machine/unlock.yml +77 -0
- data/spec/vcr_cassettes/virtual_machine/unsuspend.yml +77 -0
- data/squall.gemspec +25 -62
- metadata +224 -42
- data/.document +0 -5
- data/README.rdoc +0 -17
- data/VERSION.yml +0 -5
- data/lib/squall/client.rb +0 -87
- data/test/fixtures/virtual_machines.json +0 -1
- data/test/fixtures/virtual_machines_1.json +0 -1
- data/test/helper.rb +0 -31
- data/test/test_client.rb +0 -152
- data/test/test_squall.rb +0 -12
- data/test/test_virtual_machine.rb +0 -98
@@ -0,0 +1,233 @@
|
|
1
|
+
---
|
2
|
+
- !ruby/struct:VCR::HTTPInteraction
|
3
|
+
request: !ruby/struct:VCR::Request
|
4
|
+
method: :put
|
5
|
+
uri: http://user:pass@www.example.com:80/settings/networks/1.json?network[label]=one
|
6
|
+
body:
|
7
|
+
headers:
|
8
|
+
content-type:
|
9
|
+
- application/json
|
10
|
+
authorization:
|
11
|
+
- Basic WHAT
|
12
|
+
response: !ruby/struct:VCR::Response
|
13
|
+
status: !ruby/struct:VCR::ResponseStatus
|
14
|
+
code: 200
|
15
|
+
message: OK
|
16
|
+
headers:
|
17
|
+
x-ua-compatible:
|
18
|
+
- IE=Edge,chrome=1
|
19
|
+
x-powered-by:
|
20
|
+
- Phusion Passenger (mod_rails/mod_rack) 3.0.1
|
21
|
+
etag:
|
22
|
+
- "\"99914b932bd37a50b983c5e7c90ae93b\""
|
23
|
+
content-type:
|
24
|
+
- application/json; charset=utf-8
|
25
|
+
date:
|
26
|
+
- Tue, 19 Apr 2011 15:27:17 GMT
|
27
|
+
server:
|
28
|
+
- Apache/2.2.3 (CentOS)
|
29
|
+
x-runtime:
|
30
|
+
- "0.011287"
|
31
|
+
set-cookie:
|
32
|
+
- _onapp_session=WHAT; path=/; HttpOnly
|
33
|
+
cache-control:
|
34
|
+
- max-age=0, private, must-revalidate
|
35
|
+
status:
|
36
|
+
- "200"
|
37
|
+
transfer-encoding:
|
38
|
+
- chunked
|
39
|
+
body: "{}"
|
40
|
+
http_version: "1.1"
|
41
|
+
- !ruby/struct:VCR::HTTPInteraction
|
42
|
+
request: !ruby/struct:VCR::Request
|
43
|
+
method: :put
|
44
|
+
uri: http://user:pass@www.example.com:80/settings/networks/1.json?network[network_group_id]=1
|
45
|
+
body:
|
46
|
+
headers:
|
47
|
+
content-type:
|
48
|
+
- application/json
|
49
|
+
authorization:
|
50
|
+
- Basic WHAT
|
51
|
+
response: !ruby/struct:VCR::Response
|
52
|
+
status: !ruby/struct:VCR::ResponseStatus
|
53
|
+
code: 200
|
54
|
+
message: OK
|
55
|
+
headers:
|
56
|
+
x-ua-compatible:
|
57
|
+
- IE=Edge,chrome=1
|
58
|
+
x-powered-by:
|
59
|
+
- Phusion Passenger (mod_rails/mod_rack) 3.0.1
|
60
|
+
etag:
|
61
|
+
- "\"99914b932bd37a50b983c5e7c90ae93b\""
|
62
|
+
content-type:
|
63
|
+
- application/json; charset=utf-8
|
64
|
+
date:
|
65
|
+
- Tue, 19 Apr 2011 15:27:17 GMT
|
66
|
+
server:
|
67
|
+
- Apache/2.2.3 (CentOS)
|
68
|
+
x-runtime:
|
69
|
+
- "0.009696"
|
70
|
+
set-cookie:
|
71
|
+
- _onapp_session=WHAT; path=/; HttpOnly
|
72
|
+
cache-control:
|
73
|
+
- max-age=0, private, must-revalidate
|
74
|
+
status:
|
75
|
+
- "200"
|
76
|
+
transfer-encoding:
|
77
|
+
- chunked
|
78
|
+
body: "{}"
|
79
|
+
http_version: "1.1"
|
80
|
+
- !ruby/struct:VCR::HTTPInteraction
|
81
|
+
request: !ruby/struct:VCR::Request
|
82
|
+
method: :put
|
83
|
+
uri: http://user:pass@www.example.com:80/settings/networks/1.json?network[identifier]=lolzsdfds
|
84
|
+
body:
|
85
|
+
headers:
|
86
|
+
content-type:
|
87
|
+
- application/json
|
88
|
+
authorization:
|
89
|
+
- Basic WHAT
|
90
|
+
response: !ruby/struct:VCR::Response
|
91
|
+
status: !ruby/struct:VCR::ResponseStatus
|
92
|
+
code: 200
|
93
|
+
message: OK
|
94
|
+
headers:
|
95
|
+
x-ua-compatible:
|
96
|
+
- IE=Edge,chrome=1
|
97
|
+
x-powered-by:
|
98
|
+
- Phusion Passenger (mod_rails/mod_rack) 3.0.1
|
99
|
+
etag:
|
100
|
+
- "\"99914b932bd37a50b983c5e7c90ae93b\""
|
101
|
+
content-type:
|
102
|
+
- application/json; charset=utf-8
|
103
|
+
date:
|
104
|
+
- Tue, 19 Apr 2011 15:27:17 GMT
|
105
|
+
server:
|
106
|
+
- Apache/2.2.3 (CentOS)
|
107
|
+
x-runtime:
|
108
|
+
- "0.012071"
|
109
|
+
set-cookie:
|
110
|
+
- _onapp_session=WHAT; path=/; HttpOnly
|
111
|
+
cache-control:
|
112
|
+
- max-age=0, private, must-revalidate
|
113
|
+
status:
|
114
|
+
- "200"
|
115
|
+
transfer-encoding:
|
116
|
+
- chunked
|
117
|
+
body: "{}"
|
118
|
+
http_version: "1.1"
|
119
|
+
- !ruby/struct:VCR::HTTPInteraction
|
120
|
+
request: !ruby/struct:VCR::Request
|
121
|
+
method: :put
|
122
|
+
uri: http://user:pass@www.example.com:80/settings/networks/1.json?network[vlan]=1
|
123
|
+
body:
|
124
|
+
headers:
|
125
|
+
content-type:
|
126
|
+
- application/json
|
127
|
+
authorization:
|
128
|
+
- Basic WHAT
|
129
|
+
response: !ruby/struct:VCR::Response
|
130
|
+
status: !ruby/struct:VCR::ResponseStatus
|
131
|
+
code: 200
|
132
|
+
message: OK
|
133
|
+
headers:
|
134
|
+
x-ua-compatible:
|
135
|
+
- IE=Edge,chrome=1
|
136
|
+
x-powered-by:
|
137
|
+
- Phusion Passenger (mod_rails/mod_rack) 3.0.1
|
138
|
+
etag:
|
139
|
+
- "\"99914b932bd37a50b983c5e7c90ae93b\""
|
140
|
+
content-type:
|
141
|
+
- application/json; charset=utf-8
|
142
|
+
date:
|
143
|
+
- Tue, 19 Apr 2011 15:27:17 GMT
|
144
|
+
server:
|
145
|
+
- Apache/2.2.3 (CentOS)
|
146
|
+
x-runtime:
|
147
|
+
- "0.013193"
|
148
|
+
set-cookie:
|
149
|
+
- _onapp_session=WHAT; path=/; HttpOnly
|
150
|
+
cache-control:
|
151
|
+
- max-age=0, private, must-revalidate
|
152
|
+
status:
|
153
|
+
- "200"
|
154
|
+
transfer-encoding:
|
155
|
+
- chunked
|
156
|
+
body: "{}"
|
157
|
+
http_version: "1.1"
|
158
|
+
- !ruby/struct:VCR::HTTPInteraction
|
159
|
+
request: !ruby/struct:VCR::Request
|
160
|
+
method: :put
|
161
|
+
uri: http://user:pass@www.example.com:80/settings/networks/1.json?network[identifier]=woah&network[label]=two&network[vlan]=2
|
162
|
+
body:
|
163
|
+
headers:
|
164
|
+
content-type:
|
165
|
+
- application/json
|
166
|
+
authorization:
|
167
|
+
- Basic WHAT
|
168
|
+
response: !ruby/struct:VCR::Response
|
169
|
+
status: !ruby/struct:VCR::ResponseStatus
|
170
|
+
code: 200
|
171
|
+
message: OK
|
172
|
+
headers:
|
173
|
+
x-ua-compatible:
|
174
|
+
- IE=Edge,chrome=1
|
175
|
+
x-powered-by:
|
176
|
+
- Phusion Passenger (mod_rails/mod_rack) 3.0.1
|
177
|
+
etag:
|
178
|
+
- "\"99914b932bd37a50b983c5e7c90ae93b\""
|
179
|
+
content-type:
|
180
|
+
- application/json; charset=utf-8
|
181
|
+
date:
|
182
|
+
- Tue, 19 Apr 2011 15:27:17 GMT
|
183
|
+
server:
|
184
|
+
- Apache/2.2.3 (CentOS)
|
185
|
+
x-runtime:
|
186
|
+
- "0.010704"
|
187
|
+
set-cookie:
|
188
|
+
- _onapp_session=WHAT; path=/; HttpOnly
|
189
|
+
cache-control:
|
190
|
+
- max-age=0, private, must-revalidate
|
191
|
+
status:
|
192
|
+
- "200"
|
193
|
+
transfer-encoding:
|
194
|
+
- chunked
|
195
|
+
body: "{}"
|
196
|
+
http_version: "1.1"
|
197
|
+
- !ruby/struct:VCR::HTTPInteraction
|
198
|
+
request: !ruby/struct:VCR::Request
|
199
|
+
method: :put
|
200
|
+
uri: http://user:pass@www.example.com:80/settings/networks/404.json?
|
201
|
+
body:
|
202
|
+
headers:
|
203
|
+
content-type:
|
204
|
+
- application/json
|
205
|
+
authorization:
|
206
|
+
- Basic WHAT
|
207
|
+
response: !ruby/struct:VCR::Response
|
208
|
+
status: !ruby/struct:VCR::ResponseStatus
|
209
|
+
code: 404
|
210
|
+
message: Not Found
|
211
|
+
headers:
|
212
|
+
x-ua-compatible:
|
213
|
+
- IE=Edge,chrome=1
|
214
|
+
x-powered-by:
|
215
|
+
- Phusion Passenger (mod_rails/mod_rack) 3.0.1
|
216
|
+
content-type:
|
217
|
+
- application/json; charset=utf-8
|
218
|
+
x-runtime:
|
219
|
+
- "0.006840"
|
220
|
+
server:
|
221
|
+
- Apache/2.2.3 (CentOS)
|
222
|
+
date:
|
223
|
+
- Tue, 19 Apr 2011 15:27:18 GMT
|
224
|
+
set-cookie:
|
225
|
+
- _onapp_session=WHAT; path=/; HttpOnly
|
226
|
+
status:
|
227
|
+
- "404"
|
228
|
+
cache-control:
|
229
|
+
- no-cache
|
230
|
+
transfer-encoding:
|
231
|
+
- chunked
|
232
|
+
body: "{\"error\":\"Resource not found\"}"
|
233
|
+
http_version: "1.1"
|
@@ -0,0 +1,40 @@
|
|
1
|
+
---
|
2
|
+
- !ruby/struct:VCR::HTTPInteraction
|
3
|
+
request: !ruby/struct:VCR::Request
|
4
|
+
method: :get
|
5
|
+
uri: http://user:pass@www.example.com:80/settings/networks.json
|
6
|
+
body:
|
7
|
+
headers:
|
8
|
+
content-type:
|
9
|
+
- application/json
|
10
|
+
authorization:
|
11
|
+
- Basic WHAT
|
12
|
+
response: !ruby/struct:VCR::Response
|
13
|
+
status: !ruby/struct:VCR::ResponseStatus
|
14
|
+
code: 200
|
15
|
+
message: OK
|
16
|
+
headers:
|
17
|
+
x-ua-compatible:
|
18
|
+
- IE=Edge,chrome=1
|
19
|
+
etag:
|
20
|
+
- "\"b94035730510fea1df4c67b9372a2169\""
|
21
|
+
x-powered-by:
|
22
|
+
- Phusion Passenger (mod_rails/mod_rack) 3.0.1
|
23
|
+
content-type:
|
24
|
+
- application/json; charset=utf-8
|
25
|
+
x-runtime:
|
26
|
+
- "0.008425"
|
27
|
+
server:
|
28
|
+
- Apache/2.2.3 (CentOS)
|
29
|
+
date:
|
30
|
+
- Mon, 18 Apr 2011 18:29:14 GMT
|
31
|
+
set-cookie:
|
32
|
+
- _onapp_session=WHAT; path=/; HttpOnly
|
33
|
+
status:
|
34
|
+
- "200"
|
35
|
+
cache-control:
|
36
|
+
- max-age=0, private, must-revalidate
|
37
|
+
transfer-encoding:
|
38
|
+
- chunked
|
39
|
+
body: "[{\"network\":{\"label\":\"Test\",\"created_at\":\"2011-04-18T17:27:24Z\",\"network_group_id\":2,\"updated_at\":\"2011-04-18T17:27:24Z\",\"id\":1,\"vlan\":null,\"identifier\":\"xv33gh9bv881wg\"}},{\"network\":{\"label\":\"Test2\",\"created_at\":\"2011-04-18T18:25:35Z\",\"network_group_id\":2,\"updated_at\":\"2011-04-18T18:25:35Z\",\"id\":2,\"vlan\":null,\"identifier\":\"oi6qzar592yci4\"}}]"
|
40
|
+
http_version: "1.1"
|
@@ -0,0 +1,77 @@
|
|
1
|
+
---
|
2
|
+
- !ruby/struct:VCR::HTTPInteraction
|
3
|
+
request: !ruby/struct:VCR::Request
|
4
|
+
method: :post
|
5
|
+
uri: http://user:pass@www.example.com:80/roles.json?role[identifier]=testing&role[label]=Test
|
6
|
+
body:
|
7
|
+
headers:
|
8
|
+
content-type:
|
9
|
+
- application/json
|
10
|
+
authorization:
|
11
|
+
- Basic WHAT
|
12
|
+
response: !ruby/struct:VCR::Response
|
13
|
+
status: !ruby/struct:VCR::ResponseStatus
|
14
|
+
code: 422
|
15
|
+
message: Unprocessable Entity
|
16
|
+
headers:
|
17
|
+
x-ua-compatible:
|
18
|
+
- IE=Edge,chrome=1
|
19
|
+
x-powered-by:
|
20
|
+
- Phusion Passenger (mod_rails/mod_rack) 3.0.1
|
21
|
+
content-type:
|
22
|
+
- application/json; charset=utf-8
|
23
|
+
x-runtime:
|
24
|
+
- "0.008168"
|
25
|
+
server:
|
26
|
+
- Apache/2.2.3 (CentOS)
|
27
|
+
date:
|
28
|
+
- Mon, 18 Apr 2011 14:51:07 GMT
|
29
|
+
set-cookie:
|
30
|
+
- _onapp_session=WHAT; path=/; HttpOnly
|
31
|
+
status:
|
32
|
+
- "422"
|
33
|
+
cache-control:
|
34
|
+
- no-cache
|
35
|
+
transfer-encoding:
|
36
|
+
- chunked
|
37
|
+
body: "{\"identifier\":[\"has already been taken\"]}"
|
38
|
+
http_version: "1.1"
|
39
|
+
- !ruby/struct:VCR::HTTPInteraction
|
40
|
+
request: !ruby/struct:VCR::Request
|
41
|
+
method: :post
|
42
|
+
uri: http://user:pass@www.example.com:80/roles.json?role[identifier]=testing-create&role[label]=Test%20Create
|
43
|
+
body:
|
44
|
+
headers:
|
45
|
+
content-type:
|
46
|
+
- application/json
|
47
|
+
authorization:
|
48
|
+
- Basic WHAT
|
49
|
+
response: !ruby/struct:VCR::Response
|
50
|
+
status: !ruby/struct:VCR::ResponseStatus
|
51
|
+
code: 201
|
52
|
+
message: Created
|
53
|
+
headers:
|
54
|
+
x-ua-compatible:
|
55
|
+
- IE=Edge,chrome=1
|
56
|
+
location:
|
57
|
+
- http://www.example.com/roles/7
|
58
|
+
x-powered-by:
|
59
|
+
- Phusion Passenger (mod_rails/mod_rack) 3.0.1
|
60
|
+
content-type:
|
61
|
+
- application/json; charset=utf-8
|
62
|
+
x-runtime:
|
63
|
+
- "0.019195"
|
64
|
+
server:
|
65
|
+
- Apache/2.2.3 (CentOS)
|
66
|
+
date:
|
67
|
+
- Mon, 18 Apr 2011 14:54:29 GMT
|
68
|
+
set-cookie:
|
69
|
+
- _onapp_session=WHAT; path=/; HttpOnly
|
70
|
+
status:
|
71
|
+
- "201"
|
72
|
+
cache-control:
|
73
|
+
- no-cache
|
74
|
+
transfer-encoding:
|
75
|
+
- chunked
|
76
|
+
body: "{\"role\":{\"label\":\"Test Create\",\"created_at\":\"2011-04-18T14:54:29Z\",\"updated_at\":\"2011-04-18T14:54:29Z\",\"id\":7,\"permissions\":[],\"identifier\":\"testing-create\"}}"
|
77
|
+
http_version: "1.1"
|
@@ -0,0 +1,77 @@
|
|
1
|
+
---
|
2
|
+
- !ruby/struct:VCR::HTTPInteraction
|
3
|
+
request: !ruby/struct:VCR::Request
|
4
|
+
method: :delete
|
5
|
+
uri: http://user:pass@www.example.com:80/roles/5.json
|
6
|
+
body:
|
7
|
+
headers:
|
8
|
+
content-type:
|
9
|
+
- application/json
|
10
|
+
authorization:
|
11
|
+
- Basic WHAT
|
12
|
+
response: !ruby/struct:VCR::Response
|
13
|
+
status: !ruby/struct:VCR::ResponseStatus
|
14
|
+
code: 404
|
15
|
+
message: Not Found
|
16
|
+
headers:
|
17
|
+
x-ua-compatible:
|
18
|
+
- IE=Edge,chrome=1
|
19
|
+
x-powered-by:
|
20
|
+
- Phusion Passenger (mod_rails/mod_rack) 3.0.1
|
21
|
+
content-type:
|
22
|
+
- application/json; charset=utf-8
|
23
|
+
date:
|
24
|
+
- Fri, 15 Apr 2011 16:42:52 GMT
|
25
|
+
server:
|
26
|
+
- Apache/2.2.3 (CentOS)
|
27
|
+
x-runtime:
|
28
|
+
- "0.065155"
|
29
|
+
set-cookie:
|
30
|
+
- _onapp_session=WHAT; path=/; HttpOnly
|
31
|
+
cache-control:
|
32
|
+
- no-cache
|
33
|
+
status:
|
34
|
+
- "404"
|
35
|
+
transfer-encoding:
|
36
|
+
- chunked
|
37
|
+
body: "{\"error\":\"Resource not found\"}"
|
38
|
+
http_version: "1.1"
|
39
|
+
- !ruby/struct:VCR::HTTPInteraction
|
40
|
+
request: !ruby/struct:VCR::Request
|
41
|
+
method: :delete
|
42
|
+
uri: http://user:pass@www.example.com:80/roles/3.json
|
43
|
+
body:
|
44
|
+
headers:
|
45
|
+
content-type:
|
46
|
+
- application/json
|
47
|
+
authorization:
|
48
|
+
- Basic WHAT
|
49
|
+
response: !ruby/struct:VCR::Response
|
50
|
+
status: !ruby/struct:VCR::ResponseStatus
|
51
|
+
code: 200
|
52
|
+
message: OK
|
53
|
+
headers:
|
54
|
+
x-ua-compatible:
|
55
|
+
- IE=Edge,chrome=1
|
56
|
+
etag:
|
57
|
+
- "\"99914b932bd37a50b983c5e7c90ae93b\""
|
58
|
+
x-powered-by:
|
59
|
+
- Phusion Passenger (mod_rails/mod_rack) 3.0.1
|
60
|
+
content-type:
|
61
|
+
- application/json; charset=utf-8
|
62
|
+
x-runtime:
|
63
|
+
- "0.137829"
|
64
|
+
server:
|
65
|
+
- Apache/2.2.3 (CentOS)
|
66
|
+
date:
|
67
|
+
- Fri, 15 Apr 2011 16:42:52 GMT
|
68
|
+
set-cookie:
|
69
|
+
- _onapp_session=WHAT; path=/; HttpOnly
|
70
|
+
status:
|
71
|
+
- "200"
|
72
|
+
cache-control:
|
73
|
+
- max-age=0, private, must-revalidate
|
74
|
+
transfer-encoding:
|
75
|
+
- chunked
|
76
|
+
body: "{}"
|
77
|
+
http_version: "1.1"
|
@@ -0,0 +1,139 @@
|
|
1
|
+
---
|
2
|
+
- !ruby/struct:VCR::HTTPInteraction
|
3
|
+
request: !ruby/struct:VCR::Request
|
4
|
+
method: :put
|
5
|
+
uri: http://user:pass@www.example.com:80/roles/5.json?
|
6
|
+
body:
|
7
|
+
headers:
|
8
|
+
content-type:
|
9
|
+
- application/json
|
10
|
+
authorization:
|
11
|
+
- Basic WHAT
|
12
|
+
response: !ruby/struct:VCR::Response
|
13
|
+
status: !ruby/struct:VCR::ResponseStatus
|
14
|
+
code: 404
|
15
|
+
message: Not Found
|
16
|
+
headers:
|
17
|
+
x-ua-compatible:
|
18
|
+
- IE=Edge,chrome=1
|
19
|
+
x-powered-by:
|
20
|
+
- Phusion Passenger (mod_rails/mod_rack) 3.0.1
|
21
|
+
content-type:
|
22
|
+
- application/json; charset=utf-8
|
23
|
+
x-runtime:
|
24
|
+
- "0.021298"
|
25
|
+
server:
|
26
|
+
- Apache/2.2.3 (CentOS)
|
27
|
+
date:
|
28
|
+
- Thu, 14 Apr 2011 18:59:36 GMT
|
29
|
+
set-cookie:
|
30
|
+
- _onapp_session=WHAT; path=/; HttpOnly
|
31
|
+
status:
|
32
|
+
- "404"
|
33
|
+
cache-control:
|
34
|
+
- no-cache
|
35
|
+
transfer-encoding:
|
36
|
+
- chunked
|
37
|
+
body: "{\"error\":\"Resource not found\"}"
|
38
|
+
http_version: "1.1"
|
39
|
+
- !ruby/struct:VCR::HTTPInteraction
|
40
|
+
request: !ruby/struct:VCR::Request
|
41
|
+
method: :get
|
42
|
+
uri: http://user:pass@www.example.com:80/roles/3.json
|
43
|
+
body:
|
44
|
+
headers:
|
45
|
+
content-type:
|
46
|
+
- application/json
|
47
|
+
authorization:
|
48
|
+
- Basic WHAT
|
49
|
+
response: !ruby/struct:VCR::Response
|
50
|
+
status: !ruby/struct:VCR::ResponseStatus
|
51
|
+
code: 200
|
52
|
+
message: OK
|
53
|
+
headers:
|
54
|
+
x-ua-compatible:
|
55
|
+
- IE=Edge,chrome=1
|
56
|
+
x-powered-by:
|
57
|
+
- Phusion Passenger (mod_rails/mod_rack) 3.0.1
|
58
|
+
etag:
|
59
|
+
- "\"5c677ed1b8019c0e54089a5ec6c1eb0c\""
|
60
|
+
content-type:
|
61
|
+
- application/json; charset=utf-8
|
62
|
+
date:
|
63
|
+
- Thu, 14 Apr 2011 18:59:36 GMT
|
64
|
+
server:
|
65
|
+
- Apache/2.2.3 (CentOS)
|
66
|
+
x-runtime:
|
67
|
+
- "0.007870"
|
68
|
+
set-cookie:
|
69
|
+
- _onapp_session=WHAT; path=/; HttpOnly
|
70
|
+
cache-control:
|
71
|
+
- max-age=0, private, must-revalidate
|
72
|
+
status:
|
73
|
+
- "200"
|
74
|
+
transfer-encoding:
|
75
|
+
- chunked
|
76
|
+
body: "{\"role\":{\"label\":\"Other\",\"created_at\":\"2011-04-14T18:52:37Z\",\"updated_at\":\"2011-04-14T18:52:37Z\",\"id\":3,\"permissions\":[],\"identifier\":\"5ix73iwvoh7anf\"}}"
|
77
|
+
http_version: "1.1"
|
78
|
+
- !ruby/struct:VCR::HTTPInteraction
|
79
|
+
request: !ruby/struct:VCR::Request
|
80
|
+
method: :put
|
81
|
+
uri: http://user:pass@www.example.com:80/roles/3.json?role[label]=New
|
82
|
+
body:
|
83
|
+
headers:
|
84
|
+
content-type:
|
85
|
+
- application/json
|
86
|
+
authorization:
|
87
|
+
- Basic WHAT
|
88
|
+
response: !ruby/struct:VCR::Response
|
89
|
+
status: !ruby/struct:VCR::ResponseStatus
|
90
|
+
code: 200
|
91
|
+
message: OK
|
92
|
+
headers:
|
93
|
+
x-ua-compatible:
|
94
|
+
- IE=Edge,chrome=1
|
95
|
+
etag:
|
96
|
+
- "\"99914b932bd37a50b983c5e7c90ae93b\""
|
97
|
+
x-powered-by:
|
98
|
+
- Phusion Passenger (mod_rails/mod_rack) 3.0.1
|
99
|
+
content-type:
|
100
|
+
- application/json; charset=utf-8
|
101
|
+
x-runtime:
|
102
|
+
- "0.020769"
|
103
|
+
server:
|
104
|
+
- Apache/2.2.3 (CentOS)
|
105
|
+
date:
|
106
|
+
- Thu, 14 Apr 2011 19:06:11 GMT
|
107
|
+
set-cookie:
|
108
|
+
- _onapp_session=WHAT; path=/; HttpOnly
|
109
|
+
status:
|
110
|
+
- "200"
|
111
|
+
cache-control:
|
112
|
+
- max-age=0, private, must-revalidate
|
113
|
+
transfer-encoding:
|
114
|
+
- chunked
|
115
|
+
body: "{}"
|
116
|
+
http_version: "1.1"
|
117
|
+
- !ruby/struct:VCR::HTTPInteraction
|
118
|
+
request: !ruby/struct:VCR::Request
|
119
|
+
method: :get
|
120
|
+
uri: http://user:pass@www.example.com:80/roles/3.json
|
121
|
+
body:
|
122
|
+
headers:
|
123
|
+
content-type:
|
124
|
+
- application/json
|
125
|
+
authorization:
|
126
|
+
- Basic WHAT
|
127
|
+
response: !ruby/struct:VCR::Response
|
128
|
+
status: !ruby/struct:VCR::ResponseStatus
|
129
|
+
code: 302
|
130
|
+
message: Found
|
131
|
+
headers:
|
132
|
+
location:
|
133
|
+
- http://www.iana.org/domains/example/
|
134
|
+
server:
|
135
|
+
- BigIP
|
136
|
+
content-length:
|
137
|
+
- "0"
|
138
|
+
body:
|
139
|
+
http_version: "1.0"
|
@@ -0,0 +1,40 @@
|
|
1
|
+
---
|
2
|
+
- !ruby/struct:VCR::HTTPInteraction
|
3
|
+
request: !ruby/struct:VCR::Request
|
4
|
+
method: :get
|
5
|
+
uri: http://user:pass@www.example.com:80/roles.json
|
6
|
+
body:
|
7
|
+
headers:
|
8
|
+
content-type:
|
9
|
+
- application/json
|
10
|
+
authorization:
|
11
|
+
- Basic WHAT
|
12
|
+
response: !ruby/struct:VCR::Response
|
13
|
+
status: !ruby/struct:VCR::ResponseStatus
|
14
|
+
code: 200
|
15
|
+
message: OK
|
16
|
+
headers:
|
17
|
+
x-ua-compatible:
|
18
|
+
- IE=Edge,chrome=1
|
19
|
+
etag:
|
20
|
+
- "\"265c70174a00c8f0c648acf1627afa32\""
|
21
|
+
x-powered-by:
|
22
|
+
- Phusion Passenger (mod_rails/mod_rack) 3.0.1
|
23
|
+
content-type:
|
24
|
+
- application/json; charset=utf-8
|
25
|
+
x-runtime:
|
26
|
+
- "4.604464"
|
27
|
+
server:
|
28
|
+
- Apache/2.2.3 (CentOS)
|
29
|
+
date:
|
30
|
+
- Thu, 14 Apr 2011 17:45:59 GMT
|
31
|
+
set-cookie:
|
32
|
+
- _onapp_session=WHAT; path=/; HttpOnly
|
33
|
+
status:
|
34
|
+
- "200"
|
35
|
+
cache-control:
|
36
|
+
- max-age=0, private, must-revalidate
|
37
|
+
transfer-encoding:
|
38
|
+
- chunked
|
39
|
+
body: "[{\"role\":{\"label\":\"Administrator\",\"created_at\":\"2011-04-13T14:37:38Z\",\"updated_at\":\"2011-04-13T14:37:38Z\",\"id\":1,\"permissions\":[{\"permission\":{\"label\":\"Any action on virtual machines\",\"created_at\":\"2011-04-13T14:37:38Z\",\"updated_at\":\"2011-04-13T14:37:38Z\",\"id\":1,\"identifier\":\"virtual_machines\"}},{\"permission\":{\"label\":\"Any action on users\",\"created_at\":\"2011-04-13T14:37:38Z\",\"updated_at\":\"2011-04-13T14:37:38Z\",\"id\":11,\"identifier\":\"users\"}},{\"permission\":{\"label\":\"Any action on hypervisors\",\"created_at\":\"2011-04-13T14:37:38Z\",\"updated_at\":\"2011-04-13T14:37:38Z\",\"id\":19,\"identifier\":\"hypervisors\"}},{\"permission\":{\"label\":\"Any action on disks\",\"created_at\":\"2011-04-13T14:37:38Z\",\"updated_at\":\"2011-04-13T14:37:38Z\",\"id\":24,\"identifier\":\"disks\"}},{\"permission\":{\"label\":\"Any action on templates\",\"created_at\":\"2011-04-13T14:37:38Z\",\"updated_at\":\"2011-04-13T14:37:38Z\",\"id\":32,\"identifier\":\"templates\"}},{\"permission\":{\"label\":\"Any action on backups\",\"created_at\":\"2011-04-13T14:37:38Z\",\"updated_at\":\"2011-04-13T14:37:38Z\",\"id\":44,\"identifier\":\"backups\"}},{\"permission\":{\"label\":\"Any action on data_stores\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:39Z\",\"id\":55,\"identifier\":\"data_stores\"}},{\"permission\":{\"label\":\"Any action on permissions\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:39Z\",\"id\":60,\"identifier\":\"permissions\"}},{\"permission\":{\"label\":\"Any action on networks\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:39Z\",\"id\":65,\"identifier\":\"networks\"}},{\"permission\":{\"label\":\"Any action on ip addresses\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:39Z\",\"id\":70,\"identifier\":\"ip_addresses\"}},{\"permission\":{\"label\":\"Any action on nameservers\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:39Z\",\"id\":75,\"identifier\":\"nameservers\"}},{\"permission\":{\"label\":\"Any action on transactions\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:39Z\",\"id\":82,\"identifier\":\"transactions\"}},{\"permission\":{\"label\":\"Any action on resource limit\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:39Z\",\"id\":85,\"identifier\":\"resource_limits\"}},{\"permission\":{\"label\":\"Create a new resource limit\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:39Z\",\"id\":87,\"identifier\":\"resource_limits.create\"}},{\"permission\":{\"label\":\"Destroy any resource limit\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:39Z\",\"id\":89,\"identifier\":\"resource_limits.delete\"}},{\"permission\":{\"label\":\"See all resource limits\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:39Z\",\"id\":86,\"identifier\":\"resource_limits.read\"}},{\"permission\":{\"label\":\"Update any resource limit\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:39Z\",\"id\":88,\"identifier\":\"resource_limits.update\"}},{\"permission\":{\"label\":\"Unlock any virtual machine\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:39Z\",\"id\":90,\"identifier\":\"virtual_machines.unlock\"}},{\"permission\":{\"label\":\"Any action on Roles\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:39Z\",\"id\":91,\"identifier\":\"roles\"}},{\"permission\":{\"label\":\"Any action on groups\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:39Z\",\"id\":96,\"identifier\":\"groups\"}},{\"permission\":{\"label\":\"Any action on payments\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:39Z\",\"id\":101,\"identifier\":\"payments\"}},{\"permission\":{\"label\":\"Any action on Settings\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:39Z\",\"id\":107,\"identifier\":\"settings\"}},{\"permission\":{\"label\":\"See Alerts\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:39Z\",\"id\":110,\"identifier\":\"dashboard.alerts\"}},{\"permission\":{\"label\":\"Any action Sysuser Tools\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:39Z\",\"id\":111,\"identifier\":\"sysuser_tools.read\"}},{\"permission\":{\"label\":\"Send Support requests\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:39Z\",\"id\":113,\"identifier\":\"help.read\"}},{\"permission\":{\"label\":\"Full access to Statistics\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:39Z\",\"id\":116,\"identifier\":\"vm_stats\"}},{\"permission\":{\"label\":\"See All Statistics\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:39Z\",\"id\":117,\"identifier\":\"io_stats\"}},{\"permission\":{\"label\":\"See Global Statistic\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:40Z\",\"id\":123,\"identifier\":\"dashboard.global_stats\"}},{\"permission\":{\"label\":\"All actions on Dashboard\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:39Z\",\"id\":124,\"identifier\":\"dashboard\"}},{\"permission\":{\"label\":\"All actions on Sysuser Tools\",\"created_at\":\"2011-04-13T14:37:40Z\",\"updated_at\":\"2011-04-13T14:37:40Z\",\"id\":125,\"identifier\":\"sysuser_tools\"}},{\"permission\":{\"label\":\"All actions on Help\",\"created_at\":\"2011-04-13T14:37:40Z\",\"updated_at\":\"2011-04-13T14:37:40Z\",\"id\":126,\"identifier\":\"help\"}},{\"permission\":{\"label\":\"Any action on schedules\",\"created_at\":\"2011-04-13T14:37:40Z\",\"updated_at\":\"2011-04-13T14:37:40Z\",\"id\":127,\"identifier\":\"schedules\"}},{\"permission\":{\"label\":\"Delete all transactions from log\",\"created_at\":\"2011-04-13T14:37:40Z\",\"updated_at\":\"2011-04-13T14:37:40Z\",\"id\":135,\"identifier\":\"transactions.delete\"}},{\"permission\":{\"label\":\"Any action on schedule logs\",\"created_at\":\"2011-04-13T14:37:40Z\",\"updated_at\":\"2011-04-13T14:37:40Z\",\"id\":137,\"identifier\":\"schedule_logs\"}},{\"permission\":{\"label\":\"Migrate any virtual machine\",\"created_at\":\"2011-04-13T14:37:40Z\",\"updated_at\":\"2011-04-13T14:37:40Z\",\"id\":143,\"identifier\":\"virtual_machines.migrate\"}},{\"permission\":{\"label\":\"Reboot any hypervisor\",\"created_at\":\"2011-04-13T14:37:40Z\",\"updated_at\":\"2011-04-13T14:37:40Z\",\"id\":145,\"identifier\":\"hypervisors.reboot\"}},{\"permission\":{\"label\":\"All actions on virtual machine's IP addresses\",\"created_at\":\"2011-04-13T14:37:40Z\",\"updated_at\":\"2011-04-13T14:37:40Z\",\"id\":146,\"identifier\":\"ip_address_joins\"}},{\"permission\":{\"label\":\"Reset root password to any virtual machine\",\"created_at\":\"2011-04-13T14:37:40Z\",\"updated_at\":\"2011-04-13T14:37:40Z\",\"id\":153,\"identifier\":\"virtual_machines.reset_root_password\"}},{\"permission\":{\"label\":\"Unlock any disk\",\"created_at\":\"2011-04-13T14:37:40Z\",\"updated_at\":\"2011-04-13T14:37:40Z\",\"id\":155,\"identifier\":\"disks.unlock\"}},{\"permission\":{\"label\":\"Any action on log items\",\"created_at\":\"2011-04-13T14:37:40Z\",\"updated_at\":\"2011-04-13T14:37:40Z\",\"id\":156,\"identifier\":\"log_items\"}},{\"permission\":{\"label\":\"Autobackup for any disk\",\"created_at\":\"2011-04-13T14:37:40Z\",\"updated_at\":\"2011-04-13T14:37:40Z\",\"id\":163,\"identifier\":\"disks.autobackup\"}},{\"permission\":{\"label\":\"All actions on datastores on Hypervisor\",\"created_at\":\"2011-04-13T14:37:40Z\",\"updated_at\":\"2011-04-13T14:37:40Z\",\"id\":165,\"identifier\":\"data_store_joins\"}},{\"permission\":{\"label\":\"Any action on autobackup templates\",\"created_at\":\"2011-04-13T14:37:40Z\",\"updated_at\":\"2011-04-13T14:37:40Z\",\"id\":169,\"identifier\":\"autobackup_templates\"}},{\"permission\":{\"label\":\"Update any autobackup template\",\"created_at\":\"2011-04-13T14:37:40Z\",\"updated_at\":\"2011-04-13T14:37:40Z\",\"id\":170,\"identifier\":\"autobackup_templates.update\"}},{\"permission\":{\"label\":\"See all autobackup templates\",\"created_at\":\"2011-04-13T14:37:40Z\",\"updated_at\":\"2011-04-13T14:37:40Z\",\"id\":171,\"identifier\":\"autobackup_templates.read\"}},{\"permission\":{\"label\":\"Change an owner of any virtual machine\",\"created_at\":\"2011-04-13T14:37:40Z\",\"updated_at\":\"2011-04-13T14:37:40Z\",\"id\":172,\"identifier\":\"virtual_machines.change_owner\"}},{\"permission\":{\"label\":\"Any action on data store zones\",\"created_at\":\"2011-04-13T14:37:41Z\",\"updated_at\":\"2011-04-13T14:37:41Z\",\"id\":173,\"identifier\":\"data_store_zones\"}},{\"permission\":{\"label\":\"Any action on network zones\",\"created_at\":\"2011-04-13T14:37:41Z\",\"updated_at\":\"2011-04-13T14:37:41Z\",\"id\":179,\"identifier\":\"network_zones\"}},{\"permission\":{\"label\":\"Any action on billing plans\",\"created_at\":\"2011-04-13T14:37:41Z\",\"updated_at\":\"2011-04-13T14:37:41Z\",\"id\":185,\"identifier\":\"billing_plans\"}},{\"permission\":{\"label\":\"Any action on resources\",\"created_at\":\"2011-04-13T14:37:41Z\",\"updated_at\":\"2011-04-13T14:37:41Z\",\"id\":191,\"identifier\":\"base_resources\"}},{\"permission\":{\"label\":\"User can Login AS any user.\",\"created_at\":\"2011-04-13T14:37:41Z\",\"updated_at\":\"2011-04-13T14:37:41Z\",\"id\":197,\"identifier\":\"users.login_as\"}},{\"permission\":{\"label\":\"Any action on isos\",\"created_at\":\"2011-04-13T14:37:41Z\",\"updated_at\":\"2011-04-13T14:37:41Z\",\"id\":198,\"identifier\":\"isos\"}},{\"permission\":{\"label\":\"Any action on hypervisor zones\",\"created_at\":\"2011-04-13T14:37:41Z\",\"updated_at\":\"2011-04-13T14:37:41Z\",\"id\":211,\"identifier\":\"hypervisor_zones\"}},{\"permission\":{\"label\":\"Any action on mounting ISO\",\"created_at\":\"2011-04-13T14:37:41Z\",\"updated_at\":\"2011-04-13T14:37:41Z\",\"id\":217,\"identifier\":\"iso_joins\"}},{\"permission\":{\"label\":\"Change Suspended status for Virtual Machine\",\"created_at\":\"2011-04-13T14:37:41Z\",\"updated_at\":\"2011-04-13T14:37:41Z\",\"id\":224,\"identifier\":\"virtual_machines.suspend\"}},{\"permission\":{\"label\":\"Show Hypervisor Zones on VirtualMachine creation\",\"created_at\":\"2011-04-13T14:37:41Z\",\"updated_at\":\"2011-04-13T14:37:41Z\",\"id\":225,\"identifier\":\"hypervisor_zones.read_vm_creation\"}},{\"permission\":{\"label\":\"Show Hypervisors on VirtualMachine creation.\",\"created_at\":\"2011-04-13T14:37:41Z\",\"updated_at\":\"2011-04-13T14:37:41Z\",\"id\":226,\"identifier\":\"hypervisors.read_vm_creation\"}},{\"permission\":{\"label\":\"See All Statistics\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:39Z\",\"id\":117,\"identifier\":\"io_stats\"}},{\"permission\":{\"label\":\"See all IO Statistics\",\"created_at\":\"2011-04-13T14:37:41Z\",\"updated_at\":\"2011-04-13T14:37:41Z\",\"id\":227,\"identifier\":\"io_stats.read\"}},{\"permission\":{\"label\":\"See All Statistics\",\"created_at\":\"2011-04-13T14:37:45Z\",\"updated_at\":\"2011-04-13T14:37:45Z\",\"id\":231,\"identifier\":\"vm_stats.read\"}},{\"permission\":{\"label\":\"See License Details\",\"created_at\":\"2011-04-13T14:37:45Z\",\"updated_at\":\"2011-04-13T14:37:45Z\",\"id\":232,\"identifier\":\"dashboard.licensing\"}}],\"identifier\":\"user\"}},{\"role\":{\"label\":\"User\",\"created_at\":\"2011-04-13T14:37:38Z\",\"updated_at\":\"2011-04-13T14:37:38Z\",\"id\":2,\"permissions\":[{\"permission\":{\"label\":\"Create a new virtual machine\",\"created_at\":\"2011-04-13T14:37:38Z\",\"updated_at\":\"2011-04-13T14:37:38Z\",\"id\":4,\"identifier\":\"virtual_machines.create\"}},{\"permission\":{\"label\":\"See own virtual machines\",\"created_at\":\"2011-04-13T14:37:38Z\",\"updated_at\":\"2011-04-13T14:37:38Z\",\"id\":3,\"identifier\":\"virtual_machines.read.own\"}},{\"permission\":{\"label\":\"Update own virtual machine\",\"created_at\":\"2011-04-13T14:37:38Z\",\"updated_at\":\"2011-04-13T14:37:38Z\",\"id\":6,\"identifier\":\"virtual_machines.update.own\"}},{\"permission\":{\"label\":\"Destroy own virtual machine\",\"created_at\":\"2011-04-13T14:37:38Z\",\"updated_at\":\"2011-04-13T14:37:38Z\",\"id\":8,\"identifier\":\"virtual_machines.delete.own\"}},{\"permission\":{\"label\":\"Console to own virtual machine\",\"created_at\":\"2011-04-13T14:37:38Z\",\"updated_at\":\"2011-04-13T14:37:38Z\",\"id\":10,\"identifier\":\"virtual_machines.console.own\"}},{\"permission\":{\"label\":\"See own users\",\"created_at\":\"2011-04-13T14:37:38Z\",\"updated_at\":\"2011-04-13T14:37:38Z\",\"id\":13,\"identifier\":\"users.read.own\"}},{\"permission\":{\"label\":\"Update own user\",\"created_at\":\"2011-04-13T14:37:38Z\",\"updated_at\":\"2011-04-13T14:37:38Z\",\"id\":16,\"identifier\":\"users.update.own\"}},{\"permission\":{\"label\":\"See all hypervisors\",\"created_at\":\"2011-04-13T14:37:38Z\",\"updated_at\":\"2011-04-13T14:37:38Z\",\"id\":20,\"identifier\":\"hypervisors.read\"}},{\"permission\":{\"label\":\"Create a new disk\",\"created_at\":\"2011-04-13T14:37:38Z\",\"updated_at\":\"2011-04-13T14:37:38Z\",\"id\":27,\"identifier\":\"disks.create\"}},{\"permission\":{\"label\":\"See own disks\",\"created_at\":\"2011-04-13T14:37:38Z\",\"updated_at\":\"2011-04-13T14:37:38Z\",\"id\":26,\"identifier\":\"disks.read.own\"}},{\"permission\":{\"label\":\"Update own disk\",\"created_at\":\"2011-04-13T14:37:38Z\",\"updated_at\":\"2011-04-13T14:37:38Z\",\"id\":29,\"identifier\":\"disks.update.own\"}},{\"permission\":{\"label\":\"Destroy own disk\",\"created_at\":\"2011-04-13T14:37:38Z\",\"updated_at\":\"2011-04-13T14:37:38Z\",\"id\":31,\"identifier\":\"disks.delete.own\"}},{\"permission\":{\"label\":\"Create and Manage Templates\",\"created_at\":\"2011-04-13T14:37:38Z\",\"updated_at\":\"2011-04-13T14:37:38Z\",\"id\":42,\"identifier\":\"templates.manage.own\"}},{\"permission\":{\"label\":\"Create an own backup\",\"created_at\":\"2011-04-13T14:37:38Z\",\"updated_at\":\"2011-04-13T14:37:40Z\",\"id\":48,\"identifier\":\"backups.create.own\"}},{\"permission\":{\"label\":\"See own backups\",\"created_at\":\"2011-04-13T14:37:38Z\",\"updated_at\":\"2011-04-13T14:37:38Z\",\"id\":46,\"identifier\":\"backups.read.own\"}},{\"permission\":{\"label\":\"Update own backup\",\"created_at\":\"2011-04-13T14:37:38Z\",\"updated_at\":\"2011-04-13T14:37:38Z\",\"id\":50,\"identifier\":\"backups.update.own\"}},{\"permission\":{\"label\":\"Destroy own backup\",\"created_at\":\"2011-04-13T14:37:38Z\",\"updated_at\":\"2011-04-13T14:37:38Z\",\"id\":52,\"identifier\":\"backups.delete.own\"}},{\"permission\":{\"label\":\"Convert own backup to template\",\"created_at\":\"2011-04-13T14:37:38Z\",\"updated_at\":\"2011-04-13T14:37:38Z\",\"id\":54,\"identifier\":\"backups.convert.own\"}},{\"permission\":{\"label\":\"See all data_stores\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:39Z\",\"id\":56,\"identifier\":\"data_stores.read\"}},{\"permission\":{\"label\":\"See all networks\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:39Z\",\"id\":66,\"identifier\":\"networks.read\"}},{\"permission\":{\"label\":\"See all ip addresses\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:39Z\",\"id\":71,\"identifier\":\"ip_addresses.read\"}},{\"permission\":{\"label\":\"See all nameservers\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:39Z\",\"id\":76,\"identifier\":\"nameservers.read\"}},{\"permission\":{\"label\":\"Any power action on own virtual machines\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:39Z\",\"id\":81,\"identifier\":\"virtual_machines.power.own\"}},{\"permission\":{\"label\":\"See details of own transaction\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:39Z\",\"id\":84,\"identifier\":\"transactions.read.own\"}},{\"permission\":{\"label\":\"See all Roles\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:39Z\",\"id\":92,\"identifier\":\"roles.read\"}},{\"permission\":{\"label\":\"See all groups\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:39Z\",\"id\":97,\"identifier\":\"groups.read\"}},{\"permission\":{\"label\":\"See all payments\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:39Z\",\"id\":102,\"identifier\":\"payments.read\"}},{\"permission\":{\"label\":\"See own payments\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:39Z\",\"id\":106,\"identifier\":\"payments.read.own\"}},{\"permission\":{\"label\":\"See own resource limits\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:39Z\",\"id\":114,\"identifier\":\"resource_limits.read.own\"}},{\"permission\":{\"label\":\"See Own Statistics\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:39Z\",\"id\":118,\"identifier\":\"io_stats.own\"}},{\"permission\":{\"label\":\"See list of own transactions\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:39Z\",\"id\":122,\"identifier\":\"transactions.list.own\"}},{\"permission\":{\"label\":\"Delete own transactions from logs\",\"created_at\":\"2011-04-13T14:37:40Z\",\"updated_at\":\"2011-04-13T14:37:40Z\",\"id\":136,\"identifier\":\"transactions.delete.own\"}},{\"permission\":{\"label\":\"Migrate own virtual machine\",\"created_at\":\"2011-04-13T14:37:40Z\",\"updated_at\":\"2011-04-13T14:37:40Z\",\"id\":144,\"identifier\":\"virtual_machines.migrate.own\"}},{\"permission\":{\"label\":\"Add IP address to own virtual machine\",\"created_at\":\"2011-04-13T14:37:40Z\",\"updated_at\":\"2011-04-13T14:37:40Z\",\"id\":148,\"identifier\":\"ip_address_joins.create.own\"}},{\"permission\":{\"label\":\"See IP addresses assigned to any virtual machines\",\"created_at\":\"2011-04-13T14:37:40Z\",\"updated_at\":\"2011-04-13T14:37:40Z\",\"id\":149,\"identifier\":\"ip_address_joins.read\"}},{\"permission\":{\"label\":\"Remove IP address from own virtual machine\",\"created_at\":\"2011-04-13T14:37:40Z\",\"updated_at\":\"2011-04-13T14:37:40Z\",\"id\":152,\"identifier\":\"ip_address_joins.delete.own\"}},{\"permission\":{\"label\":\"Reset root password to own virtual machine\",\"created_at\":\"2011-04-13T14:37:40Z\",\"updated_at\":\"2011-04-13T14:37:40Z\",\"id\":154,\"identifier\":\"virtual_machines.reset_root_password.own\"}},{\"permission\":{\"label\":\"See details of own log item\",\"created_at\":\"2011-04-13T14:37:40Z\",\"updated_at\":\"2011-04-13T14:37:40Z\",\"id\":158,\"identifier\":\"log_items.read.own\"}},{\"permission\":{\"label\":\"See list of own log items\",\"created_at\":\"2011-04-13T14:37:40Z\",\"updated_at\":\"2011-04-13T14:37:40Z\",\"id\":160,\"identifier\":\"log_items.list.own\"}},{\"permission\":{\"label\":\"Delete own log item\",\"created_at\":\"2011-04-13T14:37:40Z\",\"updated_at\":\"2011-04-13T14:37:40Z\",\"id\":162,\"identifier\":\"log_items.delete.own\"}},{\"permission\":{\"label\":\"Autobackup for own disk\",\"created_at\":\"2011-04-13T14:37:40Z\",\"updated_at\":\"2011-04-13T14:37:40Z\",\"id\":164,\"identifier\":\"disks.autobackup.own\"}},{\"permission\":{\"label\":\"Create and Manage ISOs\",\"created_at\":\"2011-04-13T14:37:41Z\",\"updated_at\":\"2011-04-13T14:37:41Z\",\"id\":208,\"identifier\":\"isos.manage.own\"}},{\"permission\":{\"label\":\"See own mounted ISOs\",\"created_at\":\"2011-04-13T14:37:41Z\",\"updated_at\":\"2011-04-13T14:37:41Z\",\"id\":219,\"identifier\":\"iso_joins.read.own\"}},{\"permission\":{\"label\":\"Mount own ISO\",\"created_at\":\"2011-04-13T14:37:41Z\",\"updated_at\":\"2011-04-13T14:37:41Z\",\"id\":221,\"identifier\":\"iso_joins.create.own\"}},{\"permission\":{\"label\":\"Umount own mounted ISOs\",\"created_at\":\"2011-04-13T14:37:41Z\",\"updated_at\":\"2011-04-13T14:37:41Z\",\"id\":223,\"identifier\":\"iso_joins.delete.own\"}},{\"permission\":{\"label\":\"See own IO Statistics\",\"created_at\":\"2011-04-13T14:37:41Z\",\"updated_at\":\"2011-04-13T14:37:41Z\",\"id\":228,\"identifier\":\"io_stats.read.own\"}},{\"permission\":{\"label\":\"See own billing plan\",\"created_at\":\"2011-04-13T14:37:41Z\",\"updated_at\":\"2011-04-13T14:37:41Z\",\"id\":229,\"identifier\":\"billing_plans.read.own\"}},{\"permission\":{\"label\":\"See own base resources\",\"created_at\":\"2011-04-13T14:37:41Z\",\"updated_at\":\"2011-04-13T14:37:41Z\",\"id\":230,\"identifier\":\"base_resources.read.own\"}},{\"permission\":{\"label\":\"See Own Virtual Machine Statistics\",\"created_at\":\"2011-04-13T14:37:39Z\",\"updated_at\":\"2011-04-13T14:37:39Z\",\"id\":119,\"identifier\":\"vm_stats.read.own\"}}],\"identifier\":\"user\"}}]"
|
40
|
+
http_version: "1.1"
|