shelly 0.4.2 → 0.4.4
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG.md +7 -0
- data/lib/shelly/app.rb +8 -4
- data/lib/shelly/cli/main.rb +6 -11
- data/lib/shelly/helpers.rb +7 -3
- data/lib/shelly/version.rb +1 -1
- data/spec/shelly/app_spec.rb +27 -8
- data/spec/shelly/cli/main_spec.rb +90 -59
- metadata +40 -57
- checksums.yaml +0 -15
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,10 @@
|
|
1
|
+
## 0.4.4 / 2013-09-10
|
2
|
+
|
3
|
+
* [bugfix] Do not show `shelly deploys show last` instruction if last deployment was made by admin and was failed.
|
4
|
+
* [improvement] There is no longer configuration_failed state for apps.
|
5
|
+
* [bugfix] Do not create new branch after running `shelly setup`
|
6
|
+
* [bugfix] Consistent output for `shelly setup` if git remote already exists and if not
|
7
|
+
|
1
8
|
## 0.4.2 / 2013-08-29
|
2
9
|
|
3
10
|
* [improvement] Use thor version without binaries
|
data/lib/shelly/app.rb
CHANGED
@@ -52,10 +52,6 @@ module Shelly
|
|
52
52
|
system("git fetch #{remote} > /dev/null 2>&1")
|
53
53
|
end
|
54
54
|
|
55
|
-
def git_add_tracking_branch(remote = 'shelly')
|
56
|
-
system("git checkout -b #{remote} --track #{remote}/master > /dev/null 2>&1")
|
57
|
-
end
|
58
|
-
|
59
55
|
def remove_git_remote
|
60
56
|
system("git remote rm shelly > /dev/null 2>&1")
|
61
57
|
end
|
@@ -231,6 +227,10 @@ module Shelly
|
|
231
227
|
attributes["state"]
|
232
228
|
end
|
233
229
|
|
230
|
+
def maintenance?
|
231
|
+
attributes["maintenance"]
|
232
|
+
end
|
233
|
+
|
234
234
|
def state_description
|
235
235
|
attributes["state_description"]
|
236
236
|
end
|
@@ -251,6 +251,10 @@ module Shelly
|
|
251
251
|
state == 'turned_off'
|
252
252
|
end
|
253
253
|
|
254
|
+
def in_deploy_failed_state?
|
255
|
+
state == "deploy_failed"
|
256
|
+
end
|
257
|
+
|
254
258
|
def to_s
|
255
259
|
code_name
|
256
260
|
end
|
data/lib/shelly/cli/main.rb
CHANGED
@@ -100,10 +100,8 @@ module Shelly
|
|
100
100
|
desc "info", "Show basic information about cloud"
|
101
101
|
def info
|
102
102
|
app = multiple_clouds(options[:cloud], "info")
|
103
|
-
msg =
|
104
|
-
|
105
|
-
end
|
106
|
-
say "Cloud #{app}:", msg.present? ? :red : :green
|
103
|
+
msg = info_show_last_deploy_logs(app)
|
104
|
+
say "Cloud #{app}:", app.in_deploy_failed_state? ? :red : :green
|
107
105
|
print_wrapped "State: #{app.state_description}#{msg}", :ident => 2
|
108
106
|
say_new_line
|
109
107
|
print_wrapped "Deployed commit sha: #{app.git_info["deployed_commit_sha"]}", :ident => 2
|
@@ -143,7 +141,7 @@ module Shelly
|
|
143
141
|
say_error "Not starting: no source code provided", :with_exit => false
|
144
142
|
say_error "Push source code using:", :with_exit => false
|
145
143
|
say "`git push #{app} master`"
|
146
|
-
when "deploy_failed"
|
144
|
+
when "deploy_failed"
|
147
145
|
say_error "Not starting: deployment failed", :with_exit => false
|
148
146
|
say_error "Support has been notified", :with_exit => false
|
149
147
|
say_error "Check `shelly deploys show last --cloud #{app}` for reasons of failure"
|
@@ -177,14 +175,13 @@ Wait until cloud is in 'turned off' state and try again.}
|
|
177
175
|
def setup
|
178
176
|
app = multiple_clouds(options[:cloud], "setup")
|
179
177
|
say "Setting up #{app} cloud", :green
|
178
|
+
say_new_line
|
180
179
|
app.git_url = app.attributes["git_info"]["repository_url"]
|
181
180
|
if overwrite_default_remote?(app)
|
182
181
|
say "git remote add shelly #{app.git_url}"
|
183
182
|
app.add_git_remote
|
184
183
|
say "git fetch shelly"
|
185
184
|
app.git_fetch_remote
|
186
|
-
say "git checkout -b shelly --track shelly/master"
|
187
|
-
app.git_add_tracking_branch
|
188
185
|
else
|
189
186
|
loop do
|
190
187
|
remote = ask('Specify remote name:')
|
@@ -193,11 +190,9 @@ Wait until cloud is in 'turned off' state and try again.}
|
|
193
190
|
else
|
194
191
|
say "git remote add #{remote} #{app.git_url}"
|
195
192
|
app.add_git_remote(remote)
|
196
|
-
say "git fetch
|
193
|
+
say "git fetch #{remote}"
|
197
194
|
app.git_fetch_remote(remote)
|
198
|
-
|
199
|
-
app.git_add_tracking_branch(remote)
|
200
|
-
return
|
195
|
+
break
|
201
196
|
end
|
202
197
|
end
|
203
198
|
end
|
data/lib/shelly/helpers.rb
CHANGED
@@ -191,11 +191,15 @@ More info at http://git-scm.com/book/en/Git-Basics-Getting-a-Git-Repository}
|
|
191
191
|
|
192
192
|
def apps_table(apps)
|
193
193
|
apps.map do |app|
|
194
|
-
msg =
|
195
|
-
" (deployment log: `shelly deploys show last -c #{app.code_name}`)"
|
196
|
-
end
|
194
|
+
msg = info_show_last_deploy_logs(app)
|
197
195
|
[app.code_name, "| #{app.state_description}#{msg}"]
|
198
196
|
end
|
199
197
|
end
|
198
|
+
|
199
|
+
def info_show_last_deploy_logs(app)
|
200
|
+
if app.in_deploy_failed_state? && !app.maintenance?
|
201
|
+
" (deployment log: `shelly deploys show last -c #{app}`)"
|
202
|
+
end
|
203
|
+
end
|
200
204
|
end
|
201
205
|
end
|
data/lib/shelly/version.rb
CHANGED
data/spec/shelly/app_spec.rb
CHANGED
@@ -41,14 +41,6 @@ describe Shelly::App do
|
|
41
41
|
end
|
42
42
|
end
|
43
43
|
|
44
|
-
describe "git_add_tracking_branch" do
|
45
|
-
it "should try to remove existing git remote" do
|
46
|
-
@app.should_receive(:system).with("git checkout -b shelly --track shelly/master > /dev/null 2>&1")
|
47
|
-
@app.git_add_tracking_branch
|
48
|
-
end
|
49
|
-
end
|
50
|
-
|
51
|
-
|
52
44
|
describe "git_remote_exist" do
|
53
45
|
it "should return true if git remote exist" do
|
54
46
|
io = mock(:read => "origin\nshelly")
|
@@ -117,6 +109,7 @@ describe Shelly::App do
|
|
117
109
|
before do
|
118
110
|
@response = {"web_server_ip" => "192.0.2.1",
|
119
111
|
"state" => "running",
|
112
|
+
"maintenance" => false,
|
120
113
|
"organization" => {
|
121
114
|
"credit" => 23.0,
|
122
115
|
"details_present" => true
|
@@ -158,6 +151,12 @@ describe Shelly::App do
|
|
158
151
|
end
|
159
152
|
end
|
160
153
|
|
154
|
+
describe "#maintenance?" do
|
155
|
+
it "should return false" do
|
156
|
+
@app.maintenance?.should be_false
|
157
|
+
end
|
158
|
+
end
|
159
|
+
|
161
160
|
describe "#git_info" do
|
162
161
|
it "should return git info" do
|
163
162
|
@app.git_info.should == {
|
@@ -206,6 +205,26 @@ describe Shelly::App do
|
|
206
205
|
end
|
207
206
|
end
|
208
207
|
|
208
|
+
describe "#in_deploy_failed_state?" do
|
209
|
+
context "when application is in deploy_failed state" do
|
210
|
+
it "should return true" do
|
211
|
+
@client.should_receive(:app).
|
212
|
+
and_return({'state' => 'deploy_failed'})
|
213
|
+
@app.in_deploy_failed_state?.should be_true
|
214
|
+
end
|
215
|
+
end
|
216
|
+
|
217
|
+
%w(no_billing no_code turned_off turning_off deploying running).each do |state|
|
218
|
+
context "when application is in #{state} state" do
|
219
|
+
it "should return false" do
|
220
|
+
@client.should_receive(:app).
|
221
|
+
and_return({'state' => state})
|
222
|
+
@app.in_deploy_failed_state?.should be_false
|
223
|
+
end
|
224
|
+
end
|
225
|
+
end
|
226
|
+
end
|
227
|
+
|
209
228
|
describe "#deploy_logs" do
|
210
229
|
it "should list deploy_logs" do
|
211
230
|
@client.should_receive(:deploy_logs).with("foo-staging")
|
@@ -630,9 +630,15 @@ More info at http://git-scm.com/book/en/Git-Basics-Getting-a-Git-Repository\e[0m
|
|
630
630
|
before do
|
631
631
|
@client.stub(:token).and_return("abc")
|
632
632
|
@client.stub(:apps).and_return([
|
633
|
-
{"code_name" => "
|
634
|
-
|
635
|
-
|
633
|
+
{"code_name" => "foo", "state" => "running",
|
634
|
+
"state_description" => "running",
|
635
|
+
"maintenance" => false},
|
636
|
+
{"code_name" => "bar", "state" => "deploy_failed",
|
637
|
+
"state_description" => "running (last deployment failed)",
|
638
|
+
"maintenance" => false},
|
639
|
+
{"code_name" => "baz", "state" => "deploy_failed",
|
640
|
+
"state_description" => "admin maintenance in progress",
|
641
|
+
"maintenance" => true}
|
636
642
|
])
|
637
643
|
end
|
638
644
|
|
@@ -642,9 +648,9 @@ More info at http://git-scm.com/book/en/Git-Basics-Getting-a-Git-Repository\e[0m
|
|
642
648
|
|
643
649
|
it "should display user's clouds" do
|
644
650
|
$stdout.should_receive(:puts).with("\e[32mYou have following clouds available:\e[0m")
|
645
|
-
$stdout.should_receive(:puts).with(/
|
646
|
-
$stdout.should_receive(:puts).with(/
|
647
|
-
$stdout.should_receive(:puts).with(/
|
651
|
+
$stdout.should_receive(:puts).with(/foo\s+\| running/)
|
652
|
+
$stdout.should_receive(:puts).with(/bar\s+\| running \(last deployment failed\) \(deployment log: `shelly deploys show last -c bar`\)/)
|
653
|
+
$stdout.should_receive(:puts).with(/baz\s+\| admin maintenance in progress/)
|
648
654
|
invoke(@main, :list)
|
649
655
|
end
|
650
656
|
|
@@ -672,9 +678,11 @@ More info at http://git-scm.com/book/en/Git-Basics-Getting-a-Git-Repository\e[0m
|
|
672
678
|
setup_project
|
673
679
|
@client.stub(:apps).and_return([
|
674
680
|
{"code_name" => "foo-production", "state" => "running",
|
675
|
-
"state_description" => "running"
|
681
|
+
"state_description" => "running",
|
682
|
+
"maintenance" => false},
|
676
683
|
{"code_name" => "foo-staging", "state" => "no_code",
|
677
|
-
"state_description" => "turned off (no code pushed)"
|
684
|
+
"state_description" => "turned off (no code pushed)",
|
685
|
+
"maintenance" => false}])
|
678
686
|
@client.stub(:start_cloud => {"deployment" => {"id" => "DEPLOYMENT_ID"}})
|
679
687
|
@deployment = {"messages" => ["message1"],
|
680
688
|
"result" => "success", "state" => "finished"}
|
@@ -765,15 +773,13 @@ More info at http://git-scm.com/book/en/Git-Basics-Getting-a-Git-Repository\e[0m
|
|
765
773
|
lambda { invoke(@main, :start) }.should raise_error(SystemExit)
|
766
774
|
end
|
767
775
|
|
768
|
-
|
769
|
-
|
770
|
-
|
771
|
-
|
772
|
-
|
773
|
-
|
774
|
-
|
775
|
-
lambda { invoke(@main, :start) }.should raise_error(SystemExit)
|
776
|
-
end
|
776
|
+
it "should show information that cloud is in deploy_failed state" do
|
777
|
+
raise_conflict("state" => "deploy_failed")
|
778
|
+
$stdout.should_receive(:puts).with(red "Not starting: deployment failed")
|
779
|
+
$stdout.should_receive(:puts).with(red "Support has been notified")
|
780
|
+
$stdout.should_receive(:puts).
|
781
|
+
with(red "Check `shelly deploys show last --cloud foo-production` for reasons of failure")
|
782
|
+
lambda { invoke(@main, :start) }.should raise_error(SystemExit)
|
777
783
|
end
|
778
784
|
|
779
785
|
it "should show that winnie is out of resources" do
|
@@ -958,39 +964,49 @@ Wait until cloud is in 'turned off' state and try again.")
|
|
958
964
|
invoke(@main, :info)
|
959
965
|
end
|
960
966
|
|
961
|
-
context "when deploy failed
|
962
|
-
|
963
|
-
|
964
|
-
|
965
|
-
|
966
|
-
|
967
|
-
|
968
|
-
|
969
|
-
|
970
|
-
|
971
|
-
|
972
|
-
|
973
|
-
|
974
|
-
|
975
|
-
|
976
|
-
|
967
|
+
context "when deploy failed" do
|
968
|
+
context "and app is in maintenance" do
|
969
|
+
it "should display basic information without instruction to show last app logs" do
|
970
|
+
@app.stub(:attributes).
|
971
|
+
and_return(response({"state" => "deploy_failed",
|
972
|
+
"state_description" => "admin maintenance in progress",
|
973
|
+
"maintenance" => true}))
|
974
|
+
@main.should_receive(:multiple_clouds).and_return(@app)
|
975
|
+
$stdout.should_receive(:puts).with(red "Cloud foo-production:")
|
976
|
+
$stdout.should_receive(:puts).with(" State: admin maintenance in progress")
|
977
|
+
$stdout.should_receive(:puts).with(" Deployed commit sha: 52e65ed2d085eaae560cdb81b2b56a7d76")
|
978
|
+
$stdout.should_receive(:puts).with(" Deployed commit message: Commit message")
|
979
|
+
$stdout.should_receive(:puts).with(" Deployed by: megan@example.com")
|
980
|
+
$stdout.should_receive(:puts).with(" Repository URL: git@winniecloud.net:example-cloud")
|
981
|
+
$stdout.should_receive(:puts).with(" Web server IP: 22.22.22.22")
|
982
|
+
$stdout.should_receive(:puts).with(" Statistics:")
|
983
|
+
$stdout.should_receive(:puts).with(" app1:")
|
984
|
+
$stdout.should_receive(:puts).with(" Load average: 1m: 0.04, 5m: 0.15, 15m: 0.13")
|
985
|
+
$stdout.should_receive(:puts).with(" CPU: 0.8%, MEM: 74.1%, SWAP: 2.8%")
|
986
|
+
invoke(@main, :info)
|
987
|
+
end
|
977
988
|
end
|
978
989
|
|
979
|
-
|
980
|
-
|
981
|
-
|
982
|
-
|
983
|
-
|
984
|
-
|
985
|
-
|
986
|
-
|
987
|
-
|
988
|
-
|
989
|
-
|
990
|
-
|
991
|
-
|
992
|
-
|
993
|
-
|
990
|
+
context "and app is not in maintenance" do
|
991
|
+
it "should display basic information and instruction to show last app logs" do
|
992
|
+
@app.stub(:attributes).
|
993
|
+
and_return(response({"state" => "deploy_failed",
|
994
|
+
"state_description" => "running (last deployment failed)",
|
995
|
+
"maintenance" => false}))
|
996
|
+
@main.should_receive(:multiple_clouds).and_return(@app)
|
997
|
+
$stdout.should_receive(:puts).with(red "Cloud foo-production:")
|
998
|
+
$stdout.should_receive(:puts).with(" State: running (last deployment failed) (deployment log: `shelly deploys show last -c foo-production`)")
|
999
|
+
$stdout.should_receive(:puts).with(" Deployed commit sha: 52e65ed2d085eaae560cdb81b2b56a7d76")
|
1000
|
+
$stdout.should_receive(:puts).with(" Deployed commit message: Commit message")
|
1001
|
+
$stdout.should_receive(:puts).with(" Deployed by: megan@example.com")
|
1002
|
+
$stdout.should_receive(:puts).with(" Repository URL: git@winniecloud.net:example-cloud")
|
1003
|
+
$stdout.should_receive(:puts).with(" Web server IP: 22.22.22.22")
|
1004
|
+
$stdout.should_receive(:puts).with(" Statistics:")
|
1005
|
+
$stdout.should_receive(:puts).with(" app1:")
|
1006
|
+
$stdout.should_receive(:puts).with(" Load average: 1m: 0.04, 5m: 0.15, 15m: 0.13")
|
1007
|
+
$stdout.should_receive(:puts).with(" CPU: 0.8%, MEM: 74.1%, SWAP: 2.8%")
|
1008
|
+
invoke(@main, :info)
|
1009
|
+
end
|
994
1010
|
end
|
995
1011
|
|
996
1012
|
it "should not display statistics when statistics are empty" do
|
@@ -1054,11 +1070,10 @@ Wait until cloud is in 'turned off' state and try again.")
|
|
1054
1070
|
invoke(@main, :setup)
|
1055
1071
|
end
|
1056
1072
|
|
1057
|
-
it "should show info about adding remote and
|
1073
|
+
it "should show info about adding remote and fetching changes" do
|
1058
1074
|
$stdout.should_receive(:puts).with(green "Setting up foo-staging cloud")
|
1059
1075
|
$stdout.should_receive(:puts).with("git remote add shelly git_url")
|
1060
1076
|
$stdout.should_receive(:puts).with("git fetch shelly")
|
1061
|
-
$stdout.should_receive(:puts).with("git checkout -b shelly --track shelly/master")
|
1062
1077
|
$stdout.should_receive(:puts).with(green "Your application is set up.")
|
1063
1078
|
invoke(@main, :setup)
|
1064
1079
|
end
|
@@ -1073,11 +1088,6 @@ Wait until cloud is in 'turned off' state and try again.")
|
|
1073
1088
|
invoke(@main, :setup)
|
1074
1089
|
end
|
1075
1090
|
|
1076
|
-
it "should add tracking branch" do
|
1077
|
-
@app.should_receive(:git_add_tracking_branch)
|
1078
|
-
invoke(@main, :setup)
|
1079
|
-
end
|
1080
|
-
|
1081
1091
|
context "when remote exists" do
|
1082
1092
|
before do
|
1083
1093
|
@app.stub(:git_remote_exist?).and_return(true)
|
@@ -1087,7 +1097,16 @@ Wait until cloud is in 'turned off' state and try again.")
|
|
1087
1097
|
it "should overwrite remote" do
|
1088
1098
|
@app.should_receive(:add_git_remote)
|
1089
1099
|
@app.should_receive(:git_fetch_remote)
|
1090
|
-
|
1100
|
+
fake_stdin(["yes"]) do
|
1101
|
+
invoke(@main, :setup)
|
1102
|
+
end
|
1103
|
+
end
|
1104
|
+
|
1105
|
+
it "should show info about adding default remote and fetching changes" do
|
1106
|
+
$stdout.should_receive(:puts).with(green "Setting up foo-staging cloud")
|
1107
|
+
$stdout.should_receive(:puts).with("git remote add shelly git_url")
|
1108
|
+
$stdout.should_receive(:puts).with("git fetch shelly")
|
1109
|
+
$stdout.should_receive(:puts).with(green "Your application is set up.")
|
1091
1110
|
fake_stdin(["yes"]) do
|
1092
1111
|
invoke(@main, :setup)
|
1093
1112
|
end
|
@@ -1095,18 +1114,30 @@ Wait until cloud is in 'turned off' state and try again.")
|
|
1095
1114
|
end
|
1096
1115
|
|
1097
1116
|
context "and user answers no" do
|
1098
|
-
|
1117
|
+
before do
|
1099
1118
|
@app.stub(:git_remote_exist?).with('remote').and_return(false)
|
1119
|
+
end
|
1120
|
+
|
1121
|
+
it "should display commands to perform manually" do
|
1100
1122
|
$stdout.should_receive(:print).with("Specify remote name: ")
|
1101
1123
|
@app.should_receive(:add_git_remote).with('remote')
|
1102
1124
|
@app.should_receive(:git_fetch_remote).with('remote')
|
1103
|
-
@app.should_receive(:git_add_tracking_branch).with('remote')
|
1104
1125
|
fake_stdin(["no", "remote"]) do
|
1105
1126
|
invoke(@main, :setup)
|
1106
1127
|
end
|
1107
1128
|
end
|
1108
|
-
end
|
1109
1129
|
|
1130
|
+
it "should show info about adding custom remote and fetching changes" do
|
1131
|
+
$stdout.should_receive(:puts).with(green "Setting up foo-staging cloud")
|
1132
|
+
$stdout.should_receive(:print).with("Specify remote name: ")
|
1133
|
+
$stdout.should_receive(:puts).with("git remote add remote git_url")
|
1134
|
+
$stdout.should_receive(:puts).with("git fetch remote")
|
1135
|
+
$stdout.should_receive(:puts).with(green "Your application is set up.")
|
1136
|
+
fake_stdin(["no", "remote"]) do
|
1137
|
+
invoke(@main, :setup)
|
1138
|
+
end
|
1139
|
+
end
|
1140
|
+
end
|
1110
1141
|
end
|
1111
1142
|
end
|
1112
1143
|
|
metadata
CHANGED
@@ -1,18 +1,20 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: shelly
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.4.
|
4
|
+
version: 0.4.4
|
5
|
+
prerelease:
|
5
6
|
platform: ruby
|
6
7
|
authors:
|
7
8
|
- Shelly Cloud team
|
8
9
|
autorequire:
|
9
10
|
bindir: bin
|
10
11
|
cert_chain: []
|
11
|
-
date: 2013-
|
12
|
+
date: 2013-09-10 00:00:00.000000000 Z
|
12
13
|
dependencies:
|
13
14
|
- !ruby/object:Gem::Dependency
|
14
15
|
name: rspec
|
15
16
|
requirement: !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
16
18
|
requirements:
|
17
19
|
- - ~>
|
18
20
|
- !ruby/object:Gem::Version
|
@@ -20,6 +22,7 @@ dependencies:
|
|
20
22
|
type: :development
|
21
23
|
prerelease: false
|
22
24
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
23
26
|
requirements:
|
24
27
|
- - ~>
|
25
28
|
- !ruby/object:Gem::Version
|
@@ -27,6 +30,7 @@ dependencies:
|
|
27
30
|
- !ruby/object:Gem::Dependency
|
28
31
|
name: rake
|
29
32
|
requirement: !ruby/object:Gem::Requirement
|
33
|
+
none: false
|
30
34
|
requirements:
|
31
35
|
- - ! '>='
|
32
36
|
- !ruby/object:Gem::Version
|
@@ -34,6 +38,7 @@ dependencies:
|
|
34
38
|
type: :development
|
35
39
|
prerelease: false
|
36
40
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
37
42
|
requirements:
|
38
43
|
- - ! '>='
|
39
44
|
- !ruby/object:Gem::Version
|
@@ -41,6 +46,7 @@ dependencies:
|
|
41
46
|
- !ruby/object:Gem::Dependency
|
42
47
|
name: guard
|
43
48
|
requirement: !ruby/object:Gem::Requirement
|
49
|
+
none: false
|
44
50
|
requirements:
|
45
51
|
- - ! '>='
|
46
52
|
- !ruby/object:Gem::Version
|
@@ -48,6 +54,7 @@ dependencies:
|
|
48
54
|
type: :development
|
49
55
|
prerelease: false
|
50
56
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
51
58
|
requirements:
|
52
59
|
- - ! '>='
|
53
60
|
- !ruby/object:Gem::Version
|
@@ -55,6 +62,7 @@ dependencies:
|
|
55
62
|
- !ruby/object:Gem::Dependency
|
56
63
|
name: guard-rspec
|
57
64
|
requirement: !ruby/object:Gem::Requirement
|
65
|
+
none: false
|
58
66
|
requirements:
|
59
67
|
- - ! '>='
|
60
68
|
- !ruby/object:Gem::Version
|
@@ -62,6 +70,7 @@ dependencies:
|
|
62
70
|
type: :development
|
63
71
|
prerelease: false
|
64
72
|
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
65
74
|
requirements:
|
66
75
|
- - ! '>='
|
67
76
|
- !ruby/object:Gem::Version
|
@@ -69,6 +78,7 @@ dependencies:
|
|
69
78
|
- !ruby/object:Gem::Dependency
|
70
79
|
name: simplecov
|
71
80
|
requirement: !ruby/object:Gem::Requirement
|
81
|
+
none: false
|
72
82
|
requirements:
|
73
83
|
- - ! '>='
|
74
84
|
- !ruby/object:Gem::Version
|
@@ -76,34 +86,7 @@ dependencies:
|
|
76
86
|
type: :development
|
77
87
|
prerelease: false
|
78
88
|
version_requirements: !ruby/object:Gem::Requirement
|
79
|
-
|
80
|
-
- - ! '>='
|
81
|
-
- !ruby/object:Gem::Version
|
82
|
-
version: '0'
|
83
|
-
- !ruby/object:Gem::Dependency
|
84
|
-
name: ruby_gntp
|
85
|
-
requirement: !ruby/object:Gem::Requirement
|
86
|
-
requirements:
|
87
|
-
- - ! '>='
|
88
|
-
- !ruby/object:Gem::Version
|
89
|
-
version: '0'
|
90
|
-
type: :development
|
91
|
-
prerelease: false
|
92
|
-
version_requirements: !ruby/object:Gem::Requirement
|
93
|
-
requirements:
|
94
|
-
- - ! '>='
|
95
|
-
- !ruby/object:Gem::Version
|
96
|
-
version: '0'
|
97
|
-
- !ruby/object:Gem::Dependency
|
98
|
-
name: rb-fsevent
|
99
|
-
requirement: !ruby/object:Gem::Requirement
|
100
|
-
requirements:
|
101
|
-
- - ! '>='
|
102
|
-
- !ruby/object:Gem::Version
|
103
|
-
version: '0'
|
104
|
-
type: :development
|
105
|
-
prerelease: false
|
106
|
-
version_requirements: !ruby/object:Gem::Requirement
|
89
|
+
none: false
|
107
90
|
requirements:
|
108
91
|
- - ! '>='
|
109
92
|
- !ruby/object:Gem::Version
|
@@ -111,6 +94,7 @@ dependencies:
|
|
111
94
|
- !ruby/object:Gem::Dependency
|
112
95
|
name: fakefs
|
113
96
|
requirement: !ruby/object:Gem::Requirement
|
97
|
+
none: false
|
114
98
|
requirements:
|
115
99
|
- - ! '>='
|
116
100
|
- !ruby/object:Gem::Version
|
@@ -118,6 +102,7 @@ dependencies:
|
|
118
102
|
type: :development
|
119
103
|
prerelease: false
|
120
104
|
version_requirements: !ruby/object:Gem::Requirement
|
105
|
+
none: false
|
121
106
|
requirements:
|
122
107
|
- - ! '>='
|
123
108
|
- !ruby/object:Gem::Version
|
@@ -125,6 +110,7 @@ dependencies:
|
|
125
110
|
- !ruby/object:Gem::Dependency
|
126
111
|
name: fakeweb
|
127
112
|
requirement: !ruby/object:Gem::Requirement
|
113
|
+
none: false
|
128
114
|
requirements:
|
129
115
|
- - ! '>='
|
130
116
|
- !ruby/object:Gem::Version
|
@@ -132,6 +118,7 @@ dependencies:
|
|
132
118
|
type: :development
|
133
119
|
prerelease: false
|
134
120
|
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
none: false
|
135
122
|
requirements:
|
136
123
|
- - ! '>='
|
137
124
|
- !ruby/object:Gem::Version
|
@@ -139,6 +126,7 @@ dependencies:
|
|
139
126
|
- !ruby/object:Gem::Dependency
|
140
127
|
name: wijet-thor
|
141
128
|
requirement: !ruby/object:Gem::Requirement
|
129
|
+
none: false
|
142
130
|
requirements:
|
143
131
|
- - ~>
|
144
132
|
- !ruby/object:Gem::Version
|
@@ -146,6 +134,7 @@ dependencies:
|
|
146
134
|
type: :runtime
|
147
135
|
prerelease: false
|
148
136
|
version_requirements: !ruby/object:Gem::Requirement
|
137
|
+
none: false
|
149
138
|
requirements:
|
150
139
|
- - ~>
|
151
140
|
- !ruby/object:Gem::Version
|
@@ -153,6 +142,7 @@ dependencies:
|
|
153
142
|
- !ruby/object:Gem::Dependency
|
154
143
|
name: rest-client
|
155
144
|
requirement: !ruby/object:Gem::Requirement
|
145
|
+
none: false
|
156
146
|
requirements:
|
157
147
|
- - ! '>='
|
158
148
|
- !ruby/object:Gem::Version
|
@@ -160,6 +150,7 @@ dependencies:
|
|
160
150
|
type: :runtime
|
161
151
|
prerelease: false
|
162
152
|
version_requirements: !ruby/object:Gem::Requirement
|
153
|
+
none: false
|
163
154
|
requirements:
|
164
155
|
- - ! '>='
|
165
156
|
- !ruby/object:Gem::Version
|
@@ -167,6 +158,7 @@ dependencies:
|
|
167
158
|
- !ruby/object:Gem::Dependency
|
168
159
|
name: json
|
169
160
|
requirement: !ruby/object:Gem::Requirement
|
161
|
+
none: false
|
170
162
|
requirements:
|
171
163
|
- - ! '>='
|
172
164
|
- !ruby/object:Gem::Version
|
@@ -174,6 +166,7 @@ dependencies:
|
|
174
166
|
type: :runtime
|
175
167
|
prerelease: false
|
176
168
|
version_requirements: !ruby/object:Gem::Requirement
|
169
|
+
none: false
|
177
170
|
requirements:
|
178
171
|
- - ! '>='
|
179
172
|
- !ruby/object:Gem::Version
|
@@ -181,6 +174,7 @@ dependencies:
|
|
181
174
|
- !ruby/object:Gem::Dependency
|
182
175
|
name: progressbar
|
183
176
|
requirement: !ruby/object:Gem::Requirement
|
177
|
+
none: false
|
184
178
|
requirements:
|
185
179
|
- - ! '>='
|
186
180
|
- !ruby/object:Gem::Version
|
@@ -188,6 +182,7 @@ dependencies:
|
|
188
182
|
type: :runtime
|
189
183
|
prerelease: false
|
190
184
|
version_requirements: !ruby/object:Gem::Requirement
|
185
|
+
none: false
|
191
186
|
requirements:
|
192
187
|
- - ! '>='
|
193
188
|
- !ruby/object:Gem::Version
|
@@ -195,6 +190,7 @@ dependencies:
|
|
195
190
|
- !ruby/object:Gem::Dependency
|
196
191
|
name: launchy
|
197
192
|
requirement: !ruby/object:Gem::Requirement
|
193
|
+
none: false
|
198
194
|
requirements:
|
199
195
|
- - ! '>='
|
200
196
|
- !ruby/object:Gem::Version
|
@@ -202,6 +198,7 @@ dependencies:
|
|
202
198
|
type: :runtime
|
203
199
|
prerelease: false
|
204
200
|
version_requirements: !ruby/object:Gem::Requirement
|
201
|
+
none: false
|
205
202
|
requirements:
|
206
203
|
- - ! '>='
|
207
204
|
- !ruby/object:Gem::Version
|
@@ -209,6 +206,7 @@ dependencies:
|
|
209
206
|
- !ruby/object:Gem::Dependency
|
210
207
|
name: netrc
|
211
208
|
requirement: !ruby/object:Gem::Requirement
|
209
|
+
none: false
|
212
210
|
requirements:
|
213
211
|
- - ! '>='
|
214
212
|
- !ruby/object:Gem::Version
|
@@ -216,6 +214,7 @@ dependencies:
|
|
216
214
|
type: :runtime
|
217
215
|
prerelease: false
|
218
216
|
version_requirements: !ruby/object:Gem::Requirement
|
217
|
+
none: false
|
219
218
|
requirements:
|
220
219
|
- - ! '>='
|
221
220
|
- !ruby/object:Gem::Version
|
@@ -311,48 +310,32 @@ files:
|
|
311
310
|
homepage: http://shellycloud.com
|
312
311
|
licenses:
|
313
312
|
- MIT
|
314
|
-
metadata: {}
|
315
313
|
post_install_message:
|
316
314
|
rdoc_options: []
|
317
315
|
require_paths:
|
318
316
|
- lib
|
319
317
|
required_ruby_version: !ruby/object:Gem::Requirement
|
318
|
+
none: false
|
320
319
|
requirements:
|
321
320
|
- - ! '>='
|
322
321
|
- !ruby/object:Gem::Version
|
323
322
|
version: '0'
|
323
|
+
segments:
|
324
|
+
- 0
|
325
|
+
hash: 503882181162997547
|
324
326
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
327
|
+
none: false
|
325
328
|
requirements:
|
326
329
|
- - ! '>='
|
327
330
|
- !ruby/object:Gem::Version
|
328
331
|
version: '0'
|
332
|
+
segments:
|
333
|
+
- 0
|
334
|
+
hash: 503882181162997547
|
329
335
|
requirements: []
|
330
336
|
rubyforge_project: shelly
|
331
|
-
rubygems_version:
|
337
|
+
rubygems_version: 1.8.25
|
332
338
|
signing_key:
|
333
|
-
specification_version:
|
339
|
+
specification_version: 3
|
334
340
|
summary: Shelly Cloud command line tool
|
335
|
-
test_files:
|
336
|
-
- spec/helpers.rb
|
337
|
-
- spec/input_faker.rb
|
338
|
-
- spec/shelly/app_spec.rb
|
339
|
-
- spec/shelly/backup_spec.rb
|
340
|
-
- spec/shelly/cli/backup_spec.rb
|
341
|
-
- spec/shelly/cli/config_spec.rb
|
342
|
-
- spec/shelly/cli/database_spec.rb
|
343
|
-
- spec/shelly/cli/deploy_spec.rb
|
344
|
-
- spec/shelly/cli/file_spec.rb
|
345
|
-
- spec/shelly/cli/logs_spec.rb
|
346
|
-
- spec/shelly/cli/main_spec.rb
|
347
|
-
- spec/shelly/cli/organization_spec.rb
|
348
|
-
- spec/shelly/cli/runner_spec.rb
|
349
|
-
- spec/shelly/cli/user_spec.rb
|
350
|
-
- spec/shelly/client_spec.rb
|
351
|
-
- spec/shelly/cloudfile_spec.rb
|
352
|
-
- spec/shelly/download_progress_bar_spec.rb
|
353
|
-
- spec/shelly/model_spec.rb
|
354
|
-
- spec/shelly/organization_spec.rb
|
355
|
-
- spec/shelly/structure_validator_spec.rb
|
356
|
-
- spec/shelly/user_spec.rb
|
357
|
-
- spec/spec_helper.rb
|
358
|
-
- spec/thor/options_spec.rb
|
341
|
+
test_files: []
|
checksums.yaml
DELETED
@@ -1,15 +0,0 @@
|
|
1
|
-
---
|
2
|
-
!binary "U0hBMQ==":
|
3
|
-
metadata.gz: !binary |-
|
4
|
-
NjE0YTU4ZjM5NGY4YTljYTVlNTQ3YWQ2MWQxMmE0YTJiZGY0ZDUwNA==
|
5
|
-
data.tar.gz: !binary |-
|
6
|
-
NGY0NjIyNWM3MTRlMTVmOTgxMmU5ZjNlNWRmYjllZDZiZWUzZGFmOA==
|
7
|
-
!binary "U0hBNTEy":
|
8
|
-
metadata.gz: !binary |-
|
9
|
-
ZjE4ZWE5YTc3ZDliNTk0YmNiNTRjMzc3MjQzZjFmMzgzYWE3NDA3ZDBlYmE1
|
10
|
-
OTMzYmIzMWIxNGM1MWE5NGM2MDEzZjM0YTkwMjhjYzQ5YmY2MGQ1NmFmM2E4
|
11
|
-
YmFhNTMzZmU4OTJjMTVlM2YzMWNmM2U3ODIzZTVlZGFiMjY5OTc=
|
12
|
-
data.tar.gz: !binary |-
|
13
|
-
MDQwMjRmMzgwYTVlNGQ5ZjBlMjU5NDQ2NWU2OGZhZjU4ZDk5NDhiYTRlZTk2
|
14
|
-
YzBkMGMyNjhlMGM2NzQyZjNhNmVlM2UzZjZhNTRiZTI0NDRmNzY1NjI0NjYz
|
15
|
-
M2ZiYWVkM2QzM2IyNDNiYzBhODE4MThmNzBhODhmMjc1Mjk0OWY=
|