shelly 0.4.15 → 0.4.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,15 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: c88ab917360eccc4baf23caa8dce7f2581801ad9
4
- data.tar.gz: dedbab3b1040b164fd053b92f768d937d31d06d3
2
+ !binary "U0hBMQ==":
3
+ metadata.gz: !binary |-
4
+ NjMwYjRkZDhhYjI0ZjI1NTFmNzY1YzkwZjU2YTI4NGUwYWY4NTliOQ==
5
+ data.tar.gz: !binary |-
6
+ YzdkNDUwYmRlNWYyYzBkOTk4NjBjNGFhY2MyOTllZjYzMzU3NzZlMQ==
5
7
  SHA512:
6
- metadata.gz: 650278b4740ac48fe84f5e1373ea11f7af2f2097ab71f4065277c6767a799a75191cb4a3a29911698f199b00e31c7047c54975726d03bdef130928ee765d6316
7
- data.tar.gz: 9c63c6e8f7acfe50c1fa8fb67310f06b19dddf96a667bacc21eafd8fc15a47c480443cb05049f32ee387c4f921613ce739d2d1133db490e17690388ad230a70f
8
+ metadata.gz: !binary |-
9
+ ZjA4ZmRmNTE4NjQ1NjA0NGJkZGVmMDEyZjNlMWM0MzVlNDFkYWU1NGFjOGVj
10
+ NWFmMTZmYjU4YzJkOTQ1YWU3OGI4YTA1NGE1MGU5NmY5ODM1NmY3YTBmMjc3
11
+ NjY1ZDM3NjI1MTExNDUwMDlmYzg0YTk1MGEyZjVjNzNlODJmY2E=
12
+ data.tar.gz: !binary |-
13
+ ODc0YTAyZWRlZjgwMGIwMzI1ZjJjYTFmMjFmOGZmMmJmOWNkMWI2MDc0Mjk4
14
+ ZjJmMDU3NGI5ZmMxODcxNWI5MzM4NTc4MWQ0OGFjNTk0M2YwNTNmYmY3ZGYx
15
+ ZTI0ZGExMzg4ZGZhNjZiNTUxNGM3NDJkNWU0Y2QxODExN2U5Y2E=
data/CHANGELOG.md CHANGED
@@ -1,3 +1,7 @@
1
+ ## 0.4.16 / 2013-11-26
2
+
3
+ * [improvement] Validate kind when importing database backup
4
+
1
5
  ## 0.4.15 / 2013-11-19
2
6
 
3
7
  * [bugfix] Deleting SSH key works even after changing user email at the end
@@ -112,6 +112,9 @@ module Shelly
112
112
  unless ::File.exist?(filename)
113
113
  say_error "File #{filename} doesn't exist"
114
114
  end
115
+ unless ['postgresql', 'mongodb'].include?(kind)
116
+ say_error "Kind is invalid. You can import backup of: postgresql, mongodb"
117
+ end
115
118
  if options[:reset]
116
119
  say_warning "You are about to reset database #{kind} for cloud #{app}"
117
120
  say_warning "Next, database will be restored to state from file #{filename}"
@@ -1,3 +1,3 @@
1
1
  module Shelly
2
- VERSION = "0.4.15"
2
+ VERSION = "0.4.16"
3
3
  end
@@ -298,7 +298,7 @@ describe Shelly::CLI::Backup do
298
298
  :server => "app1")
299
299
  $stdout.should_receive(:puts).with(green "Importing database")
300
300
  fake_stdin(["yes"]) do
301
- invoke(@backup, :import, "PostgreSQL", "dump.sql")
301
+ invoke(@backup, :import, "postgresql", "dump.sql")
302
302
  end
303
303
  end
304
304
 
@@ -327,12 +327,23 @@ describe Shelly::CLI::Backup do
327
327
  end
328
328
  end
329
329
 
330
+ context "file doesn't exist" do
331
+ it "should exit with error" do
332
+ $stdout.should_receive(:puts).with(red "Kind is invalid. You can" \
333
+ " import backup of: postgresql, mongodb")
334
+ lambda {
335
+ invoke(@backup, :import, "wrong_kind", "dump.sql")
336
+ }.should raise_error(SystemExit)
337
+ end
338
+ end
339
+
330
340
  context "with --reset option" do
331
341
  it "should reset database first" do
332
342
  @app.unstub(:import_database)
333
343
  @backup.options = {:cloud => "foo-staging", :reset => true}
334
344
  @app.should_receive(:reset_database).with("postgresql")
335
- @app.should_receive(:ssh_with_db_server).with(:command => "import_database postgresql dump.sql-1370879705.tar.bz2",
345
+ @app.should_receive(:ssh_with_db_server).with(
346
+ :command => "import_database postgresql dump.sql-1370879705.tar.bz2",
336
347
  :server => "app1")
337
348
  $stdout.should_receive(:puts).with(green "Importing database")
338
349
  fake_stdin(["yes"]) do
metadata CHANGED
@@ -1,209 +1,209 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: shelly
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.15
4
+ version: 0.4.16
5
5
  platform: ruby
6
6
  authors:
7
7
  - Shelly Cloud team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-11-19 00:00:00.000000000 Z
11
+ date: 2013-11-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: rspec
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - ~>
18
- - !ruby/object:Gem::Version
19
- version: 2.11.0
20
14
  type: :development
21
15
  prerelease: false
16
+ name: rspec
22
17
  version_requirements: !ruby/object:Gem::Requirement
23
18
  requirements:
24
19
  - - ~>
25
20
  - !ruby/object:Gem::Version
26
21
  version: 2.11.0
27
- - !ruby/object:Gem::Dependency
28
- name: rake
29
22
  requirement: !ruby/object:Gem::Requirement
30
23
  requirements:
31
- - - '>='
24
+ - - ~>
32
25
  - !ruby/object:Gem::Version
33
- version: '0'
26
+ version: 2.11.0
27
+ - !ruby/object:Gem::Dependency
34
28
  type: :development
35
29
  prerelease: false
30
+ name: rake
36
31
  version_requirements: !ruby/object:Gem::Requirement
37
32
  requirements:
38
- - - '>='
33
+ - - ! '>='
39
34
  - !ruby/object:Gem::Version
40
35
  version: '0'
41
- - !ruby/object:Gem::Dependency
42
- name: simplecov
43
36
  requirement: !ruby/object:Gem::Requirement
44
37
  requirements:
45
- - - '>='
38
+ - - ! '>='
46
39
  - !ruby/object:Gem::Version
47
40
  version: '0'
41
+ - !ruby/object:Gem::Dependency
48
42
  type: :development
49
43
  prerelease: false
44
+ name: simplecov
50
45
  version_requirements: !ruby/object:Gem::Requirement
51
46
  requirements:
52
- - - '>='
47
+ - - ! '>='
53
48
  - !ruby/object:Gem::Version
54
49
  version: '0'
55
- - !ruby/object:Gem::Dependency
56
- name: ruby_gntp
57
50
  requirement: !ruby/object:Gem::Requirement
58
51
  requirements:
59
- - - '>='
52
+ - - ! '>='
60
53
  - !ruby/object:Gem::Version
61
54
  version: '0'
55
+ - !ruby/object:Gem::Dependency
62
56
  type: :development
63
57
  prerelease: false
58
+ name: ruby_gntp
64
59
  version_requirements: !ruby/object:Gem::Requirement
65
60
  requirements:
66
- - - '>='
61
+ - - ! '>='
67
62
  - !ruby/object:Gem::Version
68
63
  version: '0'
69
- - !ruby/object:Gem::Dependency
70
- name: rb-fsevent
71
64
  requirement: !ruby/object:Gem::Requirement
72
65
  requirements:
73
- - - '>='
66
+ - - ! '>='
74
67
  - !ruby/object:Gem::Version
75
68
  version: '0'
69
+ - !ruby/object:Gem::Dependency
76
70
  type: :development
77
71
  prerelease: false
72
+ name: rb-fsevent
78
73
  version_requirements: !ruby/object:Gem::Requirement
79
74
  requirements:
80
- - - '>='
75
+ - - ! '>='
81
76
  - !ruby/object:Gem::Version
82
77
  version: '0'
83
- - !ruby/object:Gem::Dependency
84
- name: fakefs
85
78
  requirement: !ruby/object:Gem::Requirement
86
79
  requirements:
87
- - - '>='
80
+ - - ! '>='
88
81
  - !ruby/object:Gem::Version
89
82
  version: '0'
83
+ - !ruby/object:Gem::Dependency
90
84
  type: :development
91
85
  prerelease: false
86
+ name: fakefs
92
87
  version_requirements: !ruby/object:Gem::Requirement
93
88
  requirements:
94
- - - '>='
89
+ - - ! '>='
95
90
  - !ruby/object:Gem::Version
96
91
  version: '0'
97
- - !ruby/object:Gem::Dependency
98
- name: fakeweb
99
92
  requirement: !ruby/object:Gem::Requirement
100
93
  requirements:
101
- - - '>='
94
+ - - ! '>='
102
95
  - !ruby/object:Gem::Version
103
96
  version: '0'
97
+ - !ruby/object:Gem::Dependency
104
98
  type: :development
105
99
  prerelease: false
100
+ name: fakeweb
106
101
  version_requirements: !ruby/object:Gem::Requirement
107
102
  requirements:
108
- - - '>='
103
+ - - ! '>='
109
104
  - !ruby/object:Gem::Version
110
105
  version: '0'
111
- - !ruby/object:Gem::Dependency
112
- name: wijet-thor
113
106
  requirement: !ruby/object:Gem::Requirement
114
107
  requirements:
115
- - - ~>
108
+ - - ! '>='
116
109
  - !ruby/object:Gem::Version
117
- version: 0.14.10
110
+ version: '0'
111
+ - !ruby/object:Gem::Dependency
118
112
  type: :runtime
119
113
  prerelease: false
114
+ name: wijet-thor
120
115
  version_requirements: !ruby/object:Gem::Requirement
121
116
  requirements:
122
117
  - - ~>
123
118
  - !ruby/object:Gem::Version
124
119
  version: 0.14.10
125
- - !ruby/object:Gem::Dependency
126
- name: rest-client
127
120
  requirement: !ruby/object:Gem::Requirement
128
121
  requirements:
129
- - - '>='
122
+ - - ~>
130
123
  - !ruby/object:Gem::Version
131
- version: '0'
124
+ version: 0.14.10
125
+ - !ruby/object:Gem::Dependency
132
126
  type: :runtime
133
127
  prerelease: false
128
+ name: rest-client
134
129
  version_requirements: !ruby/object:Gem::Requirement
135
130
  requirements:
136
- - - '>='
131
+ - - ! '>='
137
132
  - !ruby/object:Gem::Version
138
133
  version: '0'
139
- - !ruby/object:Gem::Dependency
140
- name: mime-types
141
134
  requirement: !ruby/object:Gem::Requirement
142
135
  requirements:
143
- - - ~>
136
+ - - ! '>='
144
137
  - !ruby/object:Gem::Version
145
- version: '1.16'
138
+ version: '0'
139
+ - !ruby/object:Gem::Dependency
146
140
  type: :runtime
147
141
  prerelease: false
142
+ name: mime-types
148
143
  version_requirements: !ruby/object:Gem::Requirement
149
144
  requirements:
150
145
  - - ~>
151
146
  - !ruby/object:Gem::Version
152
147
  version: '1.16'
153
- - !ruby/object:Gem::Dependency
154
- name: json
155
148
  requirement: !ruby/object:Gem::Requirement
156
149
  requirements:
157
- - - '>='
150
+ - - ~>
158
151
  - !ruby/object:Gem::Version
159
- version: '0'
152
+ version: '1.16'
153
+ - !ruby/object:Gem::Dependency
160
154
  type: :runtime
161
155
  prerelease: false
156
+ name: json
162
157
  version_requirements: !ruby/object:Gem::Requirement
163
158
  requirements:
164
- - - '>='
159
+ - - ! '>='
165
160
  - !ruby/object:Gem::Version
166
161
  version: '0'
167
- - !ruby/object:Gem::Dependency
168
- name: progressbar
169
162
  requirement: !ruby/object:Gem::Requirement
170
163
  requirements:
171
- - - '>='
164
+ - - ! '>='
172
165
  - !ruby/object:Gem::Version
173
166
  version: '0'
167
+ - !ruby/object:Gem::Dependency
174
168
  type: :runtime
175
169
  prerelease: false
170
+ name: progressbar
176
171
  version_requirements: !ruby/object:Gem::Requirement
177
172
  requirements:
178
- - - '>='
173
+ - - ! '>='
179
174
  - !ruby/object:Gem::Version
180
175
  version: '0'
181
- - !ruby/object:Gem::Dependency
182
- name: launchy
183
176
  requirement: !ruby/object:Gem::Requirement
184
177
  requirements:
185
- - - '>='
178
+ - - ! '>='
186
179
  - !ruby/object:Gem::Version
187
180
  version: '0'
181
+ - !ruby/object:Gem::Dependency
188
182
  type: :runtime
189
183
  prerelease: false
184
+ name: launchy
190
185
  version_requirements: !ruby/object:Gem::Requirement
191
186
  requirements:
192
- - - '>='
187
+ - - ! '>='
193
188
  - !ruby/object:Gem::Version
194
189
  version: '0'
195
- - !ruby/object:Gem::Dependency
196
- name: netrc
197
190
  requirement: !ruby/object:Gem::Requirement
198
191
  requirements:
199
- - - '>='
192
+ - - ! '>='
200
193
  - !ruby/object:Gem::Version
201
194
  version: '0'
195
+ - !ruby/object:Gem::Dependency
202
196
  type: :runtime
203
197
  prerelease: false
198
+ name: netrc
204
199
  version_requirements: !ruby/object:Gem::Requirement
205
200
  requirements:
206
- - - '>='
201
+ - - ! '>='
202
+ - !ruby/object:Gem::Version
203
+ version: '0'
204
+ requirement: !ruby/object:Gem::Requirement
205
+ requirements:
206
+ - - ! '>='
207
207
  - !ruby/object:Gem::Version
208
208
  version: '0'
209
209
  description: Tool for managing applications and clouds at shellycloud.com
@@ -310,17 +310,17 @@ require_paths:
310
310
  - lib
311
311
  required_ruby_version: !ruby/object:Gem::Requirement
312
312
  requirements:
313
- - - '>='
313
+ - - ! '>='
314
314
  - !ruby/object:Gem::Version
315
315
  version: '0'
316
316
  required_rubygems_version: !ruby/object:Gem::Requirement
317
317
  requirements:
318
- - - '>='
318
+ - - ! '>='
319
319
  - !ruby/object:Gem::Version
320
320
  version: '0'
321
321
  requirements: []
322
322
  rubyforge_project: shelly
323
- rubygems_version: 2.0.3
323
+ rubygems_version: 2.1.5
324
324
  signing_key:
325
325
  specification_version: 4
326
326
  summary: Shelly Cloud command line tool