kibo 0.1.2 → 0.3.0
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.
- data/Gemfile +2 -1
- data/Gemfile.lock +46 -0
- data/kibo.gemspec +2 -2
- data/lib/kibo/bin/yuicompressor-2.4.7.jar +0 -0
- data/lib/kibo/commandline.rb +46 -55
- data/lib/kibo/commands/compress.rb +85 -0
- data/lib/kibo/commands/create.rb +56 -0
- data/lib/kibo/commands/deploy.rb +69 -0
- data/lib/kibo/commands/generate.rb +53 -0
- data/lib/kibo/commands/info.rb +19 -0
- data/lib/kibo/commands/reconfigure.rb +12 -0
- data/lib/kibo/commands/spin.rb +39 -0
- data/lib/kibo/commands.rb +44 -0
- data/lib/kibo/config.rb +22 -10
- data/lib/kibo/helpers/heroku.rb +75 -0
- data/lib/kibo/helpers/info.rb +50 -0
- data/lib/kibo/helpers.rb +70 -0
- data/lib/kibo/log.rb +29 -3
- data/lib/kibo/system.rb +32 -12
- data/lib/kibo/version.rb +1 -1
- data/lib/kibo.rb +10 -196
- data/man/kibo.1 +65 -12
- data/man/kibo.1.html +63 -19
- data/man/kibo.1.markdown +57 -17
- data/man/kibo.1.ronn +55 -17
- metadata +34 -5
data/man/kibo.1.html
CHANGED
@@ -63,8 +63,10 @@
|
|
63
63
|
<a href="#SYNOPSIS">SYNOPSIS</a>
|
64
64
|
<a href="#DESCRIPTION">DESCRIPTION</a>
|
65
65
|
<a href="#DESCRIPTION">DESCRIPTION</a>
|
66
|
+
<a href="#INSTANCE-PROVISIONING">INSTANCE PROVISIONING</a>
|
66
67
|
<a href="#GLOBAL-OPTIONS">GLOBAL OPTIONS</a>
|
67
68
|
<a href="#Kibofile">Kibofile</a>
|
69
|
+
<a href="#Example-session">Example session</a>
|
68
70
|
<a href="#COPYRIGHT">COPYRIGHT</a>
|
69
71
|
</div>
|
70
72
|
|
@@ -85,41 +87,83 @@
|
|
85
87
|
<code>kibo [options] deploy</code><br />
|
86
88
|
<code>kibo [options] spinup</code><br />
|
87
89
|
<code>kibo [options] spindown</code><br />
|
88
|
-
<code>kibo [options] reconfigure</code
|
90
|
+
<code>kibo [options] reconfigure</code><br />
|
91
|
+
<code>kibo [options] generate</code></p>
|
89
92
|
|
90
93
|
<h2 id="DESCRIPTION">DESCRIPTION</h2>
|
91
94
|
|
92
|
-
<p>kibo
|
95
|
+
<p>kibo manages multiple application roles on single heroku dynos.</p>
|
93
96
|
|
94
97
|
<h2 id="DESCRIPTION">DESCRIPTION</h2>
|
95
98
|
|
96
|
-
<p>
|
97
|
-
|
98
|
-
|
99
|
-
|
99
|
+
<p>Kibo is a perfect addition to Procfile based deployment on heroku.com.
|
100
|
+
While heroku itself provides adequate tools to manage a single application
|
101
|
+
on multiple dynos, Kibo adds tools to manage multiple application roles
|
102
|
+
on single dynos with automatic instance provisioning.</p>
|
103
|
+
|
104
|
+
<p>The application roles are read from the Procfile (see <span class="man-ref">foreman<span class="s">(1)</span></span>).
|
105
|
+
The concurrency options - i.e. the number of applications to run
|
106
|
+
each role - is read from the Kibofile.</p>
|
107
|
+
|
108
|
+
<h2 id="INSTANCE-PROVISIONING">INSTANCE PROVISIONING</h2>
|
109
|
+
|
110
|
+
<p>Each instance gets automatically configured using `heroku config. kibo
|
111
|
+
sets the environment variables INSTANCE, RAILS_ENV and RACK_ENV to reflect
|
112
|
+
instance role and number and runtime environment.</p>
|
113
|
+
|
114
|
+
<pre><code>INSTANCE="kibo-staging-web1"
|
115
|
+
RAILS_ENV="staging"
|
116
|
+
RACK_ENV="staging"
|
117
|
+
</code></pre>
|
100
118
|
|
101
119
|
<h2 id="GLOBAL-OPTIONS">GLOBAL OPTIONS</h2>
|
102
120
|
|
103
121
|
<p>The following options control how kibo is run:</p>
|
104
122
|
|
105
123
|
<dl>
|
106
|
-
<dt><code>-e</code>, <code>--environment</code></dt><dd><p>Set the target environment
|
107
|
-
<dt><code>-k</code>, <code>--kibofile</code></dt><dd><p>Specify
|
108
|
-
<dt><code>-p</code>, <code>--procfile</code></dt><dd><p>Specify an alternate Procfile to
|
124
|
+
<dt><code>-e</code>, <code>--environment</code></dt><dd><p>Set the target environment. Defaults to "staging"</p></dd>
|
125
|
+
<dt><code>-k</code>, <code>--kibofile</code></dt><dd><p>Specify an alternate Kibofile to use.</p></dd>
|
126
|
+
<dt><code>-p</code>, <code>--procfile</code></dt><dd><p>Specify an alternate Procfile to use.</p></dd>
|
109
127
|
</dl>
|
110
128
|
|
111
129
|
|
112
130
|
<h2 id="Kibofile">Kibofile</h2>
|
113
131
|
|
114
|
-
<p>
|
115
|
-
|
116
|
-
<pre><code>
|
117
|
-
|
118
|
-
|
119
|
-
staging
|
120
|
-
|
132
|
+
<p>A Kibofile scaffold can be generated via <code>kibo generate</code>. The following is an example:</p>
|
133
|
+
|
134
|
+
<pre><code>kibo:
|
135
|
+
# The email of the heroku account to create app instances on heroku.
|
136
|
+
heroku: user@domain.com
|
137
|
+
# You instances will be called 'kiboex-staging-web0', 'kiboex-production-worker0', etc.
|
138
|
+
namespace: kibo
|
139
|
+
defaults:
|
140
|
+
procfile: Procfile.other
|
141
|
+
web: 1
|
142
|
+
worker: 1
|
121
143
|
production:
|
122
|
-
|
144
|
+
web: 1
|
145
|
+
worker: 2
|
146
|
+
</code></pre>
|
147
|
+
|
148
|
+
<p>This defines the roles "web" and "worker", which are running at one resp. two instances in
|
149
|
+
the "production" environment.</p>
|
150
|
+
|
151
|
+
<h2 id="Example-session">Example session</h2>
|
152
|
+
|
153
|
+
<p>This is a session using the example Kibofile from above:</p>
|
154
|
+
|
155
|
+
<pre><code># creates the heroku applications "kibo-production-web1",
|
156
|
+
# "kibo-production-worker1", and "kibo-production-worker2".
|
157
|
+
kibo -e production create
|
158
|
+
|
159
|
+
# deploy all applications.
|
160
|
+
kibo -e production deploy
|
161
|
+
|
162
|
+
# start all instances
|
163
|
+
kibo -e production spinup
|
164
|
+
|
165
|
+
# stop all instances
|
166
|
+
kibo -e production spindown
|
123
167
|
</code></pre>
|
124
168
|
|
125
169
|
<h2 id="COPYRIGHT">COPYRIGHT</h2>
|
@@ -128,8 +172,8 @@ production:
|
|
128
172
|
|
129
173
|
|
130
174
|
<ol class='man-decor man-foot man foot'>
|
131
|
-
<li class='tl'>Kibo 0.
|
132
|
-
<li class='tc'>
|
175
|
+
<li class='tl'>Kibo 0.3.0</li>
|
176
|
+
<li class='tc'>September 2012</li>
|
133
177
|
<li class='tr'>kibo(1)</li>
|
134
178
|
</ol>
|
135
179
|
|
data/man/kibo.1.markdown
CHANGED
@@ -7,46 +7,84 @@ kibo(1) -- manage heroku applications
|
|
7
7
|
`kibo [options] deploy`<br>
|
8
8
|
`kibo [options] spinup`<br>
|
9
9
|
`kibo [options] spindown`<br>
|
10
|
-
`kibo [options] reconfigure
|
10
|
+
`kibo [options] reconfigure`<br>
|
11
|
+
`kibo [options] generate`
|
11
12
|
|
12
13
|
## DESCRIPTION
|
13
14
|
|
14
|
-
kibo
|
15
|
+
kibo manages multiple application roles on single heroku dynos.
|
15
16
|
|
16
17
|
## DESCRIPTION
|
17
18
|
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
19
|
+
Kibo is a perfect addition to Procfile based deployment on heroku.com.
|
20
|
+
While heroku itself provides adequate tools to manage a single application
|
21
|
+
on multiple dynos, Kibo adds tools to manage multiple application roles
|
22
|
+
on single dynos with automatic instance provisioning.
|
22
23
|
|
23
|
-
|
24
|
+
The application roles are read from the Procfile (see foreman(1)).
|
25
|
+
The concurrency options - i.e. the number of applications to run
|
26
|
+
each role - is read from the Kibofile.
|
27
|
+
|
28
|
+
## INSTANCE PROVISIONING
|
29
|
+
|
30
|
+
Each instance gets automatically configured using `heroku config. kibo
|
31
|
+
sets the environment variables INSTANCE, RAILS_ENV and RACK_ENV to reflect
|
32
|
+
instance role and number and runtime environment.
|
24
33
|
|
34
|
+
INSTANCE="kibo-staging-web1"
|
35
|
+
RAILS_ENV="staging"
|
36
|
+
RACK_ENV="staging"
|
37
|
+
|
38
|
+
## GLOBAL OPTIONS
|
25
39
|
|
26
40
|
The following options control how kibo is run:
|
27
41
|
|
28
42
|
* `-e`, `--environment`:
|
29
|
-
Set the target environment.
|
43
|
+
Set the target environment. Defaults to "staging"
|
30
44
|
|
31
45
|
* `-k`, `--kibofile`:
|
32
|
-
Specify
|
46
|
+
Specify an alternate Kibofile to use.
|
33
47
|
|
34
48
|
* `-p`, `--procfile`:
|
35
|
-
Specify an alternate Procfile to
|
36
|
-
|
49
|
+
Specify an alternate Procfile to use.
|
37
50
|
|
38
51
|
## Kibofile
|
39
52
|
|
40
|
-
|
53
|
+
A Kibofile scaffold can be generated via `kibo generate`. The following is an example:
|
41
54
|
|
55
|
+
kibo:
|
56
|
+
# The email of the heroku account to create app instances on heroku.
|
57
|
+
heroku: user@domain.com
|
58
|
+
# You instances will be called 'kiboex-staging-web0', 'kiboex-production-worker0', etc.
|
59
|
+
namespace: kibo
|
42
60
|
defaults:
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
twirl: 1
|
61
|
+
procfile: Procfile.other
|
62
|
+
web: 1
|
63
|
+
worker: 1
|
47
64
|
production:
|
48
|
-
|
65
|
+
web: 1
|
66
|
+
worker: 2
|
67
|
+
|
68
|
+
This defines the roles "web" and "worker", which are running at one resp. two instances in
|
69
|
+
the "production" environment.
|
70
|
+
|
71
|
+
## Example session
|
72
|
+
|
73
|
+
This is a session using the example Kibofile from above:
|
74
|
+
|
75
|
+
# creates the heroku applications "kibo-production-web1",
|
76
|
+
# "kibo-production-worker1", and "kibo-production-worker2".
|
77
|
+
kibo -e production create
|
78
|
+
|
79
|
+
# deploy all applications.
|
80
|
+
kibo -e production deploy
|
49
81
|
|
82
|
+
# start all instances
|
83
|
+
kibo -e production spinup
|
84
|
+
|
85
|
+
# stop all instances
|
86
|
+
kibo -e production spindown
|
87
|
+
|
50
88
|
## COPYRIGHT
|
51
89
|
|
52
90
|
Kibo is Copyright (C) 2012 Enrico Thierbach <http://radiospiel.org>
|
@@ -55,8 +93,10 @@ Kibo is Copyright (C) 2012 Enrico Thierbach <http://radiospiel.org>
|
|
55
93
|
[SYNOPSIS]: #SYNOPSIS "SYNOPSIS"
|
56
94
|
[DESCRIPTION]: #DESCRIPTION "DESCRIPTION"
|
57
95
|
[DESCRIPTION]: #DESCRIPTION "DESCRIPTION"
|
96
|
+
[INSTANCE PROVISIONING]: #INSTANCE-PROVISIONING "INSTANCE PROVISIONING"
|
58
97
|
[GLOBAL OPTIONS]: #GLOBAL-OPTIONS "GLOBAL OPTIONS"
|
59
98
|
[Kibofile]: #Kibofile "Kibofile"
|
99
|
+
[Example session]: #Example-session "Example session"
|
60
100
|
[COPYRIGHT]: #COPYRIGHT "COPYRIGHT"
|
61
101
|
|
62
102
|
|
data/man/kibo.1.ronn
CHANGED
@@ -7,46 +7,84 @@ kibo(1) -- manage heroku applications
|
|
7
7
|
`kibo [options] deploy`<br>
|
8
8
|
`kibo [options] spinup`<br>
|
9
9
|
`kibo [options] spindown`<br>
|
10
|
-
`kibo [options] reconfigure
|
10
|
+
`kibo [options] reconfigure`<br>
|
11
|
+
`kibo [options] generate`
|
11
12
|
|
12
13
|
## DESCRIPTION
|
13
14
|
|
14
|
-
kibo
|
15
|
+
kibo manages multiple application roles on single heroku dynos.
|
15
16
|
|
16
17
|
## DESCRIPTION
|
17
18
|
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
19
|
+
Kibo is a perfect addition to Procfile based deployment on heroku.com.
|
20
|
+
While heroku itself provides adequate tools to manage a single application
|
21
|
+
on multiple dynos, Kibo adds tools to manage multiple application roles
|
22
|
+
on single dynos with automatic instance provisioning.
|
22
23
|
|
23
|
-
|
24
|
+
The application roles are read from the Procfile (see foreman(1)).
|
25
|
+
The concurrency options - i.e. the number of applications to run
|
26
|
+
each role - is read from the Kibofile.
|
27
|
+
|
28
|
+
## INSTANCE PROVISIONING
|
29
|
+
|
30
|
+
Each instance gets automatically configured using `heroku config. kibo
|
31
|
+
sets the environment variables INSTANCE, RAILS_ENV and RACK_ENV to reflect
|
32
|
+
instance role and number and runtime environment.
|
24
33
|
|
34
|
+
INSTANCE="kibo-staging-web1"
|
35
|
+
RAILS_ENV="staging"
|
36
|
+
RACK_ENV="staging"
|
37
|
+
|
38
|
+
## GLOBAL OPTIONS
|
25
39
|
|
26
40
|
The following options control how kibo is run:
|
27
41
|
|
28
42
|
* `-e`, `--environment`:
|
29
|
-
Set the target environment.
|
43
|
+
Set the target environment. Defaults to "staging"
|
30
44
|
|
31
45
|
* `-k`, `--kibofile`:
|
32
|
-
Specify
|
46
|
+
Specify an alternate Kibofile to use.
|
33
47
|
|
34
48
|
* `-p`, `--procfile`:
|
35
|
-
Specify an alternate Procfile to
|
36
|
-
|
49
|
+
Specify an alternate Procfile to use.
|
37
50
|
|
38
51
|
## Kibofile
|
39
52
|
|
40
|
-
|
53
|
+
A Kibofile scaffold can be generated via `kibo generate`. The following is an example:
|
41
54
|
|
55
|
+
kibo:
|
56
|
+
# The email of the heroku account to create app instances on heroku.
|
57
|
+
heroku: user@domain.com
|
58
|
+
# You instances will be called 'kiboex-staging-web0', 'kiboex-production-worker0', etc.
|
59
|
+
namespace: kibo
|
42
60
|
defaults:
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
twirl: 1
|
61
|
+
procfile: Procfile.other
|
62
|
+
web: 1
|
63
|
+
worker: 1
|
47
64
|
production:
|
48
|
-
|
65
|
+
web: 1
|
66
|
+
worker: 2
|
67
|
+
|
68
|
+
This defines the roles "web" and "worker", which are running at one resp. two instances in
|
69
|
+
the "production" environment.
|
70
|
+
|
71
|
+
## Example session
|
72
|
+
|
73
|
+
This is a session using the example Kibofile from above:
|
74
|
+
|
75
|
+
# creates the heroku applications "kibo-production-web1",
|
76
|
+
# "kibo-production-worker1", and "kibo-production-worker2".
|
77
|
+
kibo -e production create
|
78
|
+
|
79
|
+
# deploy all applications.
|
80
|
+
kibo -e production deploy
|
49
81
|
|
82
|
+
# start all instances
|
83
|
+
kibo -e production spinup
|
84
|
+
|
85
|
+
# stop all instances
|
86
|
+
kibo -e production spindown
|
87
|
+
|
50
88
|
## COPYRIGHT
|
51
89
|
|
52
90
|
Kibo is Copyright (C) 2012 Enrico Thierbach <http://radiospiel.org>
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: kibo
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,10 +9,10 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-09-
|
12
|
+
date: 2012-09-21 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
|
-
name:
|
15
|
+
name: trollop
|
16
16
|
requirement: !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
@@ -28,7 +28,7 @@ dependencies:
|
|
28
28
|
- !ruby/object:Gem::Version
|
29
29
|
version: '0'
|
30
30
|
- !ruby/object:Gem::Dependency
|
31
|
-
name:
|
31
|
+
name: thor
|
32
32
|
requirement: !ruby/object:Gem::Requirement
|
33
33
|
none: false
|
34
34
|
requirements:
|
@@ -59,6 +59,22 @@ dependencies:
|
|
59
59
|
- - ! '>='
|
60
60
|
- !ruby/object:Gem::Version
|
61
61
|
version: '0'
|
62
|
+
- !ruby/object:Gem::Dependency
|
63
|
+
name: netrc
|
64
|
+
requirement: !ruby/object:Gem::Requirement
|
65
|
+
none: false
|
66
|
+
requirements:
|
67
|
+
- - ! '>='
|
68
|
+
- !ruby/object:Gem::Version
|
69
|
+
version: '0'
|
70
|
+
type: :runtime
|
71
|
+
prerelease: false
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
74
|
+
requirements:
|
75
|
+
- - ! '>='
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: '0'
|
62
78
|
- !ruby/object:Gem::Dependency
|
63
79
|
name: heroku
|
64
80
|
requirement: !ruby/object:Gem::Requirement
|
@@ -85,13 +101,26 @@ extra_rdoc_files: []
|
|
85
101
|
files:
|
86
102
|
- .gitignore
|
87
103
|
- Gemfile
|
104
|
+
- Gemfile.lock
|
88
105
|
- README.md
|
89
106
|
- Rakefile
|
90
107
|
- bin/kibo
|
91
108
|
- kibo.gemspec
|
92
109
|
- lib/kibo.rb
|
110
|
+
- lib/kibo/bin/yuicompressor-2.4.7.jar
|
93
111
|
- lib/kibo/commandline.rb
|
112
|
+
- lib/kibo/commands.rb
|
113
|
+
- lib/kibo/commands/compress.rb
|
114
|
+
- lib/kibo/commands/create.rb
|
115
|
+
- lib/kibo/commands/deploy.rb
|
116
|
+
- lib/kibo/commands/generate.rb
|
117
|
+
- lib/kibo/commands/info.rb
|
118
|
+
- lib/kibo/commands/reconfigure.rb
|
119
|
+
- lib/kibo/commands/spin.rb
|
94
120
|
- lib/kibo/config.rb
|
121
|
+
- lib/kibo/helpers.rb
|
122
|
+
- lib/kibo/helpers/heroku.rb
|
123
|
+
- lib/kibo/helpers/info.rb
|
95
124
|
- lib/kibo/log.rb
|
96
125
|
- lib/kibo/system.rb
|
97
126
|
- lib/kibo/version.rb
|
@@ -114,7 +143,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
114
143
|
version: '0'
|
115
144
|
segments:
|
116
145
|
- 0
|
117
|
-
hash: -
|
146
|
+
hash: -678042025039138496
|
118
147
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
119
148
|
none: false
|
120
149
|
requirements:
|