rumm 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (88) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +17 -0
  3. data/Gemfile +11 -0
  4. data/LICENSE.txt +22 -0
  5. data/README.md +46 -0
  6. data/Rakefile +6 -0
  7. data/app.rb +7 -0
  8. data/app/controllers/attachments_controller.rb +39 -0
  9. data/app/controllers/authentication_controller.rb +47 -0
  10. data/app/controllers/containers_controller.rb +32 -0
  11. data/app/controllers/databases_controller.rb +43 -0
  12. data/app/controllers/files_controller.rb +41 -0
  13. data/app/controllers/images_controller.rb +7 -0
  14. data/app/controllers/instances_controller.rb +34 -0
  15. data/app/controllers/loadbalancers_controller.rb +32 -0
  16. data/app/controllers/nodes_controller.rb +45 -0
  17. data/app/controllers/servers_controller.rb +52 -0
  18. data/app/controllers/volumes_controller.rb +35 -0
  19. data/app/forms/loadbalancers/create_form.rb +35 -0
  20. data/app/models/loadbalancers/node.rb +10 -0
  21. data/app/models/node.rb +0 -0
  22. data/app/providers/compute_provider.rb +15 -0
  23. data/app/providers/console_provider.rb +5 -0
  24. data/app/providers/containers_provider.rb +15 -0
  25. data/app/providers/credentials_provider.rb +12 -0
  26. data/app/providers/databases_provider.rb +13 -0
  27. data/app/providers/instance_provider.rb +8 -0
  28. data/app/providers/instances_provider.rb +13 -0
  29. data/app/providers/loadbalancers_provider.rb +13 -0
  30. data/app/providers/naming/adj.txt +20574 -0
  31. data/app/providers/naming/nouns.txt +50277 -0
  32. data/app/providers/naming_provider.rb +106 -0
  33. data/app/providers/nodes_provider.rb +13 -0
  34. data/app/providers/user_provider.rb +23 -0
  35. data/app/providers/volumes_provider.rb +14 -0
  36. data/app/routes.rb +59 -0
  37. data/app/views/attachments/attach.txt.erb +3 -0
  38. data/app/views/attachments/detach.txt.erb +3 -0
  39. data/app/views/attachments/index.txt.erb +7 -0
  40. data/app/views/attachments/show.txt.erb +5 -0
  41. data/app/views/authentication/login.txt.erb +2 -0
  42. data/app/views/authentication/logout.txt.erb +1 -0
  43. data/app/views/containers/create.txt.erb +5 -0
  44. data/app/views/containers/destroy.txt.erb +1 -0
  45. data/app/views/containers/index.txt.erb +7 -0
  46. data/app/views/containers/show.txt.erb +5 -0
  47. data/app/views/databases/create.txt.erb +1 -0
  48. data/app/views/databases/destroy.txt.erb +1 -0
  49. data/app/views/databases/index.txt.erb +8 -0
  50. data/app/views/databases/show.txt.erb +1 -0
  51. data/app/views/files/create.txt.erb +5 -0
  52. data/app/views/files/destroy.txt.erb +1 -0
  53. data/app/views/files/download.txt.erb +3 -0
  54. data/app/views/files/index.txt.erb +7 -0
  55. data/app/views/files/show.txt.erb +5 -0
  56. data/app/views/images/index.txt.erb +3 -0
  57. data/app/views/instances/create.txt.erb +2 -0
  58. data/app/views/instances/destroy.txt.erb +1 -0
  59. data/app/views/instances/index.txt.erb +8 -0
  60. data/app/views/instances/show.txt.erb +1 -0
  61. data/app/views/loadbalancers/create.txt.erb +1 -0
  62. data/app/views/loadbalancers/destroy.txt.erb +1 -0
  63. data/app/views/loadbalancers/index.txt.erb +8 -0
  64. data/app/views/loadbalancers/show.txt.erb +4 -0
  65. data/app/views/nodes/create.txt.erb +5 -0
  66. data/app/views/nodes/destroy.txt.erb +1 -0
  67. data/app/views/nodes/index.txt.erb +4 -0
  68. data/app/views/nodes/show.txt.erb +5 -0
  69. data/app/views/servers/create.txt.erb +2 -0
  70. data/app/views/servers/destroy.txt.erb +1 -0
  71. data/app/views/servers/index.txt.erb +8 -0
  72. data/app/views/servers/show.txt.erb +5 -0
  73. data/app/views/volumes/create.txt.erb +5 -0
  74. data/app/views/volumes/destroy.txt.erb +1 -0
  75. data/app/views/volumes/index.txt.erb +7 -0
  76. data/app/views/volumes/show.txt.erb +5 -0
  77. data/bin/rumm +5 -0
  78. data/lib/rumm.rb +5 -0
  79. data/lib/rumm/version.rb +3 -0
  80. data/rumm.gemspec +24 -0
  81. data/spec/features/login_spec.rb +29 -0
  82. data/spec/features/servers_spec.rb +39 -0
  83. data/spec/fixtures/cassettes/create-server.yml +144 -0
  84. data/spec/fixtures/cassettes/destroy-server.yml +159 -0
  85. data/spec/fixtures/cassettes/show-server.yml +214 -0
  86. data/spec/fixtures/cassettes/show-servers.yml +141 -0
  87. data/spec/spec_helper.rb +51 -0
  88. metadata +203 -0
@@ -0,0 +1,141 @@
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-login>","apiKey":"<rackspace-api-token>"}}}'
9
+ headers:
10
+ User-Agent:
11
+ - fog/1.11.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
+ - Sat, 25 May 2013 01:55:06 GMT
26
+ Content-Type:
27
+ - application/json
28
+ Transfer-Encoding:
29
+ - chunked
30
+ Connection:
31
+ - keep-alive
32
+ response-source:
33
+ - cloud-auth
34
+ vary:
35
+ - Accept, Accept-Encoding, X-Auth-Token
36
+ VIA:
37
+ - 1.0 Repose (Repose/2.3.5)
38
+ Front-End-Https:
39
+ - 'on'
40
+ body:
41
+ encoding: UTF-8
42
+ string: |
43
+ {"access":{"token":{"id":"116366a2-74c0-4a43-9d06-82b9f0f0dbf0","expires":"2013-05-25T17:00:57.000-05:00","tenant":{"id":"829771","name":"829771"}},"serviceCatalog":[{"endpoints":[{"region":"DFW","tenantId":"MossoCloudFS_51a1ae47-05df-400f-91cc-0a481d4ab24d","publicURL":"https:\/\/cdn1.clouddrive.com\/v1\/MossoCloudFS_51a1ae47-05df-400f-91cc-0a481d4ab24d"},{"region":"ORD","tenantId":"MossoCloudFS_51a1ae47-05df-400f-91cc-0a481d4ab24d","publicURL":"https:\/\/cdn2.clouddrive.com\/v1\/MossoCloudFS_51a1ae47-05df-400f-91cc-0a481d4ab24d"}],"name":"cloudFilesCDN","type":"rax:object-cdn"},{"endpoints":[{"tenantId":"829771","publicURL":"https:\/\/monitoring.api.rackspacecloud.com\/v1.0\/829771"}],"name":"cloudMonitoring","type":"rax:monitor"},{"endpoints":[{"region":"DFW","tenantId":"829771","publicURL":"https:\/\/dfw.servers.api.rackspacecloud.com\/v2\/829771","versionInfo":"https:\/\/dfw.servers.api.rackspacecloud.com\/v2","versionList":"https:\/\/dfw.servers.api.rackspacecloud.com\/","versionId":"2"},{"region":"ORD","tenantId":"829771","publicURL":"https:\/\/ord.servers.api.rackspacecloud.com\/v2\/829771","versionInfo":"https:\/\/ord.servers.api.rackspacecloud.com\/v2","versionList":"https:\/\/ord.servers.api.rackspacecloud.com\/","versionId":"2"}],"name":"cloudServersOpenStack","type":"compute"},{"endpoints":[{"tenantId":"829771","publicURL":"https:\/\/backup.api.rackspacecloud.com\/v1.0\/829771"}],"name":"cloudBackup","type":"rax:backup"},{"endpoints":[{"region":"DFW","tenantId":"829771","publicURL":"https:\/\/dfw.databases.api.rackspacecloud.com\/v1.0\/829771"},{"region":"ORD","tenantId":"829771","publicURL":"https:\/\/ord.databases.api.rackspacecloud.com\/v1.0\/829771"}],"name":"cloudDatabases","type":"rax:database"},{"endpoints":[{"region":"ORD","tenantId":"829771","publicURL":"https:\/\/ord.loadbalancers.api.rackspacecloud.com\/v1.0\/829771"},{"region":"DFW","tenantId":"829771","publicURL":"https:\/\/dfw.loadbalancers.api.rackspacecloud.com\/v1.0\/829771"}],"name":"cloudLoadBalancers","type":"rax:load-balancer"},{"endpoints":[{"tenantId":"829771","publicURL":"https:\/\/dns.api.rackspacecloud.com\/v1.0\/829771"}],"name":"cloudDNS","type":"rax:dns"},{"endpoints":[{"region":"DFW","tenantId":"829771","publicURL":"https:\/\/dfw.blockstorage.api.rackspacecloud.com\/v1\/829771"},{"region":"ORD","tenantId":"829771","publicURL":"https:\/\/ord.blockstorage.api.rackspacecloud.com\/v1\/829771"}],"name":"cloudBlockStorage","type":"volume"},{"endpoints":[{"region":"DFW","tenantId":"MossoCloudFS_51a1ae47-05df-400f-91cc-0a481d4ab24d","publicURL":"https:\/\/storage101.dfw1.clouddrive.com\/v1\/MossoCloudFS_51a1ae47-05df-400f-91cc-0a481d4ab24d","internalURL":"https:\/\/snet-storage101.dfw1.clouddrive.com\/v1\/MossoCloudFS_51a1ae47-05df-400f-91cc-0a481d4ab24d"},{"region":"ORD","tenantId":"MossoCloudFS_51a1ae47-05df-400f-91cc-0a481d4ab24d","publicURL":"https:\/\/storage101.ord1.clouddrive.com\/v1\/MossoCloudFS_51a1ae47-05df-400f-91cc-0a481d4ab24d","internalURL":"https:\/\/snet-storage101.ord1.clouddrive.com\/v1\/MossoCloudFS_51a1ae47-05df-400f-91cc-0a481d4ab24d"}],"name":"cloudFiles","type":"object-store"},{"endpoints":[{"tenantId":"829771","publicURL":"https:\/\/servers.api.rackspacecloud.com\/v1.0\/829771","versionInfo":"https:\/\/servers.api.rackspacecloud.com\/v1.0","versionList":"https:\/\/servers.api.rackspacecloud.com\/","versionId":"1.0"}],"name":"cloudServers","type":"compute"}],"user":{"id":"356537","roles":[{"id":"3","description":"User Admin Role.","name":"identity:user-admin"}],"name":"<rackspace-login>","RAX-AUTH:defaultRegion":""}}}
44
+ http_version:
45
+ recorded_at: Sat, 25 May 2013 01:55:06 GMT
46
+ - request:
47
+ method: get
48
+ uri: https://dfw.servers.api.rackspacecloud.com/v2/829771/servers/detail
49
+ body:
50
+ encoding: US-ASCII
51
+ string: ''
52
+ headers:
53
+ User-Agent:
54
+ - fog/1.11.1
55
+ Content-Type:
56
+ - application/json
57
+ Accept:
58
+ - application/json
59
+ X-Auth-Token:
60
+ - 116366a2-74c0-4a43-9d06-82b9f0f0dbf0
61
+ response:
62
+ status:
63
+ code: 200
64
+ message:
65
+ headers:
66
+ Date:
67
+ - Sat, 25 May 2013 01:55:07 GMT
68
+ Content-Length:
69
+ - '15'
70
+ Content-Type:
71
+ - application/json
72
+ X-Compute-Request-Id:
73
+ - req-ee6bfa06-62e9-4e9b-b707-4848316d7826
74
+ Server:
75
+ - Jetty(8.0.y.z-SNAPSHOT)
76
+ body:
77
+ encoding: UTF-8
78
+ string: '{"servers": []}'
79
+ http_version:
80
+ recorded_at: Sat, 25 May 2013 01:55:07 GMT
81
+ - request:
82
+ method: get
83
+ uri: https://ord.loadbalancers.api.rackspacecloud.com/v1.0/829771/loadbalancers.json?
84
+ body:
85
+ encoding: US-ASCII
86
+ string: ''
87
+ headers:
88
+ User-Agent:
89
+ - fog/1.11.1
90
+ Content-Type:
91
+ - application/json
92
+ Accept:
93
+ - application/json
94
+ X-Auth-Token:
95
+ - 116366a2-74c0-4a43-9d06-82b9f0f0dbf0
96
+ response:
97
+ status:
98
+ code: 401
99
+ message:
100
+ headers:
101
+ Via:
102
+ - 1.1 Rackspace Cloud Load Balancer API v1.17.29 (Repose/2.5.0)
103
+ Content-Length:
104
+ - '0'
105
+ Server:
106
+ - Jetty(8.0.y.z-SNAPSHOT)
107
+ body:
108
+ encoding: UTF-8
109
+ string: ''
110
+ http_version:
111
+ recorded_at: Mon, 03 Jun 2013 15:44:06 GMT
112
+ - request:
113
+ method: get
114
+ uri: https://ord.servers.api.rackspacecloud.com/v2/829771/servers/detail
115
+ body:
116
+ encoding: US-ASCII
117
+ string: ''
118
+ headers:
119
+ User-Agent:
120
+ - fog/1.11.1
121
+ Content-Type:
122
+ - application/json
123
+ Accept:
124
+ - application/json
125
+ X-Auth-Token:
126
+ - 116366a2-74c0-4a43-9d06-82b9f0f0dbf0
127
+ response:
128
+ status:
129
+ code: 401
130
+ message:
131
+ headers:
132
+ Content-Length:
133
+ - '0'
134
+ Server:
135
+ - Jetty(8.0.y.z-SNAPSHOT)
136
+ body:
137
+ encoding: UTF-8
138
+ string: ''
139
+ http_version:
140
+ recorded_at: Wed, 26 Jun 2013 21:44:35 GMT
141
+ recorded_with: VCR 2.5.0
@@ -0,0 +1,51 @@
1
+ require "rumm"
2
+ require "vcr"
3
+ require "aruba/api"
4
+ require "rspec-given"
5
+
6
+ RSpec.configure do |config|
7
+ config.color_enabled = true
8
+ config.include Aruba::Api, :example_group => {
9
+ :file_path => /spec\/features/
10
+ }
11
+ config.before(:each) do
12
+ @__aruba_original_paths = (ENV['PATH'] || '').split(File::PATH_SEPARATOR)
13
+ ENV['PATH'] = ([File.expand_path('bin')] + @__aruba_original_paths).join(File::PATH_SEPARATOR)
14
+ end
15
+
16
+ config.after(:each) do
17
+ ENV['PATH'] = @__aruba_original_paths.join(File::PATH_SEPARATOR)
18
+ end
19
+ end
20
+
21
+ VCR.configure do |c|
22
+ c.default_cassette_options = { :record => :new_episodes }
23
+ c.hook_into :excon
24
+ # c.debug_logger = $stderr
25
+
26
+ c.cassette_library_dir = 'spec/fixtures/cassettes'
27
+ c.filter_sensitive_data("<rackspace-login>") do
28
+ ENV['RACKSPACE_LOGIN']
29
+ end
30
+ c.filter_sensitive_data("<rackspace-api-token>") do
31
+ ENV['RACKSPACE_API_TOKEN']
32
+ end
33
+ end
34
+
35
+
36
+ require "aruba/in_process"
37
+ require_relative "../app"
38
+ Aruba.process = Aruba::InProcess
39
+ class Aruba::InProcess
40
+ attr_reader :stdin
41
+ self.main_class = Class.new do
42
+
43
+ def initialize(argv, stdin=STDIN, stdout=STDOUT, stderr=STDERR, kernel=Kernel)
44
+ @argv, @stdin, @stdout, @stderr, @kernel = argv, stdin, stdout, stderr, kernel
45
+ end
46
+
47
+ def execute!
48
+ @kernel.exit Rumm::App.main @argv, @stdin, @stdout, @stderr
49
+ end
50
+ end
51
+ end
metadata ADDED
@@ -0,0 +1,203 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: rumm
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.3
5
+ platform: ruby
6
+ authors:
7
+ - Charles Lowell
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain:
11
+ - |
12
+ -----BEGIN CERTIFICATE-----
13
+ MIIDPjCCAiagAwIBAgIBADANBgkqhkiG9w0BAQUFADBFMRAwDgYDVQQDDAdjb3di
14
+ b3lkMRwwGgYKCZImiZPyLGQBGRYMdGhlZnJvbnRzaWRlMRMwEQYKCZImiZPyLGQB
15
+ GRYDbmV0MB4XDTEzMDEzMDIxMDYwNFoXDTE0MDEzMDIxMDYwNFowRTEQMA4GA1UE
16
+ AwwHY293Ym95ZDEcMBoGCgmSJomT8ixkARkWDHRoZWZyb250c2lkZTETMBEGCgmS
17
+ JomT8ixkARkWA25ldDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAO45
18
+ CUxpETDGYXjCCy2dMg/aIrdrTqBqQW5ZrzhHxF9EkcdmWFr0z/qMz0JSpZ3pF11Z
19
+ KYaj5PaQQpjZfLPwbuiGGkuSWi+UAac//V18xo6S4lzRBjO+gpzG9f2AOzt9b+SR
20
+ Uc8UhO7QBZ5edUDxMxw9QstD+U0YBAlzsPJbHuUOqdtxXmNQCds3ZnqTgZaIpdUy
21
+ CSejtrukSmlthxFzwgMezYQhcYxmkl+Q475JUodnI6Pjc6nja/Or8Y6cEWiLgeUa
22
+ a+efcPGLDEbwJC7TGRrvk8yassMByBEJ3XueTMzeqWFd+665ptciojYo6BvIAR0N
23
+ iLwks0x567FZyS8SqTcCAwEAAaM5MDcwCQYDVR0TBAIwADAdBgNVHQ4EFgQUxVgR
24
+ 5TUqf7Hd24ICb3g4FNbM7oYwCwYDVR0PBAQDAgSwMA0GCSqGSIb3DQEBBQUAA4IB
25
+ AQDdJj+NzZhiYXA56z0wzRUA/Fcf6CYqKB+RFRlPssDEcHTor5SnwdWgQof/gNLi
26
+ Qel1Om4zO0Shcp89jxaUqtvEdYVhmyfc0vycHmemKttNBT734yMrEJtF8Hhy+Dnz
27
+ 9CzixXLvgGaRH+mf3M0+l+zIDJJr2L+39L8cyTSSRnp/srfI8aSmJKhGshudBKoC
28
+ Ty6Gi071pwoJXvdMaE/6iPy7bUzlndYdHyYuWSKaO9N47HqQ62oEnBraglw6ghoi
29
+ UgImJlChAzCoDP9zi9tdm6jAr7ttF25R9PPYr11ILb7dYe3qUzlNlM6zJx/nb31b
30
+ IhdyRVup4qLcqYSTPsm6u7VA
31
+ -----END CERTIFICATE-----
32
+ date: 2013-06-26 00:00:00.000000000 Z
33
+ dependencies:
34
+ - !ruby/object:Gem::Dependency
35
+ name: mvcli
36
+ requirement: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ~>
39
+ - !ruby/object:Gem::Version
40
+ version: 0.0.7
41
+ type: :runtime
42
+ prerelease: false
43
+ version_requirements: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ~>
46
+ - !ruby/object:Gem::Version
47
+ version: 0.0.7
48
+ - !ruby/object:Gem::Dependency
49
+ name: fog
50
+ requirement: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ~>
53
+ - !ruby/object:Gem::Version
54
+ version: 1.11.0
55
+ type: :runtime
56
+ prerelease: false
57
+ version_requirements: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ~>
60
+ - !ruby/object:Gem::Version
61
+ version: 1.11.0
62
+ - !ruby/object:Gem::Dependency
63
+ name: netrc
64
+ requirement: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - '>='
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ type: :runtime
70
+ prerelease: false
71
+ version_requirements: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - '>='
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ description: Lift heavy things inside your Rackspace
77
+ email:
78
+ - cowboyd@thefrontside.net
79
+ executables:
80
+ - rumm
81
+ extensions: []
82
+ extra_rdoc_files: []
83
+ files:
84
+ - .gitignore
85
+ - Gemfile
86
+ - LICENSE.txt
87
+ - README.md
88
+ - Rakefile
89
+ - app.rb
90
+ - app/controllers/attachments_controller.rb
91
+ - app/controllers/authentication_controller.rb
92
+ - app/controllers/containers_controller.rb
93
+ - app/controllers/databases_controller.rb
94
+ - app/controllers/files_controller.rb
95
+ - app/controllers/images_controller.rb
96
+ - app/controllers/instances_controller.rb
97
+ - app/controllers/loadbalancers_controller.rb
98
+ - app/controllers/nodes_controller.rb
99
+ - app/controllers/servers_controller.rb
100
+ - app/controllers/volumes_controller.rb
101
+ - app/forms/loadbalancers/create_form.rb
102
+ - app/models/loadbalancers/node.rb
103
+ - app/models/node.rb
104
+ - app/providers/compute_provider.rb
105
+ - app/providers/console_provider.rb
106
+ - app/providers/containers_provider.rb
107
+ - app/providers/credentials_provider.rb
108
+ - app/providers/databases_provider.rb
109
+ - app/providers/instance_provider.rb
110
+ - app/providers/instances_provider.rb
111
+ - app/providers/loadbalancers_provider.rb
112
+ - app/providers/naming/adj.txt
113
+ - app/providers/naming/nouns.txt
114
+ - app/providers/naming_provider.rb
115
+ - app/providers/nodes_provider.rb
116
+ - app/providers/user_provider.rb
117
+ - app/providers/volumes_provider.rb
118
+ - app/routes.rb
119
+ - app/views/attachments/attach.txt.erb
120
+ - app/views/attachments/detach.txt.erb
121
+ - app/views/attachments/index.txt.erb
122
+ - app/views/attachments/show.txt.erb
123
+ - app/views/authentication/login.txt.erb
124
+ - app/views/authentication/logout.txt.erb
125
+ - app/views/containers/create.txt.erb
126
+ - app/views/containers/destroy.txt.erb
127
+ - app/views/containers/index.txt.erb
128
+ - app/views/containers/show.txt.erb
129
+ - app/views/databases/create.txt.erb
130
+ - app/views/databases/destroy.txt.erb
131
+ - app/views/databases/index.txt.erb
132
+ - app/views/databases/show.txt.erb
133
+ - app/views/files/create.txt.erb
134
+ - app/views/files/destroy.txt.erb
135
+ - app/views/files/download.txt.erb
136
+ - app/views/files/index.txt.erb
137
+ - app/views/files/show.txt.erb
138
+ - app/views/images/index.txt.erb
139
+ - app/views/instances/create.txt.erb
140
+ - app/views/instances/destroy.txt.erb
141
+ - app/views/instances/index.txt.erb
142
+ - app/views/instances/show.txt.erb
143
+ - app/views/loadbalancers/create.txt.erb
144
+ - app/views/loadbalancers/destroy.txt.erb
145
+ - app/views/loadbalancers/index.txt.erb
146
+ - app/views/loadbalancers/show.txt.erb
147
+ - app/views/nodes/create.txt.erb
148
+ - app/views/nodes/destroy.txt.erb
149
+ - app/views/nodes/index.txt.erb
150
+ - app/views/nodes/show.txt.erb
151
+ - app/views/servers/create.txt.erb
152
+ - app/views/servers/destroy.txt.erb
153
+ - app/views/servers/index.txt.erb
154
+ - app/views/servers/show.txt.erb
155
+ - app/views/volumes/create.txt.erb
156
+ - app/views/volumes/destroy.txt.erb
157
+ - app/views/volumes/index.txt.erb
158
+ - app/views/volumes/show.txt.erb
159
+ - bin/rumm
160
+ - lib/rumm.rb
161
+ - lib/rumm/version.rb
162
+ - rumm.gemspec
163
+ - spec/features/login_spec.rb
164
+ - spec/features/servers_spec.rb
165
+ - spec/fixtures/cassettes/create-server.yml
166
+ - spec/fixtures/cassettes/destroy-server.yml
167
+ - spec/fixtures/cassettes/show-server.yml
168
+ - spec/fixtures/cassettes/show-servers.yml
169
+ - spec/spec_helper.rb
170
+ - tmp/aruba/.gitkeep
171
+ homepage: https://github.com/rackerlabs/rumm
172
+ licenses:
173
+ - MIT
174
+ metadata: {}
175
+ post_install_message:
176
+ rdoc_options: []
177
+ require_paths:
178
+ - lib
179
+ required_ruby_version: !ruby/object:Gem::Requirement
180
+ requirements:
181
+ - - '>='
182
+ - !ruby/object:Gem::Version
183
+ version: '0'
184
+ required_rubygems_version: !ruby/object:Gem::Requirement
185
+ requirements:
186
+ - - '>='
187
+ - !ruby/object:Gem::Version
188
+ version: '0'
189
+ requirements: []
190
+ rubyforge_project:
191
+ rubygems_version: 2.0.0
192
+ signing_key:
193
+ specification_version: 4
194
+ summary: CLI and API for managing Rackspace infrastructure
195
+ test_files:
196
+ - spec/features/login_spec.rb
197
+ - spec/features/servers_spec.rb
198
+ - spec/fixtures/cassettes/create-server.yml
199
+ - spec/fixtures/cassettes/destroy-server.yml
200
+ - spec/fixtures/cassettes/show-server.yml
201
+ - spec/fixtures/cassettes/show-servers.yml
202
+ - spec/spec_helper.rb
203
+ has_rdoc: