pagoda 0.3.2 → 0.5.0
Sign up to get free protection for your applications and to get access to all the features.
- data/.DS_Store +0 -0
- data/Gemfile +3 -3
- data/Gemfile.lock +33 -24
- data/README.md +68 -0
- data/Rakefile +4 -7
- data/bin/pagoda +100 -8
- data/lib/pagoda/cli/commands/clone.rb +13 -0
- data/lib/pagoda/cli/commands/create.rb +13 -0
- data/lib/pagoda/cli/commands/deploy.rb +12 -0
- data/lib/pagoda/cli/commands/destroy.rb +16 -0
- data/lib/pagoda/cli/commands/info.rb +13 -0
- data/lib/pagoda/cli/commands/init.rb +13 -0
- data/lib/pagoda/cli/commands/list.rb +20 -0
- data/lib/pagoda/cli/commands/rename.rb +17 -0
- data/lib/pagoda/cli/commands/rollback.rb +12 -0
- data/lib/pagoda/cli/commands/ssh_key.rb +27 -0
- data/lib/pagoda/cli/commands/tunnel.rb +18 -0
- data/lib/pagoda/cli/commands.rb +11 -0
- data/lib/pagoda/{helpers.rb → cli/core_ext.rb} +10 -118
- data/lib/pagoda/cli/helpers/app.rb +143 -0
- data/lib/pagoda/cli/helpers/base.rb +199 -0
- data/lib/pagoda/cli/helpers/key.rb +69 -0
- data/lib/pagoda/cli/helpers/tunnel.rb +36 -0
- data/lib/pagoda/cli/helpers.rb +127 -0
- data/lib/pagoda/cli/override.rb +23 -0
- data/lib/pagoda/cli/version.rb +5 -0
- data/lib/pagoda/cli.rb +11 -0
- data/lib/pagoda-cli.rb +1 -0
- data/pagoda.gemspec +20 -24
- data/pagoda.rdoc +139 -0
- data/pkg/newpagoda-0.1.10.gem +0 -0
- data/pkg/newpagoda-0.1.11.gem +0 -0
- data/pkg/newpagoda-0.1.12.gem +0 -0
- data/pkg/newpagoda-0.1.13.gem +0 -0
- data/pkg/newpagoda-0.1.15.gem +0 -0
- data/pkg/newpagoda-0.1.4.gem +0 -0
- data/pkg/newpagoda-0.1.6.gem +0 -0
- data/pkg/newpagoda-0.1.7.gem +0 -0
- data/pkg/newpagoda-0.1.8.gem +0 -0
- data/pkg/newpagoda-0.1.9.gem +0 -0
- data/pkg/newpagoda-0.5.0.gem +0 -0
- data/spec/lib/helper_spec.rb +32 -0
- data/spec/lib/helpers/app_spec.rb +104 -0
- data/spec/lib/helpers/base_spec.rb +27 -0
- data/spec/lib/helpers/key_spec.rb +42 -0
- data/spec/lib/helpers/tunnel_spec.rb +30 -0
- data/spec/spec_helper.rb +17 -0
- metadata +74 -50
- data/.bundle/config +0 -1
- data/README +0 -3
- data/lib/pagoda/client.rb +0 -225
- data/lib/pagoda/command.rb +0 -96
- data/lib/pagoda/commands/app.rb +0 -247
- data/lib/pagoda/commands/auth.rb +0 -149
- data/lib/pagoda/commands/base.rb +0 -184
- data/lib/pagoda/commands/db.rb +0 -18
- data/lib/pagoda/commands/help.rb +0 -100
- data/lib/pagoda/commands/tunnel.rb +0 -49
- data/lib/pagoda/tunnel_proxy.rb +0 -130
- data/lib/pagoda/version.rb +0 -3
- data/lib/pagoda.rb +0 -3
- data/spec/base.rb +0 -21
- data/spec/client_spec.rb +0 -255
- data/spec/command_spec.rb +0 -26
- data/spec/commands/auth_spec.rb +0 -57
data/pagoda.rdoc
ADDED
@@ -0,0 +1,139 @@
|
|
1
|
+
= <tt>pagoda</tt>
|
2
|
+
|
3
|
+
Describe your application here
|
4
|
+
|
5
|
+
pagoda [global options] command_name [command-specific options] [--] arguments...
|
6
|
+
|
7
|
+
* Use the command +help+ to get a summary of commands
|
8
|
+
* Use the command <tt>help command_name</tt> to get a help for +command_name+
|
9
|
+
* Use <tt>--</tt> to stop command line argument processing; useful if your arguments have dashes in them
|
10
|
+
|
11
|
+
== Global Options
|
12
|
+
These options are available for any command and are specified before the name of the command
|
13
|
+
|
14
|
+
[<tt>-a, --app=APP_NAME</tt>] The app name for Pagoda Box <i>( default: <tt>pagodabox-test</tt>)</i>
|
15
|
+
[<tt>-h, --help</tt>] Help
|
16
|
+
== Commands
|
17
|
+
[<tt>clone</tt>] You must specify an app name to clone.
|
18
|
+
[<tt>config</tt>] You must specify an app name to clone.
|
19
|
+
[<tt>create</tt>] Describe create here
|
20
|
+
[<tt>deploy</tt>] Describe deploy here
|
21
|
+
[<tt>destroy</tt>] Describe destroy here
|
22
|
+
[<tt>help</tt>] Shows list of commands or help for one command
|
23
|
+
[<tt>info</tt>] Describe info here
|
24
|
+
[<tt>init</tt>] Describe init here
|
25
|
+
[<tt>initconfig</tt>] Initialize the config file using current global options
|
26
|
+
[<tt>list</tt>] Describe list here
|
27
|
+
[<tt>rename</tt>] Describe rename here, Haha
|
28
|
+
[<tt>rollback</tt>] Describe rollback here
|
29
|
+
[<tt>tunnel</tt>] Describe tunnel here
|
30
|
+
|
31
|
+
=== <tt>clone Describe arguments to clone here</tt>
|
32
|
+
|
33
|
+
You must specify an app name to clone.
|
34
|
+
|
35
|
+
==== Options
|
36
|
+
These options are specified *after* the command.
|
37
|
+
|
38
|
+
[<tt>-h, --help</tt>] Help
|
39
|
+
=== <tt>config Describe arguments to clone here</tt>
|
40
|
+
|
41
|
+
You must specify an app name to clone.
|
42
|
+
|
43
|
+
==== Options
|
44
|
+
These options are specified *after* the command.
|
45
|
+
|
46
|
+
[<tt>-h, --help</tt>] Help
|
47
|
+
=== <tt>create Describe arguments to create here</tt>
|
48
|
+
|
49
|
+
Describe create here
|
50
|
+
|
51
|
+
==== Options
|
52
|
+
These options are specified *after* the command.
|
53
|
+
|
54
|
+
[<tt>-h, --help</tt>] Help
|
55
|
+
=== <tt>deploy Describe arguments to deploy here</tt>
|
56
|
+
|
57
|
+
Describe deploy here
|
58
|
+
|
59
|
+
==== Options
|
60
|
+
These options are specified *after* the command.
|
61
|
+
|
62
|
+
[<tt>-h, --help</tt>] Help
|
63
|
+
=== <tt>destroy Describe arguments to destroy here</tt>
|
64
|
+
|
65
|
+
Describe destroy here
|
66
|
+
|
67
|
+
==== Options
|
68
|
+
These options are specified *after* the command.
|
69
|
+
|
70
|
+
[<tt>-h, --help</tt>] Help
|
71
|
+
=== <tt>help [command]</tt>
|
72
|
+
|
73
|
+
Shows list of commands or help for one command
|
74
|
+
|
75
|
+
Gets help for the application or its commands. Can also list the commands in a way helpful to creating a bash-style completion function
|
76
|
+
|
77
|
+
==== Options
|
78
|
+
These options are specified *after* the command.
|
79
|
+
|
80
|
+
[<tt>-c, --completion</tt>] List all commands one line at a time, for use with shell completion ([command] argument is partial command to match)
|
81
|
+
=== <tt>info Describe arguments to info here</tt>
|
82
|
+
|
83
|
+
Describe info here
|
84
|
+
|
85
|
+
==== Options
|
86
|
+
These options are specified *after* the command.
|
87
|
+
|
88
|
+
[<tt>-h, --help</tt>] Help
|
89
|
+
=== <tt>init Describe arguments to init here</tt>
|
90
|
+
|
91
|
+
Describe init here
|
92
|
+
|
93
|
+
==== Options
|
94
|
+
These options are specified *after* the command.
|
95
|
+
|
96
|
+
[<tt>-h, --help</tt>] Help
|
97
|
+
=== <tt>initconfig </tt>
|
98
|
+
|
99
|
+
Initialize the config file using current global options
|
100
|
+
|
101
|
+
Initializes a configuration file where you can set default options for command line flags, both globally and on a per-command basis. These defaults override the built-in defaults and allow you to omit commonly-used command line flags when invoking this program
|
102
|
+
|
103
|
+
==== Options
|
104
|
+
These options are specified *after* the command.
|
105
|
+
|
106
|
+
[<tt>--force</tt>] force overwrite of existing config file
|
107
|
+
=== <tt>list Describe arguments to list here</tt>
|
108
|
+
|
109
|
+
Describe list here
|
110
|
+
|
111
|
+
==== Options
|
112
|
+
These options are specified *after* the command.
|
113
|
+
|
114
|
+
[<tt>-h, --help</tt>] Help
|
115
|
+
[<tt>-w, --web</tt>] Web Components
|
116
|
+
=== <tt>rename Describe arguments to rename here</tt>
|
117
|
+
|
118
|
+
Describe rename here, Haha
|
119
|
+
|
120
|
+
==== Options
|
121
|
+
These options are specified *after* the command.
|
122
|
+
|
123
|
+
[<tt>-h, --help</tt>] Help
|
124
|
+
=== <tt>rollback Describe arguments to rollback here</tt>
|
125
|
+
|
126
|
+
Describe rollback here
|
127
|
+
|
128
|
+
==== Options
|
129
|
+
These options are specified *after* the command.
|
130
|
+
|
131
|
+
[<tt>-h, --help</tt>] Help
|
132
|
+
=== <tt>tunnel Describe arguments to tunnel here</tt>
|
133
|
+
|
134
|
+
Describe tunnel here
|
135
|
+
|
136
|
+
==== Options
|
137
|
+
These options are specified *after* the command.
|
138
|
+
|
139
|
+
[<tt>-h, --help</tt>] Help
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
@@ -0,0 +1,32 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
class Tclass
|
4
|
+
include Pagoda::Helpers
|
5
|
+
|
6
|
+
end
|
7
|
+
|
8
|
+
describe Pagoda::Helpers do
|
9
|
+
|
10
|
+
before :each do
|
11
|
+
@cla = Tclass.new
|
12
|
+
end
|
13
|
+
|
14
|
+
it "has git?" do
|
15
|
+
@cla.has_git?.should == true
|
16
|
+
end
|
17
|
+
|
18
|
+
it "builds a nice indent" do
|
19
|
+
@cla.build_indent(3).should == " "
|
20
|
+
end
|
21
|
+
|
22
|
+
it "formats time pretty" do
|
23
|
+
t = Time.now
|
24
|
+
@cla.format_date(t).should == t.strftime("%Y-%m-%d %H:%M %Z")
|
25
|
+
end
|
26
|
+
|
27
|
+
it "can check the operationg system" do
|
28
|
+
@cla.running_on_a_mac?.should_not == false
|
29
|
+
end
|
30
|
+
|
31
|
+
|
32
|
+
end
|
@@ -0,0 +1,104 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
describe Pagoda::Command::App do
|
3
|
+
|
4
|
+
before :all do
|
5
|
+
@app = Pagoda::Command::App.new({},{},['name'])
|
6
|
+
end
|
7
|
+
|
8
|
+
it "Should error if no apps are found" do
|
9
|
+
@app.client.stub(:app_list).and_return({})
|
10
|
+
@app.should_receive(:error).with(["looks like you haven't launched any apps", "type 'pagoda create' to create this project on pagodabox"])
|
11
|
+
@app.list
|
12
|
+
end
|
13
|
+
|
14
|
+
it "should attempt to display the apps " do
|
15
|
+
@app.client.stub(:app_list).and_return([{:name => "bob"}, {:name => "saget"}])
|
16
|
+
@app.should_receive(:display).with(no_args).exactly(3).times
|
17
|
+
@app.should_receive(:display).with("APPS")
|
18
|
+
@app.should_receive(:display).with("//////////////////////////////////")
|
19
|
+
@app.should_receive(:display).with("- bob")
|
20
|
+
@app.should_receive(:display).with("- saget")
|
21
|
+
@app.list
|
22
|
+
end
|
23
|
+
|
24
|
+
it "displays the app info" do
|
25
|
+
response = {
|
26
|
+
_id: "4e8cabecbb71f99d10000043",
|
27
|
+
name: "myapp",
|
28
|
+
ssh: true,
|
29
|
+
owner: {
|
30
|
+
_id:"4e8c78d6bb71f99b33000003",
|
31
|
+
email: "lyon@delorum.com",
|
32
|
+
username: "lyon"
|
33
|
+
},
|
34
|
+
collaborators:[{_id: "4e8c78d6bb71f99b33000003",email: "lyon@delorum.com",username: "lyon"}]
|
35
|
+
}
|
36
|
+
@app.client.should_receive(:app_info).with("name").and_return(response)
|
37
|
+
@app.should_receive(:display).with(no_args).exactly(5).times
|
38
|
+
@app.should_receive(:display).with("INFO - myapp")
|
39
|
+
@app.should_receive(:display).with("//////////////////////////////////")
|
40
|
+
@app.should_receive(:display).with("name : myapp")
|
41
|
+
@app.should_receive(:display).with("clone url : git@pagodabox.com:4e8cabecbb71f99d10000043.git")
|
42
|
+
@app.should_receive(:display).with("owner")
|
43
|
+
@app.should_receive(:display).with(" username : lyon")
|
44
|
+
@app.should_receive(:display).with(" email : lyon@delorum.com")
|
45
|
+
@app.should_receive(:display).with("collaborators")
|
46
|
+
@app.should_receive(:display).with(" username : lyon")
|
47
|
+
@app.should_receive(:display).with(" email : lyon@delorum.com")
|
48
|
+
@app.should_receive(:display).with("ssh_portal : enabled")
|
49
|
+
@app.info
|
50
|
+
end
|
51
|
+
|
52
|
+
|
53
|
+
|
54
|
+
|
55
|
+
|
56
|
+
it "Is able to create an application" do
|
57
|
+
@app.stub(:app).and_return("application")
|
58
|
+
@app.stub(:display)
|
59
|
+
@app.client.should_receive(:app_available?).and_return(true)
|
60
|
+
@app.client.should_receive(:app_create).and_return({:id => "1234"})
|
61
|
+
@app.should_receive(:create_git_remote)
|
62
|
+
@app.create
|
63
|
+
end
|
64
|
+
|
65
|
+
it "deploys a new commit" do
|
66
|
+
@app.stub(:app).and_return("cowboy")
|
67
|
+
@app.client.stub(:app_info).and_return({:transactions => []})
|
68
|
+
@app.stub(:display)
|
69
|
+
@app.client.should_receive(:app_deploy).once
|
70
|
+
@app.deploy
|
71
|
+
end
|
72
|
+
|
73
|
+
it "bonks if the names are the same" do
|
74
|
+
@app.should_receive(:error).with("New name and existiong name cannot be the same")
|
75
|
+
@app.client.stub(:app_update)
|
76
|
+
@app.stub(:display)
|
77
|
+
@app.rename
|
78
|
+
end
|
79
|
+
|
80
|
+
it "bonks if we raise an error in anyway" do
|
81
|
+
app = Pagoda::Command::App.new({},{:app => "firstname"},['name'])
|
82
|
+
app.should_receive(:error).with("Given name was either invalid or already in use")
|
83
|
+
app.client.stub(:app_update).and_raise("BOOO HOO")
|
84
|
+
app.stub(:display)
|
85
|
+
app.rename
|
86
|
+
end
|
87
|
+
|
88
|
+
it "can clone a pagoda repo" do
|
89
|
+
@app.client.stub(:app_info).and_return({:id => "superawesomeid"})
|
90
|
+
@app.should_receive(:git).with("clone git@pagodabox.com:superawesomeid.git name")
|
91
|
+
@app.should_receive(:git).with("config --add pagoda.id superawesomeid")
|
92
|
+
@app.stub(:display)
|
93
|
+
Dir.stub!(:chdir)
|
94
|
+
@app.clone
|
95
|
+
end
|
96
|
+
|
97
|
+
it "calls the rewinda" do
|
98
|
+
@app.client.should_receive(:app_rollback)
|
99
|
+
@app.stub(:display)
|
100
|
+
@app.stub(:loop_transaction)
|
101
|
+
@app.rollback
|
102
|
+
end
|
103
|
+
|
104
|
+
end
|
@@ -0,0 +1,27 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Pagoda::Command::Base do
|
4
|
+
|
5
|
+
before :all do
|
6
|
+
@base = Pagoda::Command::Base.new({},{},[])
|
7
|
+
end
|
8
|
+
|
9
|
+
it "returns the remote given" do
|
10
|
+
@base = Pagoda::Command::Base.new({},{:remote => "notpagoda"},[])
|
11
|
+
@base.remote.should == "notpagoda"
|
12
|
+
end
|
13
|
+
|
14
|
+
it "returns a default remote" do
|
15
|
+
@base.remote.should == "pagoda"
|
16
|
+
end
|
17
|
+
|
18
|
+
it "can gather an application name from anywhere" do
|
19
|
+
glob = Pagoda::Command::Base.new({:app => "appname"},{},[])
|
20
|
+
opt = Pagoda::Command::Base.new({},{:app => "appnamo"},[])
|
21
|
+
arg = Pagoda::Command::Base.new({},{},["appnama"])
|
22
|
+
glob.app.should == "appname"
|
23
|
+
opt.app.should == "appnamo"
|
24
|
+
arg.app.should == "appnama"
|
25
|
+
end
|
26
|
+
|
27
|
+
end
|
@@ -0,0 +1,42 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
require 'pagoda/cli/helpers'
|
3
|
+
|
4
|
+
describe Pagoda::Command::Key do
|
5
|
+
|
6
|
+
before :all do
|
7
|
+
@key = Pagoda::Command::Key.new({},{},[])
|
8
|
+
end
|
9
|
+
|
10
|
+
it "will send a valid key file" do
|
11
|
+
@key.client.should_receive(:user_add_key)
|
12
|
+
@key.stub(:display)
|
13
|
+
@key.send_key_file("#{File.expand_path("~")}/.ssh/id_rsa.pub")
|
14
|
+
end
|
15
|
+
|
16
|
+
it "attempts to retrieve a file and send it if given a fliename" do
|
17
|
+
good_file = Pagoda::Command::Key.new({},{:file => "#{File.expand_path("~")}/.ssh/id_rsa.pub"},[])
|
18
|
+
good_file.should_receive(:send_key_file).with("#{File.expand_path("~")}/.ssh/id_rsa.pub")
|
19
|
+
good_file.push_existing_key
|
20
|
+
end
|
21
|
+
|
22
|
+
it "fails a file check on get_key " do
|
23
|
+
bad_file = Pagoda::Command::Key.new({},{:file => "/fake/file.pub"},[])
|
24
|
+
bad_file.should_receive(:error).with("file given '/fake/file.pub' does not exist")
|
25
|
+
bad_file.push_existing_key
|
26
|
+
end
|
27
|
+
|
28
|
+
it "will try gathering the key files if none are specified" do
|
29
|
+
@key.stub(:display)
|
30
|
+
@key.should_receive(:send_key_file).with("#{File.expand_path("~")}/.ssh/id_rsa.pub")
|
31
|
+
@key.push_existing_key
|
32
|
+
end
|
33
|
+
|
34
|
+
it "will generagte a key for the user and push that key to pagodabox" do
|
35
|
+
@key.stub!(:`)
|
36
|
+
@key.stub(:display)
|
37
|
+
@key.should_receive(:push_existing_key)
|
38
|
+
@key.generate_key_and_push
|
39
|
+
end
|
40
|
+
|
41
|
+
|
42
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Pagoda::Command::Tunnel do
|
4
|
+
|
5
|
+
before :all do
|
6
|
+
@tunnel = Pagoda::Command::Tunnel.new({:username => "user", :password => "pass", :app => "application"},{},["ginger"])
|
7
|
+
end
|
8
|
+
|
9
|
+
it "will attempt to run the tunnel if it has all the correct credentials" do
|
10
|
+
@tunnel.client.stub(:component_info).and_return({:tunnelable => true, :_type => "mysql", :id => "theid142", :app_id => "appID"})
|
11
|
+
guy = Pagoda::Tunnel.new("mysql", "user", "pass","application", "theid142")
|
12
|
+
guy.stub(:start).and_return false
|
13
|
+
Pagoda::Tunnel.should_receive(:new).with("mysql", "user", "pass","appID", "theid142").and_return(guy)
|
14
|
+
@tunnel.run
|
15
|
+
end
|
16
|
+
|
17
|
+
it "errors when the component is not tunnelable" do
|
18
|
+
@tunnel.client.stub(:component_info).and_return({:tunnelable => false, :type => "mysql", :id => "theid142"})
|
19
|
+
@tunnel.should_receive(:error).with("Either the component is not tunnelable or you do not have access")
|
20
|
+
@tunnel.run
|
21
|
+
end
|
22
|
+
|
23
|
+
it "errors if the component doesnt exist or there ins an api problem" do
|
24
|
+
@tunnel.client.stub(:component_info).and_raise "dont you dare"
|
25
|
+
@tunnel.should_receive(:error).with("Done Brokedon! Either the component does not exist or it is not tunnelable")
|
26
|
+
@tunnel.run
|
27
|
+
end
|
28
|
+
|
29
|
+
|
30
|
+
end
|
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,17 @@
|
|
1
|
+
require 'bundler/setup'
|
2
|
+
# require 'fakefs'
|
3
|
+
require 'pagoda/cli/helpers'
|
4
|
+
require 'pagoda/cli/helpers/base'
|
5
|
+
require 'pagoda/cli/helpers/app'
|
6
|
+
require 'pagoda/cli/helpers/key'
|
7
|
+
require 'pagoda/cli/helpers/tunnel'
|
8
|
+
|
9
|
+
require 'pagoda/cli/core_ext'
|
10
|
+
|
11
|
+
def silently(&block)
|
12
|
+
warn_level = $VERBOSE
|
13
|
+
$VERBOSE = nil
|
14
|
+
result = block.call
|
15
|
+
$VERBOSE = warn_level
|
16
|
+
result
|
17
|
+
end
|
metadata
CHANGED
@@ -1,19 +1,19 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pagoda
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.5.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
|
-
-
|
8
|
+
- Lyon Hill
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2011-
|
12
|
+
date: 2011-11-01 00:00:00.000000000Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rspec
|
16
|
-
requirement: &
|
16
|
+
requirement: &2154455140 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :development
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *2154455140
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
|
-
name:
|
27
|
-
requirement: &
|
26
|
+
name: pry
|
27
|
+
requirement: &2154454340 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: '0'
|
33
33
|
type: :development
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *2154454340
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
|
-
name:
|
38
|
-
requirement: &
|
37
|
+
name: pagoda-client
|
38
|
+
requirement: &2154453660 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: '0'
|
44
44
|
type: :runtime
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *2154453660
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
|
-
name:
|
49
|
-
requirement: &
|
48
|
+
name: pagoda-tunnel
|
49
|
+
requirement: &2154453240 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ! '>='
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: '0'
|
55
55
|
type: :runtime
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *2154453240
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
|
-
name:
|
60
|
-
requirement: &
|
59
|
+
name: rest-client
|
60
|
+
requirement: &2154452800 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ! '>='
|
@@ -65,10 +65,10 @@ dependencies:
|
|
65
65
|
version: '0'
|
66
66
|
type: :runtime
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *2154452800
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
|
-
name:
|
71
|
-
requirement: &
|
70
|
+
name: gli
|
71
|
+
requirement: &2154452320 !ruby/object:Gem::Requirement
|
72
72
|
none: false
|
73
73
|
requirements:
|
74
74
|
- - ! '>='
|
@@ -76,42 +76,64 @@ dependencies:
|
|
76
76
|
version: '0'
|
77
77
|
type: :runtime
|
78
78
|
prerelease: false
|
79
|
-
version_requirements: *
|
80
|
-
description:
|
81
|
-
not contain full api functionality, just functionality that will enhance the workflow
|
82
|
-
experience.
|
79
|
+
version_requirements: *2154452320
|
80
|
+
description: Pagoda Box User facing interface to improve workflow with Pagoda Box
|
83
81
|
email:
|
84
|
-
-
|
82
|
+
- lyon@pagodabox.com
|
85
83
|
executables:
|
86
84
|
- pagoda
|
87
85
|
extensions: []
|
88
86
|
extra_rdoc_files: []
|
89
87
|
files:
|
90
|
-
- .
|
88
|
+
- .DS_Store
|
91
89
|
- .gitignore
|
92
90
|
- Gemfile
|
93
91
|
- Gemfile.lock
|
94
|
-
- README
|
92
|
+
- README.md
|
95
93
|
- Rakefile
|
96
94
|
- bin/pagoda
|
97
|
-
- lib/pagoda.rb
|
98
|
-
- lib/pagoda/
|
99
|
-
- lib/pagoda/
|
100
|
-
- lib/pagoda/commands/
|
101
|
-
- lib/pagoda/commands/
|
102
|
-
- lib/pagoda/commands/
|
103
|
-
- lib/pagoda/commands/
|
104
|
-
- lib/pagoda/commands/
|
105
|
-
- lib/pagoda/commands/
|
106
|
-
- lib/pagoda/
|
107
|
-
- lib/pagoda/
|
108
|
-
- lib/pagoda/
|
95
|
+
- lib/pagoda-cli.rb
|
96
|
+
- lib/pagoda/cli.rb
|
97
|
+
- lib/pagoda/cli/commands.rb
|
98
|
+
- lib/pagoda/cli/commands/clone.rb
|
99
|
+
- lib/pagoda/cli/commands/create.rb
|
100
|
+
- lib/pagoda/cli/commands/deploy.rb
|
101
|
+
- lib/pagoda/cli/commands/destroy.rb
|
102
|
+
- lib/pagoda/cli/commands/info.rb
|
103
|
+
- lib/pagoda/cli/commands/init.rb
|
104
|
+
- lib/pagoda/cli/commands/list.rb
|
105
|
+
- lib/pagoda/cli/commands/rename.rb
|
106
|
+
- lib/pagoda/cli/commands/rollback.rb
|
107
|
+
- lib/pagoda/cli/commands/ssh_key.rb
|
108
|
+
- lib/pagoda/cli/commands/tunnel.rb
|
109
|
+
- lib/pagoda/cli/core_ext.rb
|
110
|
+
- lib/pagoda/cli/helpers.rb
|
111
|
+
- lib/pagoda/cli/helpers/app.rb
|
112
|
+
- lib/pagoda/cli/helpers/base.rb
|
113
|
+
- lib/pagoda/cli/helpers/key.rb
|
114
|
+
- lib/pagoda/cli/helpers/tunnel.rb
|
115
|
+
- lib/pagoda/cli/override.rb
|
116
|
+
- lib/pagoda/cli/version.rb
|
109
117
|
- pagoda.gemspec
|
110
|
-
-
|
111
|
-
-
|
112
|
-
-
|
113
|
-
-
|
114
|
-
|
118
|
+
- pagoda.rdoc
|
119
|
+
- pkg/newpagoda-0.1.10.gem
|
120
|
+
- pkg/newpagoda-0.1.11.gem
|
121
|
+
- pkg/newpagoda-0.1.12.gem
|
122
|
+
- pkg/newpagoda-0.1.13.gem
|
123
|
+
- pkg/newpagoda-0.1.15.gem
|
124
|
+
- pkg/newpagoda-0.1.4.gem
|
125
|
+
- pkg/newpagoda-0.1.6.gem
|
126
|
+
- pkg/newpagoda-0.1.7.gem
|
127
|
+
- pkg/newpagoda-0.1.8.gem
|
128
|
+
- pkg/newpagoda-0.1.9.gem
|
129
|
+
- pkg/newpagoda-0.5.0.gem
|
130
|
+
- spec/lib/helper_spec.rb
|
131
|
+
- spec/lib/helpers/app_spec.rb
|
132
|
+
- spec/lib/helpers/base_spec.rb
|
133
|
+
- spec/lib/helpers/key_spec.rb
|
134
|
+
- spec/lib/helpers/tunnel_spec.rb
|
135
|
+
- spec/spec_helper.rb
|
136
|
+
homepage: http://www.pagodabox.com
|
115
137
|
licenses: []
|
116
138
|
post_install_message:
|
117
139
|
rdoc_options: []
|
@@ -130,13 +152,15 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
130
152
|
- !ruby/object:Gem::Version
|
131
153
|
version: '0'
|
132
154
|
requirements: []
|
133
|
-
rubyforge_project:
|
134
|
-
rubygems_version: 1.8.
|
155
|
+
rubyforge_project:
|
156
|
+
rubygems_version: 1.8.10
|
135
157
|
signing_key:
|
136
158
|
specification_version: 3
|
137
|
-
summary:
|
159
|
+
summary: Pagoda Box CLI
|
138
160
|
test_files:
|
139
|
-
- spec/
|
140
|
-
- spec/
|
141
|
-
- spec/
|
142
|
-
- spec/
|
161
|
+
- spec/lib/helper_spec.rb
|
162
|
+
- spec/lib/helpers/app_spec.rb
|
163
|
+
- spec/lib/helpers/base_spec.rb
|
164
|
+
- spec/lib/helpers/key_spec.rb
|
165
|
+
- spec/lib/helpers/tunnel_spec.rb
|
166
|
+
- spec/spec_helper.rb
|
data/.bundle/config
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
--- {}
|
data/README
DELETED