rumm 0.0.23 → 0.0.24
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/README.md +11 -3
- data/app.rb +13 -0
- data/app/controllers/authentication_controller.rb +12 -11
- data/app/controllers/railsifications_controller.rb +24 -21
- data/app/controllers/servers_controller.rb +14 -4
- data/app/controllers/users_controller.rb +15 -0
- data/app/forms/servers/update_form.rb +7 -0
- data/app/forms/volumes/create_form.rb +1 -2
- data/app/help/create_container.txt +0 -1
- data/app/help/create_dbinstance.txt +1 -1
- data/app/help/create_server.txt +1 -1
- data/app/help/destroy_node_on_loadbalancer.txt +1 -1
- data/app/help/railsify_server.txt +1 -1
- data/app/help/show_attachment_on_server.txt +4 -4
- data/app/help/show_server.txt +1 -1
- data/app/help/update_server.txt +19 -0
- data/app/providers/configuration_provider.rb +118 -0
- data/app/providers/credentials_provider.rb +4 -4
- data/app/providers/login_information_provider.rb +34 -0
- data/app/providers/users_provider.rb +13 -0
- data/app/routes.rb +1 -0
- data/app/views/authentication/login.txt.erb +1 -1
- data/app/views/help/show.txt.erb +1 -1
- data/app/views/servers/update.txt.erb +1 -0
- data/app/views/users/create.txt.erb +1 -1
- data/app/views/users/destroy.txt.erb +1 -0
- data/app/views/users/show.txt.erb +1 -0
- data/lib/rumm/exceptions.rb +5 -0
- data/lib/rumm/version.rb +1 -1
- data/rumm.gemspec +1 -2
- data/spec/features/attachments_spec.rb +1 -1
- data/spec/features/configuration_spec.rb +143 -0
- data/spec/features/containers_spec.rb +1 -1
- data/spec/features/databases_spec.rb +1 -1
- data/spec/features/dbinstances_spec.rb +1 -1
- data/spec/features/files_spec.rb +1 -1
- data/spec/features/help_spec.rb +1 -1
- data/spec/features/loadbalancers_spec.rb +1 -1
- data/spec/features/login_spec.rb +47 -33
- data/spec/features/nodes_spec.rb +1 -1
- data/spec/features/servers_spec.rb +1 -1
- data/spec/features/users_spec.rb +28 -0
- data/spec/features/volumes_spec.rb +1 -1
- data/spec/fixtures/cassettes/authentication/successful-login.yml +9 -5
- data/spec/fixtures/cassettes/authentication/unsuccessful-login.yml +5 -3
- data/spec/fixtures/cassettes/users/create.yml +122 -0
- data/spec/fixtures/cassettes/users/destroy.yml +200 -0
- data/spec/fixtures/cassettes/users/show-all.yml +122 -0
- data/spec/fixtures/cassettes/users/show.yml +165 -0
- data/spec/spec_helper.rb +19 -11
- metadata +25 -19
- data/app/providers/user_provider.rb +0 -23
@@ -0,0 +1,122 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: post
|
5
|
+
uri: https://identity.api.rackspacecloud.com/v2.0/tokens
|
6
|
+
body:
|
7
|
+
encoding: UTF-8
|
8
|
+
string: '{"auth":{"RAX-KSKEY:apiKeyCredentials":{"username":"<rackspace-username>","apiKey":"<rackspace-api-key>"}}}'
|
9
|
+
headers:
|
10
|
+
User-Agent:
|
11
|
+
- fog/1.12.1
|
12
|
+
Content-Type:
|
13
|
+
- application/json
|
14
|
+
Accept:
|
15
|
+
- application/json
|
16
|
+
X-Auth-Token: []
|
17
|
+
response:
|
18
|
+
status:
|
19
|
+
code: 200
|
20
|
+
message:
|
21
|
+
headers:
|
22
|
+
Server:
|
23
|
+
- nginx/0.8.55
|
24
|
+
Date:
|
25
|
+
- Mon, 26 Aug 2013 15:46:15 GMT
|
26
|
+
Content-Type:
|
27
|
+
- application/json
|
28
|
+
Connection:
|
29
|
+
- keep-alive
|
30
|
+
vary:
|
31
|
+
- Accept, Accept-Encoding, X-Auth-Token
|
32
|
+
VIA:
|
33
|
+
- 1.0 Repose (Repose/2.3.5)
|
34
|
+
Content-Length:
|
35
|
+
- '6168'
|
36
|
+
Front-End-Https:
|
37
|
+
- 'on'
|
38
|
+
body:
|
39
|
+
encoding: UTF-8
|
40
|
+
string: '{"access":{"token":{"id":"<rackspace-api-token>","expires":"2013-08-27T10:45:57.448-05:00","tenant":{"id":"833532","name":"833532"},"RAX-AUTH:authenticatedBy":["APIKEY"]},"serviceCatalog":[{"name":"cloudFilesCDN","endpoints":[{"region":"ORD","tenantId":"MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","publicURL":"https:\/\/cdn2.clouddrive.com\/v1\/MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd"},{"region":"SYD","tenantId":"MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","publicURL":"https:\/\/cdn4.clouddrive.com\/v1\/MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd"},{"region":"DFW","tenantId":"MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","publicURL":"https:\/\/cdn1.clouddrive.com\/v1\/MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd"},{"region":"IAD","tenantId":"MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","publicURL":"https:\/\/cdn5.clouddrive.com\/v1\/MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd"}],"type":"rax:object-cdn"},{"name":"cloudFiles","endpoints":[{"region":"ORD","tenantId":"MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","publicURL":"https:\/\/storage101.ord1.clouddrive.com\/v1\/MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","internalURL":"https:\/\/snet-storage101.ord1.clouddrive.com\/v1\/MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd"},{"region":"DFW","tenantId":"MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","publicURL":"https:\/\/storage101.dfw1.clouddrive.com\/v1\/MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","internalURL":"https:\/\/snet-storage101.dfw1.clouddrive.com\/v1\/MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd"},{"region":"SYD","tenantId":"MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","publicURL":"https:\/\/storage101.syd2.clouddrive.com\/v1\/MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","internalURL":"https:\/\/snet-storage101.syd2.clouddrive.com\/v1\/MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd"},{"region":"IAD","tenantId":"MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","publicURL":"https:\/\/storage101.iad3.clouddrive.com\/v1\/MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","internalURL":"https:\/\/snet-storage101.iad3.clouddrive.com\/v1\/MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd"}],"type":"object-store"},{"name":"cloudDatabases","endpoints":[{"region":"SYD","tenantId":"833532","publicURL":"https:\/\/syd.databases.api.rackspacecloud.com\/v1.0\/833532"},{"region":"DFW","tenantId":"833532","publicURL":"https:\/\/dfw.databases.api.rackspacecloud.com\/v1.0\/833532"},{"region":"ORD","tenantId":"833532","publicURL":"https:\/\/ord.databases.api.rackspacecloud.com\/v1.0\/833532"},{"region":"IAD","tenantId":"833532","publicURL":"https:\/\/iad.databases.api.rackspacecloud.com\/v1.0\/833532"}],"type":"rax:database"},{"name":"cloudMonitoring","endpoints":[{"tenantId":"833532","publicURL":"https:\/\/monitoring.api.rackspacecloud.com\/v1.0\/833532"}],"type":"rax:monitor"},{"name":"cloudBlockStorage","endpoints":[{"region":"SYD","tenantId":"833532","publicURL":"https:\/\/syd.blockstorage.api.rackspacecloud.com\/v1\/833532"},{"region":"DFW","tenantId":"833532","publicURL":"https:\/\/dfw.blockstorage.api.rackspacecloud.com\/v1\/833532"},{"region":"ORD","tenantId":"833532","publicURL":"https:\/\/ord.blockstorage.api.rackspacecloud.com\/v1\/833532"},{"region":"IAD","tenantId":"833532","publicURL":"https:\/\/iad.blockstorage.api.rackspacecloud.com\/v1\/833532"}],"type":"volume"},{"name":"cloudServersOpenStack","endpoints":[{"region":"SYD","tenantId":"833532","publicURL":"https:\/\/syd.servers.api.rackspacecloud.com\/v2\/833532","versionInfo":"https:\/\/syd.servers.api.rackspacecloud.com\/v2","versionList":"https:\/\/syd.servers.api.rackspacecloud.com\/","versionId":"2"},{"region":"ORD","tenantId":"833532","publicURL":"https:\/\/ord.servers.api.rackspacecloud.com\/v2\/833532","versionInfo":"https:\/\/ord.servers.api.rackspacecloud.com\/v2","versionList":"https:\/\/ord.servers.api.rackspacecloud.com\/","versionId":"2"},{"region":"DFW","tenantId":"833532","publicURL":"https:\/\/dfw.servers.api.rackspacecloud.com\/v2\/833532","versionInfo":"https:\/\/dfw.servers.api.rackspacecloud.com\/v2","versionList":"https:\/\/dfw.servers.api.rackspacecloud.com\/","versionId":"2"},{"region":"IAD","tenantId":"833532","publicURL":"https:\/\/iad.servers.api.rackspacecloud.com\/v2\/833532","versionInfo":"https:\/\/iad.servers.api.rackspacecloud.com\/v2","versionList":"https:\/\/iad.servers.api.rackspacecloud.com\/","versionId":"2"}],"type":"compute"},{"name":"cloudServers","endpoints":[{"tenantId":"833532","publicURL":"https:\/\/servers.api.rackspacecloud.com\/v1.0\/833532","versionInfo":"https:\/\/servers.api.rackspacecloud.com\/v1.0","versionList":"https:\/\/servers.api.rackspacecloud.com\/","versionId":"1.0"}],"type":"compute"},{"name":"cloudDNS","endpoints":[{"tenantId":"833532","publicURL":"https:\/\/dns.api.rackspacecloud.com\/v1.0\/833532"}],"type":"rax:dns"},{"name":"cloudLoadBalancers","endpoints":[{"region":"SYD","tenantId":"833532","publicURL":"https:\/\/syd.loadbalancers.api.rackspacecloud.com\/v1.0\/833532"},{"region":"ORD","tenantId":"833532","publicURL":"https:\/\/ord.loadbalancers.api.rackspacecloud.com\/v1.0\/833532"},{"region":"DFW","tenantId":"833532","publicURL":"https:\/\/dfw.loadbalancers.api.rackspacecloud.com\/v1.0\/833532"},{"region":"IAD","tenantId":"833532","publicURL":"https:\/\/iad.loadbalancers.api.rackspacecloud.com\/v1.0\/833532"}],"type":"rax:load-balancer"},{"name":"cloudBackup","endpoints":[{"tenantId":"833532","publicURL":"https:\/\/backup.api.rackspacecloud.com\/v1.0\/833532"}],"type":"rax:backup"}],"user":{"id":"10038092","roles":[{"id":"10000150","description":"Checkmate
|
41
|
+
Access role","name":"checkmate"},{"id":"3","description":"User Admin Role.","name":"identity:user-admin"},{"tenantId":"MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","id":"5","description":"A
|
42
|
+
Role that allows a user access to keystone Service methods","name":"object-store:default"},{"tenantId":"833532","id":"6","description":"A
|
43
|
+
Role that allows a user access to keystone Service methods","name":"compute:default"}],"name":"<rackspace-username>","RAX-AUTH:defaultRegion":"ORD"}}}'
|
44
|
+
http_version:
|
45
|
+
recorded_at: Mon, 26 Aug 2013 15:46:15 GMT
|
46
|
+
- request:
|
47
|
+
method: get
|
48
|
+
uri: https://ord.databases.api.rackspacecloud.com/v1.0/833532/instances
|
49
|
+
body:
|
50
|
+
encoding: US-ASCII
|
51
|
+
string: ''
|
52
|
+
headers:
|
53
|
+
User-Agent:
|
54
|
+
- fog/1.12.1
|
55
|
+
Content-Type:
|
56
|
+
- application/json
|
57
|
+
Accept:
|
58
|
+
- application/json
|
59
|
+
X-Auth-Token:
|
60
|
+
- <rackspace-api-token>
|
61
|
+
response:
|
62
|
+
status:
|
63
|
+
code: 200
|
64
|
+
message:
|
65
|
+
headers:
|
66
|
+
Content-Type:
|
67
|
+
- application/json
|
68
|
+
Via:
|
69
|
+
- 1.1 Repose (Repose/2.6.11)
|
70
|
+
Content-Length:
|
71
|
+
- '630'
|
72
|
+
Date:
|
73
|
+
- Mon, 26 Aug 2013 15:46:15 GMT
|
74
|
+
Server:
|
75
|
+
- Jetty(8.0.y.z-SNAPSHOT)
|
76
|
+
body:
|
77
|
+
encoding: UTF-8
|
78
|
+
string: '{"instances": [{"status": "ACTIVE", "name": "decided-irony", "links":
|
79
|
+
[{"href": "https://ord.databases.api.rackspacecloud.com:443/v1.0/833532/instances/1c651e9e-f207-44a3-8b52-0ae620f43b4f",
|
80
|
+
"rel": "self"}, {"href": "https://ord.databases.api.rackspacecloud.com:443/instances/1c651e9e-f207-44a3-8b52-0ae620f43b4f",
|
81
|
+
"rel": "bookmark"}], "volume": {"size": 1}, "flavor": {"id": "1", "links":
|
82
|
+
[{"href": "https://ord.databases.api.rackspacecloud.com:443/v1.0/833532/flavors/1",
|
83
|
+
"rel": "self"}, {"href": "https://ord.databases.api.rackspacecloud.com:443/flavors/1",
|
84
|
+
"rel": "bookmark"}]}, "id": "1c651e9e-f207-44a3-8b52-0ae620f43b4f"}]}'
|
85
|
+
http_version:
|
86
|
+
recorded_at: Mon, 26 Aug 2013 15:46:15 GMT
|
87
|
+
- request:
|
88
|
+
method: get
|
89
|
+
uri: https://ord.databases.api.rackspacecloud.com/v1.0/833532/instances/1c651e9e-f207-44a3-8b52-0ae620f43b4f/users
|
90
|
+
body:
|
91
|
+
encoding: US-ASCII
|
92
|
+
string: ''
|
93
|
+
headers:
|
94
|
+
User-Agent:
|
95
|
+
- fog/1.12.1
|
96
|
+
Content-Type:
|
97
|
+
- application/json
|
98
|
+
Accept:
|
99
|
+
- application/json
|
100
|
+
X-Auth-Token:
|
101
|
+
- <rackspace-api-token>
|
102
|
+
response:
|
103
|
+
status:
|
104
|
+
code: 200
|
105
|
+
message:
|
106
|
+
headers:
|
107
|
+
Content-Type:
|
108
|
+
- application/json
|
109
|
+
Via:
|
110
|
+
- 1.1 Repose (Repose/2.6.11)
|
111
|
+
Content-Length:
|
112
|
+
- '88'
|
113
|
+
Date:
|
114
|
+
- Mon, 26 Aug 2013 15:46:16 GMT
|
115
|
+
Server:
|
116
|
+
- Jetty(8.0.y.z-SNAPSHOT)
|
117
|
+
body:
|
118
|
+
encoding: UTF-8
|
119
|
+
string: '{"users": [{"host": "%", "name": "test", "databases": [{"name": "dependable-bottom"}]}]}'
|
120
|
+
http_version:
|
121
|
+
recorded_at: Mon, 26 Aug 2013 15:46:16 GMT
|
122
|
+
recorded_with: VCR 2.5.0
|
@@ -0,0 +1,165 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: post
|
5
|
+
uri: https://identity.api.rackspacecloud.com/v2.0/tokens
|
6
|
+
body:
|
7
|
+
encoding: UTF-8
|
8
|
+
string: '{"auth":{"RAX-KSKEY:apiKeyCredentials":{"username":"<rackspace-username>","apiKey":"<rackspace-api-key>"}}}'
|
9
|
+
headers:
|
10
|
+
User-Agent:
|
11
|
+
- fog/1.12.1
|
12
|
+
Content-Type:
|
13
|
+
- application/json
|
14
|
+
Accept:
|
15
|
+
- application/json
|
16
|
+
X-Auth-Token: []
|
17
|
+
response:
|
18
|
+
status:
|
19
|
+
code: 200
|
20
|
+
message:
|
21
|
+
headers:
|
22
|
+
Server:
|
23
|
+
- nginx/0.8.55
|
24
|
+
Date:
|
25
|
+
- Mon, 26 Aug 2013 15:46:06 GMT
|
26
|
+
Content-Type:
|
27
|
+
- application/json
|
28
|
+
Connection:
|
29
|
+
- keep-alive
|
30
|
+
vary:
|
31
|
+
- Accept, Accept-Encoding, X-Auth-Token
|
32
|
+
VIA:
|
33
|
+
- 1.0 Repose (Repose/2.3.5)
|
34
|
+
Content-Length:
|
35
|
+
- '6168'
|
36
|
+
Front-End-Https:
|
37
|
+
- 'on'
|
38
|
+
body:
|
39
|
+
encoding: UTF-8
|
40
|
+
string: '{"access":{"token":{"id":"<rackspace-api-token>","expires":"2013-08-27T10:45:57.448-05:00","tenant":{"id":"833532","name":"833532"},"RAX-AUTH:authenticatedBy":["APIKEY"]},"serviceCatalog":[{"name":"cloudFiles","endpoints":[{"region":"ORD","tenantId":"MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","publicURL":"https:\/\/storage101.ord1.clouddrive.com\/v1\/MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","internalURL":"https:\/\/snet-storage101.ord1.clouddrive.com\/v1\/MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd"},{"region":"SYD","tenantId":"MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","publicURL":"https:\/\/storage101.syd2.clouddrive.com\/v1\/MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","internalURL":"https:\/\/snet-storage101.syd2.clouddrive.com\/v1\/MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd"},{"region":"DFW","tenantId":"MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","publicURL":"https:\/\/storage101.dfw1.clouddrive.com\/v1\/MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","internalURL":"https:\/\/snet-storage101.dfw1.clouddrive.com\/v1\/MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd"},{"region":"IAD","tenantId":"MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","publicURL":"https:\/\/storage101.iad3.clouddrive.com\/v1\/MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","internalURL":"https:\/\/snet-storage101.iad3.clouddrive.com\/v1\/MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd"}],"type":"object-store"},{"name":"cloudFilesCDN","endpoints":[{"region":"ORD","tenantId":"MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","publicURL":"https:\/\/cdn2.clouddrive.com\/v1\/MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd"},{"region":"SYD","tenantId":"MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","publicURL":"https:\/\/cdn4.clouddrive.com\/v1\/MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd"},{"region":"DFW","tenantId":"MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","publicURL":"https:\/\/cdn1.clouddrive.com\/v1\/MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd"},{"region":"IAD","tenantId":"MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","publicURL":"https:\/\/cdn5.clouddrive.com\/v1\/MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd"}],"type":"rax:object-cdn"},{"name":"cloudBackup","endpoints":[{"tenantId":"833532","publicURL":"https:\/\/backup.api.rackspacecloud.com\/v1.0\/833532"}],"type":"rax:backup"},{"name":"cloudBlockStorage","endpoints":[{"region":"SYD","tenantId":"833532","publicURL":"https:\/\/syd.blockstorage.api.rackspacecloud.com\/v1\/833532"},{"region":"ORD","tenantId":"833532","publicURL":"https:\/\/ord.blockstorage.api.rackspacecloud.com\/v1\/833532"},{"region":"DFW","tenantId":"833532","publicURL":"https:\/\/dfw.blockstorage.api.rackspacecloud.com\/v1\/833532"},{"region":"IAD","tenantId":"833532","publicURL":"https:\/\/iad.blockstorage.api.rackspacecloud.com\/v1\/833532"}],"type":"volume"},{"name":"cloudServersOpenStack","endpoints":[{"region":"SYD","tenantId":"833532","publicURL":"https:\/\/syd.servers.api.rackspacecloud.com\/v2\/833532","versionInfo":"https:\/\/syd.servers.api.rackspacecloud.com\/v2","versionList":"https:\/\/syd.servers.api.rackspacecloud.com\/","versionId":"2"},{"region":"ORD","tenantId":"833532","publicURL":"https:\/\/ord.servers.api.rackspacecloud.com\/v2\/833532","versionInfo":"https:\/\/ord.servers.api.rackspacecloud.com\/v2","versionList":"https:\/\/ord.servers.api.rackspacecloud.com\/","versionId":"2"},{"region":"DFW","tenantId":"833532","publicURL":"https:\/\/dfw.servers.api.rackspacecloud.com\/v2\/833532","versionInfo":"https:\/\/dfw.servers.api.rackspacecloud.com\/v2","versionList":"https:\/\/dfw.servers.api.rackspacecloud.com\/","versionId":"2"},{"region":"IAD","tenantId":"833532","publicURL":"https:\/\/iad.servers.api.rackspacecloud.com\/v2\/833532","versionInfo":"https:\/\/iad.servers.api.rackspacecloud.com\/v2","versionList":"https:\/\/iad.servers.api.rackspacecloud.com\/","versionId":"2"}],"type":"compute"},{"name":"cloudMonitoring","endpoints":[{"tenantId":"833532","publicURL":"https:\/\/monitoring.api.rackspacecloud.com\/v1.0\/833532"}],"type":"rax:monitor"},{"name":"cloudDatabases","endpoints":[{"region":"SYD","tenantId":"833532","publicURL":"https:\/\/syd.databases.api.rackspacecloud.com\/v1.0\/833532"},{"region":"ORD","tenantId":"833532","publicURL":"https:\/\/ord.databases.api.rackspacecloud.com\/v1.0\/833532"},{"region":"DFW","tenantId":"833532","publicURL":"https:\/\/dfw.databases.api.rackspacecloud.com\/v1.0\/833532"},{"region":"IAD","tenantId":"833532","publicURL":"https:\/\/iad.databases.api.rackspacecloud.com\/v1.0\/833532"}],"type":"rax:database"},{"name":"cloudServers","endpoints":[{"tenantId":"833532","publicURL":"https:\/\/servers.api.rackspacecloud.com\/v1.0\/833532","versionInfo":"https:\/\/servers.api.rackspacecloud.com\/v1.0","versionList":"https:\/\/servers.api.rackspacecloud.com\/","versionId":"1.0"}],"type":"compute"},{"name":"cloudDNS","endpoints":[{"tenantId":"833532","publicURL":"https:\/\/dns.api.rackspacecloud.com\/v1.0\/833532"}],"type":"rax:dns"},{"name":"cloudLoadBalancers","endpoints":[{"region":"SYD","tenantId":"833532","publicURL":"https:\/\/syd.loadbalancers.api.rackspacecloud.com\/v1.0\/833532"},{"region":"ORD","tenantId":"833532","publicURL":"https:\/\/ord.loadbalancers.api.rackspacecloud.com\/v1.0\/833532"},{"region":"DFW","tenantId":"833532","publicURL":"https:\/\/dfw.loadbalancers.api.rackspacecloud.com\/v1.0\/833532"},{"region":"IAD","tenantId":"833532","publicURL":"https:\/\/iad.loadbalancers.api.rackspacecloud.com\/v1.0\/833532"}],"type":"rax:load-balancer"}],"user":{"id":"10038092","roles":[{"id":"10000150","description":"Checkmate
|
41
|
+
Access role","name":"checkmate"},{"id":"3","description":"User Admin Role.","name":"identity:user-admin"},{"tenantId":"MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","id":"5","description":"A
|
42
|
+
Role that allows a user access to keystone Service methods","name":"object-store:default"},{"tenantId":"833532","id":"6","description":"A
|
43
|
+
Role that allows a user access to keystone Service methods","name":"compute:default"}],"name":"<rackspace-username>","RAX-AUTH:defaultRegion":"ORD"}}}'
|
44
|
+
http_version:
|
45
|
+
recorded_at: Mon, 26 Aug 2013 15:46:06 GMT
|
46
|
+
- request:
|
47
|
+
method: post
|
48
|
+
uri: https://identity.api.rackspacecloud.com/v2.0/tokens
|
49
|
+
body:
|
50
|
+
encoding: UTF-8
|
51
|
+
string: '{"auth":{"RAX-KSKEY:apiKeyCredentials":{"username":"<rackspace-username>","apiKey":"<rackspace-api-key>"}}}'
|
52
|
+
headers:
|
53
|
+
User-Agent:
|
54
|
+
- fog/1.12.1
|
55
|
+
Content-Type:
|
56
|
+
- application/json
|
57
|
+
Accept:
|
58
|
+
- application/json
|
59
|
+
X-Auth-Token: []
|
60
|
+
response:
|
61
|
+
status:
|
62
|
+
code: 200
|
63
|
+
message:
|
64
|
+
headers:
|
65
|
+
Server:
|
66
|
+
- nginx/0.8.55
|
67
|
+
Date:
|
68
|
+
- Mon, 26 Aug 2013 15:46:13 GMT
|
69
|
+
Content-Type:
|
70
|
+
- application/json
|
71
|
+
Connection:
|
72
|
+
- keep-alive
|
73
|
+
vary:
|
74
|
+
- Accept, Accept-Encoding, X-Auth-Token
|
75
|
+
VIA:
|
76
|
+
- 1.0 Repose (Repose/2.3.5)
|
77
|
+
Content-Length:
|
78
|
+
- '6168'
|
79
|
+
Front-End-Https:
|
80
|
+
- 'on'
|
81
|
+
body:
|
82
|
+
encoding: UTF-8
|
83
|
+
string: '{"access":{"token":{"id":"<rackspace-api-token>","expires":"2013-08-27T10:45:57.448-05:00","tenant":{"id":"833532","name":"833532"},"RAX-AUTH:authenticatedBy":["APIKEY"]},"serviceCatalog":[{"name":"cloudFiles","endpoints":[{"region":"ORD","tenantId":"MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","publicURL":"https:\/\/storage101.ord1.clouddrive.com\/v1\/MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","internalURL":"https:\/\/snet-storage101.ord1.clouddrive.com\/v1\/MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd"},{"region":"SYD","tenantId":"MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","publicURL":"https:\/\/storage101.syd2.clouddrive.com\/v1\/MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","internalURL":"https:\/\/snet-storage101.syd2.clouddrive.com\/v1\/MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd"},{"region":"DFW","tenantId":"MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","publicURL":"https:\/\/storage101.dfw1.clouddrive.com\/v1\/MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","internalURL":"https:\/\/snet-storage101.dfw1.clouddrive.com\/v1\/MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd"},{"region":"IAD","tenantId":"MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","publicURL":"https:\/\/storage101.iad3.clouddrive.com\/v1\/MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","internalURL":"https:\/\/snet-storage101.iad3.clouddrive.com\/v1\/MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd"}],"type":"object-store"},{"name":"cloudFilesCDN","endpoints":[{"region":"ORD","tenantId":"MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","publicURL":"https:\/\/cdn2.clouddrive.com\/v1\/MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd"},{"region":"SYD","tenantId":"MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","publicURL":"https:\/\/cdn4.clouddrive.com\/v1\/MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd"},{"region":"DFW","tenantId":"MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","publicURL":"https:\/\/cdn1.clouddrive.com\/v1\/MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd"},{"region":"IAD","tenantId":"MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","publicURL":"https:\/\/cdn5.clouddrive.com\/v1\/MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd"}],"type":"rax:object-cdn"},{"name":"cloudBlockStorage","endpoints":[{"region":"SYD","tenantId":"833532","publicURL":"https:\/\/syd.blockstorage.api.rackspacecloud.com\/v1\/833532"},{"region":"ORD","tenantId":"833532","publicURL":"https:\/\/ord.blockstorage.api.rackspacecloud.com\/v1\/833532"},{"region":"DFW","tenantId":"833532","publicURL":"https:\/\/dfw.blockstorage.api.rackspacecloud.com\/v1\/833532"},{"region":"IAD","tenantId":"833532","publicURL":"https:\/\/iad.blockstorage.api.rackspacecloud.com\/v1\/833532"}],"type":"volume"},{"name":"cloudLoadBalancers","endpoints":[{"region":"SYD","tenantId":"833532","publicURL":"https:\/\/syd.loadbalancers.api.rackspacecloud.com\/v1.0\/833532"},{"region":"ORD","tenantId":"833532","publicURL":"https:\/\/ord.loadbalancers.api.rackspacecloud.com\/v1.0\/833532"},{"region":"DFW","tenantId":"833532","publicURL":"https:\/\/dfw.loadbalancers.api.rackspacecloud.com\/v1.0\/833532"},{"region":"IAD","tenantId":"833532","publicURL":"https:\/\/iad.loadbalancers.api.rackspacecloud.com\/v1.0\/833532"}],"type":"rax:load-balancer"},{"name":"cloudServersOpenStack","endpoints":[{"region":"SYD","tenantId":"833532","publicURL":"https:\/\/syd.servers.api.rackspacecloud.com\/v2\/833532","versionInfo":"https:\/\/syd.servers.api.rackspacecloud.com\/v2","versionList":"https:\/\/syd.servers.api.rackspacecloud.com\/","versionId":"2"},{"region":"DFW","tenantId":"833532","publicURL":"https:\/\/dfw.servers.api.rackspacecloud.com\/v2\/833532","versionInfo":"https:\/\/dfw.servers.api.rackspacecloud.com\/v2","versionList":"https:\/\/dfw.servers.api.rackspacecloud.com\/","versionId":"2"},{"region":"ORD","tenantId":"833532","publicURL":"https:\/\/ord.servers.api.rackspacecloud.com\/v2\/833532","versionInfo":"https:\/\/ord.servers.api.rackspacecloud.com\/v2","versionList":"https:\/\/ord.servers.api.rackspacecloud.com\/","versionId":"2"},{"region":"IAD","tenantId":"833532","publicURL":"https:\/\/iad.servers.api.rackspacecloud.com\/v2\/833532","versionInfo":"https:\/\/iad.servers.api.rackspacecloud.com\/v2","versionList":"https:\/\/iad.servers.api.rackspacecloud.com\/","versionId":"2"}],"type":"compute"},{"name":"cloudDatabases","endpoints":[{"region":"SYD","tenantId":"833532","publicURL":"https:\/\/syd.databases.api.rackspacecloud.com\/v1.0\/833532"},{"region":"DFW","tenantId":"833532","publicURL":"https:\/\/dfw.databases.api.rackspacecloud.com\/v1.0\/833532"},{"region":"ORD","tenantId":"833532","publicURL":"https:\/\/ord.databases.api.rackspacecloud.com\/v1.0\/833532"},{"region":"IAD","tenantId":"833532","publicURL":"https:\/\/iad.databases.api.rackspacecloud.com\/v1.0\/833532"}],"type":"rax:database"},{"name":"cloudDNS","endpoints":[{"tenantId":"833532","publicURL":"https:\/\/dns.api.rackspacecloud.com\/v1.0\/833532"}],"type":"rax:dns"},{"name":"cloudServers","endpoints":[{"tenantId":"833532","publicURL":"https:\/\/servers.api.rackspacecloud.com\/v1.0\/833532","versionInfo":"https:\/\/servers.api.rackspacecloud.com\/v1.0","versionList":"https:\/\/servers.api.rackspacecloud.com\/","versionId":"1.0"}],"type":"compute"},{"name":"cloudMonitoring","endpoints":[{"tenantId":"833532","publicURL":"https:\/\/monitoring.api.rackspacecloud.com\/v1.0\/833532"}],"type":"rax:monitor"},{"name":"cloudBackup","endpoints":[{"tenantId":"833532","publicURL":"https:\/\/backup.api.rackspacecloud.com\/v1.0\/833532"}],"type":"rax:backup"}],"user":{"id":"10038092","roles":[{"id":"10000150","description":"Checkmate
|
84
|
+
Access role","name":"checkmate"},{"id":"3","description":"User Admin Role.","name":"identity:user-admin"},{"tenantId":"MossoCloudFS_558014f8-1c3d-44b9-a771-f42ace65e8dd","id":"5","description":"A
|
85
|
+
Role that allows a user access to keystone Service methods","name":"object-store:default"},{"tenantId":"833532","id":"6","description":"A
|
86
|
+
Role that allows a user access to keystone Service methods","name":"compute:default"}],"name":"<rackspace-username>","RAX-AUTH:defaultRegion":"ORD"}}}'
|
87
|
+
http_version:
|
88
|
+
recorded_at: Mon, 26 Aug 2013 15:46:13 GMT
|
89
|
+
- request:
|
90
|
+
method: get
|
91
|
+
uri: https://ord.databases.api.rackspacecloud.com/v1.0/833532/instances
|
92
|
+
body:
|
93
|
+
encoding: US-ASCII
|
94
|
+
string: ''
|
95
|
+
headers:
|
96
|
+
User-Agent:
|
97
|
+
- fog/1.12.1
|
98
|
+
Content-Type:
|
99
|
+
- application/json
|
100
|
+
Accept:
|
101
|
+
- application/json
|
102
|
+
X-Auth-Token:
|
103
|
+
- <rackspace-api-token>
|
104
|
+
response:
|
105
|
+
status:
|
106
|
+
code: 200
|
107
|
+
message:
|
108
|
+
headers:
|
109
|
+
Content-Type:
|
110
|
+
- application/json
|
111
|
+
Via:
|
112
|
+
- 1.1 Repose (Repose/2.6.11)
|
113
|
+
Content-Length:
|
114
|
+
- '630'
|
115
|
+
Date:
|
116
|
+
- Mon, 26 Aug 2013 15:46:14 GMT
|
117
|
+
Server:
|
118
|
+
- Jetty(8.0.y.z-SNAPSHOT)
|
119
|
+
body:
|
120
|
+
encoding: UTF-8
|
121
|
+
string: '{"instances": [{"status": "ACTIVE", "name": "decided-irony", "links":
|
122
|
+
[{"href": "https://ord.databases.api.rackspacecloud.com:443/v1.0/833532/instances/1c651e9e-f207-44a3-8b52-0ae620f43b4f",
|
123
|
+
"rel": "self"}, {"href": "https://ord.databases.api.rackspacecloud.com:443/instances/1c651e9e-f207-44a3-8b52-0ae620f43b4f",
|
124
|
+
"rel": "bookmark"}], "volume": {"size": 1}, "flavor": {"id": "1", "links":
|
125
|
+
[{"href": "https://ord.databases.api.rackspacecloud.com:443/v1.0/833532/flavors/1",
|
126
|
+
"rel": "self"}, {"href": "https://ord.databases.api.rackspacecloud.com:443/flavors/1",
|
127
|
+
"rel": "bookmark"}]}, "id": "1c651e9e-f207-44a3-8b52-0ae620f43b4f"}]}'
|
128
|
+
http_version:
|
129
|
+
recorded_at: Mon, 26 Aug 2013 15:46:14 GMT
|
130
|
+
- request:
|
131
|
+
method: get
|
132
|
+
uri: https://ord.databases.api.rackspacecloud.com/v1.0/833532/instances/1c651e9e-f207-44a3-8b52-0ae620f43b4f/users
|
133
|
+
body:
|
134
|
+
encoding: US-ASCII
|
135
|
+
string: ''
|
136
|
+
headers:
|
137
|
+
User-Agent:
|
138
|
+
- fog/1.12.1
|
139
|
+
Content-Type:
|
140
|
+
- application/json
|
141
|
+
Accept:
|
142
|
+
- application/json
|
143
|
+
X-Auth-Token:
|
144
|
+
- <rackspace-api-token>
|
145
|
+
response:
|
146
|
+
status:
|
147
|
+
code: 200
|
148
|
+
message:
|
149
|
+
headers:
|
150
|
+
Content-Type:
|
151
|
+
- application/json
|
152
|
+
Via:
|
153
|
+
- 1.1 Repose (Repose/2.6.11)
|
154
|
+
Content-Length:
|
155
|
+
- '88'
|
156
|
+
Date:
|
157
|
+
- Mon, 26 Aug 2013 15:46:14 GMT
|
158
|
+
Server:
|
159
|
+
- Jetty(8.0.y.z-SNAPSHOT)
|
160
|
+
body:
|
161
|
+
encoding: UTF-8
|
162
|
+
string: '{"users": [{"host": "%", "name": "test", "databases": [{"name": "dependable-bottom"}]}]}'
|
163
|
+
http_version:
|
164
|
+
recorded_at: Mon, 26 Aug 2013 15:46:14 GMT
|
165
|
+
recorded_with: VCR 2.5.0
|
data/spec/spec_helper.rb
CHANGED
@@ -2,7 +2,6 @@ require "rumm"
|
|
2
2
|
require "vcr"
|
3
3
|
require "aruba/api"
|
4
4
|
require "rspec-given"
|
5
|
-
require "netrc"
|
6
5
|
$: << File.expand_path("../../app/providers", __FILE__)
|
7
6
|
|
8
7
|
module Rumm::SpecHelper
|
@@ -43,20 +42,29 @@ RSpec.configure do |config|
|
|
43
42
|
end
|
44
43
|
end
|
45
44
|
|
46
|
-
shared_context "
|
45
|
+
shared_context "rummrc" do
|
47
46
|
before do
|
48
|
-
if
|
49
|
-
|
47
|
+
if File.exists? "#{File.expand_path('~')}/.rummrc"
|
48
|
+
FileUtils.copy_file "#{File.expand_path('~')}/.rummrc", home.join('.rummrc')
|
50
49
|
else
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
f.chmod 0600
|
55
|
-
f.puts "machine api.rackspace.com"
|
56
|
-
f.puts " login #{login}"
|
57
|
-
f.puts " password #{api_token}"
|
50
|
+
File.open(home.join('.rummrc'), "w") do |f|
|
51
|
+
f.puts "{\"environments\":{\"default\":{\"region\":\"ord\",\"username\":\"<rackspace_username>\",\"api_key\":\"<rackspace_api_key>\"}}}"
|
52
|
+
end
|
58
53
|
end
|
59
54
|
end
|
55
|
+
include_context "set home"
|
56
|
+
end
|
57
|
+
|
58
|
+
shared_context "set fake home" do
|
59
|
+
Given(:home) {Pathname(set_env "HOME", "#{File.expand_path(current_dir)}/tmp")}
|
60
|
+
|
61
|
+
after do
|
62
|
+
restore_env
|
63
|
+
end
|
64
|
+
|
65
|
+
end
|
66
|
+
shared_context "set home" do
|
67
|
+
|
60
68
|
Given(:home) {Pathname(set_env "HOME", File.expand_path(current_dir))}
|
61
69
|
|
62
70
|
after do
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rumm
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.24
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Charles Lowell
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-
|
11
|
+
date: 2013-10-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: mvcli
|
@@ -30,28 +30,14 @@ dependencies:
|
|
30
30
|
requirements:
|
31
31
|
- - ~>
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 1.
|
33
|
+
version: 1.16.0
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - ~>
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: 1.
|
41
|
-
- !ruby/object:Gem::Dependency
|
42
|
-
name: netrc
|
43
|
-
requirement: !ruby/object:Gem::Requirement
|
44
|
-
requirements:
|
45
|
-
- - ! '>='
|
46
|
-
- !ruby/object:Gem::Version
|
47
|
-
version: '0'
|
48
|
-
type: :runtime
|
49
|
-
prerelease: false
|
50
|
-
version_requirements: !ruby/object:Gem::Requirement
|
51
|
-
requirements:
|
52
|
-
- - ! '>='
|
53
|
-
- !ruby/object:Gem::Version
|
54
|
-
version: '0'
|
40
|
+
version: 1.16.0
|
55
41
|
description: Lift heavy things inside your Rackspace
|
56
42
|
email:
|
57
43
|
- cowboyd@thefrontside.net
|
@@ -90,6 +76,7 @@ files:
|
|
90
76
|
- app/forms/loadbalancers/create_form.rb
|
91
77
|
- app/forms/nodes/create_form.rb
|
92
78
|
- app/forms/servers/create_form.rb
|
79
|
+
- app/forms/servers/update_form.rb
|
93
80
|
- app/forms/users/create_form.rb
|
94
81
|
- app/forms/volumes/create_form.rb
|
95
82
|
- app/help/commands.txt
|
@@ -140,10 +127,12 @@ files:
|
|
140
127
|
- app/help/show_volume.txt
|
141
128
|
- app/help/show_volumes.txt
|
142
129
|
- app/help/ssh.txt
|
130
|
+
- app/help/update_server.txt
|
143
131
|
- app/models/help.rb
|
144
132
|
- app/models/loadbalancers/node.rb
|
145
133
|
- app/providers/access_token_provider.rb
|
146
134
|
- app/providers/compute_provider.rb
|
135
|
+
- app/providers/configuration_provider.rb
|
147
136
|
- app/providers/console_provider.rb
|
148
137
|
- app/providers/containers_provider.rb
|
149
138
|
- app/providers/credentials_provider.rb
|
@@ -151,12 +140,13 @@ files:
|
|
151
140
|
- app/providers/instance_provider.rb
|
152
141
|
- app/providers/instances_provider.rb
|
153
142
|
- app/providers/loadbalancers_provider.rb
|
143
|
+
- app/providers/login_information_provider.rb
|
154
144
|
- app/providers/naming/adj.txt
|
155
145
|
- app/providers/naming/dictionary.pstore
|
156
146
|
- app/providers/naming/nouns.txt
|
157
147
|
- app/providers/naming_provider.rb
|
158
148
|
- app/providers/nodes_provider.rb
|
159
|
-
- app/providers/
|
149
|
+
- app/providers/users_provider.rb
|
160
150
|
- app/providers/volumes_provider.rb
|
161
151
|
- app/routes.rb
|
162
152
|
- app/views/attachments/attach.txt.erb
|
@@ -197,17 +187,22 @@ files:
|
|
197
187
|
- app/views/servers/destroy.txt.erb
|
198
188
|
- app/views/servers/index.txt.erb
|
199
189
|
- app/views/servers/show.txt.erb
|
190
|
+
- app/views/servers/update.txt.erb
|
200
191
|
- app/views/users/create.txt.erb
|
192
|
+
- app/views/users/destroy.txt.erb
|
201
193
|
- app/views/users/index.txt.erb
|
194
|
+
- app/views/users/show.txt.erb
|
202
195
|
- app/views/volumes/create.txt.erb
|
203
196
|
- app/views/volumes/destroy.txt.erb
|
204
197
|
- app/views/volumes/index.txt.erb
|
205
198
|
- app/views/volumes/show.txt.erb
|
206
199
|
- bin/rumm
|
207
200
|
- lib/rumm.rb
|
201
|
+
- lib/rumm/exceptions.rb
|
208
202
|
- lib/rumm/version.rb
|
209
203
|
- rumm.gemspec
|
210
204
|
- spec/features/attachments_spec.rb
|
205
|
+
- spec/features/configuration_spec.rb
|
211
206
|
- spec/features/containers_spec.rb
|
212
207
|
- spec/features/databases_spec.rb
|
213
208
|
- spec/features/dbinstances_spec.rb
|
@@ -217,6 +212,7 @@ files:
|
|
217
212
|
- spec/features/login_spec.rb
|
218
213
|
- spec/features/nodes_spec.rb
|
219
214
|
- spec/features/servers_spec.rb
|
215
|
+
- spec/features/users_spec.rb
|
220
216
|
- spec/features/volumes_spec.rb
|
221
217
|
- spec/fixtures/cassettes/attachments/create.yml
|
222
218
|
- spec/fixtures/cassettes/attachments/destroy.yml
|
@@ -253,6 +249,10 @@ files:
|
|
253
249
|
- spec/fixtures/cassettes/servers/destroy.yml
|
254
250
|
- spec/fixtures/cassettes/servers/show-all.yml
|
255
251
|
- spec/fixtures/cassettes/servers/show.yml
|
252
|
+
- spec/fixtures/cassettes/users/create.yml
|
253
|
+
- spec/fixtures/cassettes/users/destroy.yml
|
254
|
+
- spec/fixtures/cassettes/users/show-all.yml
|
255
|
+
- spec/fixtures/cassettes/users/show.yml
|
256
256
|
- spec/fixtures/cassettes/volumes/create.yml
|
257
257
|
- spec/fixtures/cassettes/volumes/destroy.yml
|
258
258
|
- spec/fixtures/cassettes/volumes/show-all.yml
|
@@ -286,6 +286,7 @@ specification_version: 4
|
|
286
286
|
summary: CLI and API for managing Rackspace infrastructure
|
287
287
|
test_files:
|
288
288
|
- spec/features/attachments_spec.rb
|
289
|
+
- spec/features/configuration_spec.rb
|
289
290
|
- spec/features/containers_spec.rb
|
290
291
|
- spec/features/databases_spec.rb
|
291
292
|
- spec/features/dbinstances_spec.rb
|
@@ -295,6 +296,7 @@ test_files:
|
|
295
296
|
- spec/features/login_spec.rb
|
296
297
|
- spec/features/nodes_spec.rb
|
297
298
|
- spec/features/servers_spec.rb
|
299
|
+
- spec/features/users_spec.rb
|
298
300
|
- spec/features/volumes_spec.rb
|
299
301
|
- spec/fixtures/cassettes/attachments/create.yml
|
300
302
|
- spec/fixtures/cassettes/attachments/destroy.yml
|
@@ -331,6 +333,10 @@ test_files:
|
|
331
333
|
- spec/fixtures/cassettes/servers/destroy.yml
|
332
334
|
- spec/fixtures/cassettes/servers/show-all.yml
|
333
335
|
- spec/fixtures/cassettes/servers/show.yml
|
336
|
+
- spec/fixtures/cassettes/users/create.yml
|
337
|
+
- spec/fixtures/cassettes/users/destroy.yml
|
338
|
+
- spec/fixtures/cassettes/users/show-all.yml
|
339
|
+
- spec/fixtures/cassettes/users/show.yml
|
334
340
|
- spec/fixtures/cassettes/volumes/create.yml
|
335
341
|
- spec/fixtures/cassettes/volumes/destroy.yml
|
336
342
|
- spec/fixtures/cassettes/volumes/show-all.yml
|