rump 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,328 @@
1
+ .\" generated with Ronn/v0.7.3
2
+ .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
+ .
4
+ .TH "RUMP" "1" "February 2011" "" ""
5
+ .
6
+ .SH "NAME"
7
+ rump \- Do Puppet runs locally from a Git checkout
8
+ .
9
+ .SH "SYNOPSIS"
10
+ .
11
+ .IP "\(bu" 4
12
+ \fBrump\fR go [\fIpuppet\-options\fR]
13
+ .
14
+ .IP "\(bu" 4
15
+ \fBrump\fR clone \fIrepository\fR [directory]
16
+ .
17
+ .IP "\(bu" 4
18
+ \fBrump\fR freeze [\fIproject\fR \fIrepository\fR \-\-release=\fIrelease\fR]
19
+ .
20
+ .IP "\(bu" 4
21
+ \fBrump\fR whoami [rfc2822\-address]
22
+ .
23
+ .IP "\(bu" 4
24
+ \fBrump\fR init \fIproject\fR
25
+ .
26
+ .IP "\(bu" 4
27
+ \fBrump\fR scaffold \fIproject\fR
28
+ .
29
+ .IP "" 0
30
+ .
31
+ .SH "DESCRIPTION"
32
+ \fBRump\fR helps you run Puppet locally against a Git checkout\.
33
+ .
34
+ .P
35
+ Rump supports a Puppet workflow where you quickly + iteratively develop your Puppet manifests on a single machine, then push your changes up to a repository to deploy to the rest of your infrastructure\.
36
+ .
37
+ .P
38
+ This workflow also complements a Capistrano or MCollective\-style deployment, where you remotely instruct Rump to check out a copy of the latest manifests and run them\.
39
+ .
40
+ .P
41
+ Rump also has the ability to freeze Puppet in to the manifests repository, letting you quickly test different versions of Puppet without waiting for packages to appear, and reducing the dependencies on a system to run Puppet down to just Ruby and git\.
42
+ .
43
+ .SH "COMMANDS"
44
+ .
45
+ .TP
46
+ \fBclone\fR
47
+ Clone a git repository of Puppet manifests\.
48
+ .
49
+ .IP
50
+ \fIrepository\fR is the url of a git repository\. Essentially invokes \fBgit clone\fR\. If [directory] is specified, will clone the repository into the specified directory\.
51
+ .
52
+ .TP
53
+ \fBfreeze\fR
54
+ Freeze an arbitrary git repository into the current git repository as a submodule under \fBvendor/\fR\.
55
+ .
56
+ .IP
57
+ With no arguments, \fBfreeze\fR will freeze in Puppet + Facter, to the latest commit on master\. This is especially useful if you want to track the latest development release of Puppet\.
58
+ .
59
+ .IP
60
+ If \fIproject\fR and \fIrepository\fR are specified, a git repository is cloned and set up as a submodule under \fBvendor/\fR\.
61
+ .
62
+ .IP
63
+ If \fB\-\-release\fR is specified, \fBfreeze\fR will create and switch to a branch matching a particular tag or revision\. Use this to lock to a specific version of Puppet\.
64
+ .
65
+ .IP
66
+ Once the repository is frozen in, switch between tagged releases by \fBcd\fRing to the repository under vendor and running \fBgit checkout <tag>\fR\.
67
+ .
68
+ .IP
69
+ Any repository frozen under \fBvendor/\fR will be added to the Puppet load path when using \fBrump go\fR\.
70
+ .
71
+ .TP
72
+ \fBgo\fR
73
+ Do a Puppet run\. Assumes the current directory is a repository of Puppet manifests\.
74
+ .
75
+ .IP
76
+ \fIpuppet\-options\fR are any options you can pass to \fBpuppet\fR on the command line (e\.g\. \fB\-\-debug\fR, \fB\-\-verbose\fR, \fB\-\-tags foobar\fR)\.
77
+ .
78
+ .TP
79
+ \fBhelp\fR
80
+ Display the man page\.
81
+ .
82
+ .TP
83
+ \fBinit\fR
84
+ Initialise a repo of scaffolded Puppet manifests\. Generates scaffolding for a repository of Puppet manifests, and \fBgit init\fRs the repository\.
85
+ .
86
+ .TP
87
+ \fBscaffold\fR
88
+ Generate scaffolding for a repository of Puppet manifests, primed for Rump\.
89
+ .
90
+ .IP
91
+ Called by \fBinit\fR\. You should never have to call this manually\.
92
+ .
93
+ .TP
94
+ \fBwhoami\fR
95
+ Sets \fBuser\.name\fR and \fBuser\.email\fR using \fBgit config\fR\. Useful if you have multiple users working with the repository from the same UNIX account\.
96
+ .
97
+ .IP
98
+ If no arguments are specified, will output the currently configured name and email\.
99
+ .
100
+ .IP
101
+ If an argument is specified, treat the argument as an RFC2822 formatted email address, e\.g\. John Doe \fIjohn@example\.org\fR\. Sets \fBuser\.name\fR and \fBuser\.email\fR with \fBgit config\fR\.
102
+ .
103
+ .IP
104
+ Modelled on \fBbzr whoami\fR\.
105
+ .
106
+ .SH "OPTIONS"
107
+ .
108
+ .TP
109
+ \fB\-\-help|\-h\fR
110
+ Display the man page\.
111
+ .
112
+ .SH "RETURN VALUES"
113
+ .
114
+ .IP "\(bu" 4
115
+ \fB0\fR: Command completed successfully\.
116
+ .
117
+ .IP "\(bu" 4
118
+ \fB1\fR: Argument error\.
119
+ .
120
+ .IP "\(bu" 4
121
+ \fB2\fR: Subcommand error\.
122
+ .
123
+ .IP "\(bu" 4
124
+ \fB3\fR: Required frozen submodule doesn\'t exist\.
125
+ .
126
+ .IP "" 0
127
+ .
128
+ .SH "QUIRKS"
129
+ .
130
+ .IP "1." 4
131
+ Puppet\'s fileserver (\fBsource => "puppet:///\.\.\."\fR on File resources) doesn\'t behave as expected on Puppet < 2\.6\. If you are using Puppet < 2\.6, all files need to be templates\.
132
+ .
133
+ .IP "" 0
134
+ .
135
+ .SH "EXAMPLES"
136
+ Initialise a Rump\-ready Puppet repository:
137
+ .
138
+ .IP "" 4
139
+ .
140
+ .nf
141
+
142
+ $ rump init barfoo
143
+ Initialized empty Git repository in barfoo/\.git/
144
+ .
145
+ .fi
146
+ .
147
+ .IP "" 0
148
+ .
149
+ .P
150
+ Clone a git repository of Puppet manifests:
151
+ .
152
+ .IP "" 4
153
+ .
154
+ .nf
155
+
156
+ $ rump clone git@github\.com:exampledotorg/manifests\.git
157
+ .
158
+ .fi
159
+ .
160
+ .IP "" 0
161
+ .
162
+ .P
163
+ Clone a git repository of Puppet manifests into a specific directory:
164
+ .
165
+ .IP "" 4
166
+ .
167
+ .nf
168
+
169
+ $ rump clone git@github\.com:exampledotorg/manifests\.git another_clone
170
+ .
171
+ .fi
172
+ .
173
+ .IP "" 0
174
+ .
175
+ .P
176
+ Graft a Rump scaffold onto an existing repository of manifests:
177
+ .
178
+ .IP "" 4
179
+ .
180
+ .nf
181
+
182
+ $ rump scaffold another_clone
183
+ .
184
+ .fi
185
+ .
186
+ .IP "" 0
187
+ .
188
+ .P
189
+ Freeze Puppet and Facter:
190
+ .
191
+ .IP "" 4
192
+ .
193
+ .nf
194
+
195
+ $ rump freeze
196
+ Cloning into vendor/puppet\.\.\.
197
+ remote: Counting objects: 72007, done\.
198
+ remote: Compressing objects: 100% (22120/22120), done\.
199
+ remote: Total 72007 (delta 52640), reused 66470 (delta 48322)
200
+ Receiving objects: 100% (72007/72007), 12\.13 MiB | 253 KiB/s, done\.
201
+ Resolving deltas: 100% (52640/52640), done\.
202
+ Cloning into vendor/facter\.\.\.
203
+ remote: Counting objects: 4185, done\.
204
+ remote: Compressing objects: 100% (1930/1930), done\.
205
+ remote: Total 4185 (delta 2202), reused 3973 (delta 2095)
206
+ Receiving objects: 100% (4185/4185), 840\.81 KiB | 174 KiB/s, done\.
207
+ Resolving deltas: 100% (2202/2202), done\.
208
+ Freezing complete\.
209
+ .
210
+ .fi
211
+ .
212
+ .IP "" 0
213
+ .
214
+ .P
215
+ Freeze some other repository:
216
+ .
217
+ .IP "" 4
218
+ .
219
+ .nf
220
+
221
+ $ rump freeze moonshine https://github\.com/railsmachine/moonshine\.git
222
+ Cloning into vendor/moonshine\.\.\.
223
+ remote: Counting objects: 4122, done\.
224
+ remote: Compressing objects: 100% (1976/1976), done\.
225
+ remote: Total 4122 (delta 2190), reused 3730 (delta 1911)
226
+ Receiving objects: 100% (4122/4122), 543\.59 KiB | 58 KiB/s, done\.
227
+ Resolving deltas: 100% (2190/2190), done\.
228
+ Freezing complete\.
229
+ .
230
+ .fi
231
+ .
232
+ .IP "" 0
233
+ .
234
+ .P
235
+ Freeze Puppet at a particular version:
236
+ .
237
+ .IP "" 4
238
+ .
239
+ .nf
240
+
241
+ $ rump freeze puppet git://github\.com/puppetlabs/puppet\.git \-\-release=2\.6\.2
242
+ Cloning into /Users/auxesis/foobar/vendor/puppet\.\.\.
243
+ remote: Counting objects: 72007, done\.
244
+ remote: Compressing objects: 100% (22120/22120), done\.
245
+ remote: Total 72007 (delta 52640), reused 66470 (delta 48322)
246
+ Receiving objects: 100% (72007/72007), 12\.13 MiB | 238 KiB/s, done\.
247
+ Resolving deltas: 100% (52640/52640), done\.
248
+ Switched to a new branch \'2\.6\.2\'
249
+ Freezing complete\.
250
+ .
251
+ .fi
252
+ .
253
+ .IP "" 0
254
+ .
255
+ .P
256
+ Do a Puppet run:
257
+ .
258
+ .IP "" 4
259
+ .
260
+ .nf
261
+
262
+ $ rump go
263
+ You should probably be root when running this! Proceeding anyway\.\.\.
264
+ Using frozen Puppet from vendor/puppet\.
265
+ notice: Finished catalog run in 0\.01 seconds
266
+ .
267
+ .fi
268
+ .
269
+ .IP "" 0
270
+ .
271
+ .P
272
+ Do a Puppet run, and pass in arguments to Puppet:
273
+ .
274
+ .IP "" 4
275
+ .
276
+ .nf
277
+
278
+ $ rump go \-\-noop \-\-debug
279
+ You should probably be root when running this! Proceeding anyway\.\.\.
280
+ Using frozen Puppet from vendor/puppet\.
281
+ ruby \-I vendor/facter/lib \-I vendor/puppet/lib vendor/puppet/bin/puppet
282
+ \-\-modulepath modules \-\-confdir etc \-\-vardir var manifests/site\.pp \-\-noop \-\-debug
283
+ debug: Creating default schedules
284
+ debug: Failed to load library \'selinux\' for feature \'selinux\'
285
+ debug: Puppet::Type::File::ProviderMicrosoft_windows: feature microsoft_windows is missing
286
+ debug: Failed to load library \'ldap\' for feature \'ldap\'
287
+ debug: Failed to load library \'shadow\' for feature \'libshadow\'
288
+ \.\.\.
289
+ .
290
+ .fi
291
+ .
292
+ .IP "" 0
293
+ .
294
+ .P
295
+ Find out who the currently configured git user is:
296
+ .
297
+ .IP "" 4
298
+ .
299
+ .nf
300
+
301
+ $ rump whoami
302
+ Jane Doe <jane@example\.org>
303
+ .
304
+ .fi
305
+ .
306
+ .IP "" 0
307
+ .
308
+ .P
309
+ Set the git user:
310
+ .
311
+ .IP "" 4
312
+ .
313
+ .nf
314
+
315
+ $ rump whoami \'John Doe <john@example\.org>\'
316
+ .
317
+ .fi
318
+ .
319
+ .IP "" 0
320
+ .
321
+ .SH "AUTHOR"
322
+ Lindsay Holmwood \fIlindsay@holmwood\.id\.au\fR
323
+ .
324
+ .SH "COPYRIGHT"
325
+ Rump is copyright Rails Machine LLC\.
326
+ .
327
+ .SH "SEE ALSO"
328
+ puppet(8)
@@ -0,0 +1,308 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta http-equiv='content-type' value='text/html;charset=utf8'>
5
+ <meta name='generator' value='Ronn/v0.7.3 (http://github.com/rtomayko/ronn/tree/0.7.3)'>
6
+ <title>rump(1) - Rump</title>
7
+ <style type='text/css' media='all'>
8
+ /* style: man */
9
+ body#manpage {margin:0}
10
+ .mp {max-width:100ex;padding:0 9ex 1ex 4ex}
11
+ .mp p,.mp pre,.mp ul,.mp ol,.mp dl {margin:0 0 20px 0}
12
+ .mp h2 {margin:10px 0 0 0}
13
+ .mp > p,.mp > pre,.mp > ul,.mp > ol,.mp > dl {margin-left:8ex}
14
+ .mp h3 {margin:0 0 0 4ex}
15
+ .mp dt {margin:0;clear:left}
16
+ .mp dt.flush {float:left;width:8ex}
17
+ .mp dd {margin:0 0 0 9ex}
18
+ .mp h1,.mp h2,.mp h3,.mp h4 {clear:left}
19
+ .mp pre {margin-bottom:20px}
20
+ .mp pre+h2,.mp pre+h3 {margin-top:22px}
21
+ .mp h2+pre,.mp h3+pre {margin-top:5px}
22
+ .mp img {display:block;margin:auto}
23
+ .mp h1.man-title {display:none}
24
+ .mp,.mp code,.mp pre,.mp tt,.mp kbd,.mp samp,.mp h3,.mp h4 {font-family:monospace;font-size:14px;line-height:1.42857142857143}
25
+ .mp h2 {font-size:16px;line-height:1.25}
26
+ .mp h1 {font-size:20px;line-height:2}
27
+ .mp {text-align:justify;background:#fff}
28
+ .mp,.mp code,.mp pre,.mp pre code,.mp tt,.mp kbd,.mp samp {color:#131211}
29
+ .mp h1,.mp h2,.mp h3,.mp h4 {color:#030201}
30
+ .mp u {text-decoration:underline}
31
+ .mp code,.mp strong,.mp b {font-weight:bold;color:#131211}
32
+ .mp em,.mp var {font-style:italic;color:#232221;text-decoration:none}
33
+ .mp a,.mp a:link,.mp a:hover,.mp a code,.mp a pre,.mp a tt,.mp a kbd,.mp a samp {color:#0000ff}
34
+ .mp b.man-ref {font-weight:normal;color:#434241}
35
+ .mp pre {padding:0 4ex}
36
+ .mp pre code {font-weight:normal;color:#434241}
37
+ .mp h2+pre,h3+pre {padding-left:0}
38
+ ol.man-decor,ol.man-decor li {margin:3px 0 10px 0;padding:0;float:left;width:33%;list-style-type:none;text-transform:uppercase;color:#999;letter-spacing:1px}
39
+ ol.man-decor {width:100%}
40
+ ol.man-decor li.tl {text-align:left}
41
+ ol.man-decor li.tc {text-align:center;letter-spacing:4px}
42
+ ol.man-decor li.tr {text-align:right;float:right}
43
+ </style>
44
+ </head>
45
+ <!--
46
+ The following styles are deprecated and will be removed at some point:
47
+ div#man, div#man ol.man, div#man ol.head, div#man ol.man.
48
+
49
+ The .man-page, .man-decor, .man-head, .man-foot, .man-title, and
50
+ .man-navigation should be used instead.
51
+ -->
52
+ <body id='manpage'>
53
+ <div class='mp' id='man'>
54
+
55
+ <div class='man-navigation' style='display:none'>
56
+ <a href="#NAME">NAME</a>
57
+ <a href="#SYNOPSIS">SYNOPSIS</a>
58
+ <a href="#DESCRIPTION">DESCRIPTION</a>
59
+ <a href="#COMMANDS">COMMANDS</a>
60
+ <a href="#OPTIONS">OPTIONS</a>
61
+ <a href="#RETURN-VALUES">RETURN VALUES</a>
62
+ <a href="#QUIRKS">QUIRKS</a>
63
+ <a href="#EXAMPLES">EXAMPLES</a>
64
+ <a href="#AUTHOR">AUTHOR</a>
65
+ <a href="#COPYRIGHT">COPYRIGHT</a>
66
+ <a href="#SEE-ALSO">SEE ALSO</a>
67
+ </div>
68
+
69
+ <ol class='man-decor man-head man head'>
70
+ <li class='tl'>rump(1)</li>
71
+ <li class='tc'></li>
72
+ <li class='tr'>rump(1)</li>
73
+ </ol>
74
+
75
+ <h1>Rump</h1>
76
+ <h2 id="NAME">NAME</h2>
77
+
78
+ <p> rump - Do Puppet runs locally from a Git checkout</p>
79
+
80
+ <h2 id="SYNOPSIS">SYNOPSIS</h2>
81
+
82
+ <ul>
83
+ <li><code>rump</code> go [<var>puppet-options</var>]</li>
84
+ <li><code>rump</code> clone <var>repository</var> [directory]</li>
85
+ <li><code>rump</code> freeze [<var>project</var> <var>repository</var> --release=<var>release</var>]</li>
86
+ <li><code>rump</code> whoami [rfc2822-address]</li>
87
+ <li><code>rump</code> init <var>project</var></li>
88
+ <li><code>rump</code> scaffold <var>project</var></li>
89
+ </ul>
90
+
91
+
92
+ <h2 id="DESCRIPTION">DESCRIPTION</h2>
93
+
94
+ <p><strong>Rump</strong> helps you run Puppet locally against a Git checkout.</p>
95
+
96
+ <p>Rump supports a Puppet workflow where you quickly + iteratively develop your
97
+ Puppet manifests on a single machine, then push your changes up to a repository
98
+ to deploy to the rest of your infrastructure.</p>
99
+
100
+ <p>This workflow also complements a Capistrano or MCollective-style deployment,
101
+ where you remotely instruct Rump to check out a copy of the latest manifests
102
+ and run them.</p>
103
+
104
+ <p>Rump also has the ability to freeze Puppet in to the manifests repository,
105
+ letting you quickly test different versions of Puppet without waiting for
106
+ packages to appear, and reducing the dependencies on a system to run Puppet
107
+ down to just Ruby and git.</p>
108
+
109
+ <h2 id="COMMANDS">COMMANDS</h2>
110
+
111
+ <dl>
112
+ <dt class="flush"><code>clone</code></dt><dd><p>Clone a git repository of Puppet manifests.</p>
113
+
114
+ <p><var>repository</var> is the url of a git repository. Essentially invokes
115
+ <code>git clone</code>. If [directory] is specified, will clone the repository into
116
+ the specified directory.</p></dd>
117
+ <dt class="flush"><code>freeze</code></dt><dd><p>Freeze an arbitrary git repository into the current git repository as a
118
+ submodule under <code>vendor/</code>.</p>
119
+
120
+ <p>With no arguments, <code>freeze</code> will freeze in Puppet + Facter, to the latest
121
+ commit on master. This is especially useful if you want to track the latest
122
+ development release of Puppet.</p>
123
+
124
+ <p>If <var>project</var> and <var>repository</var> are specified, a git repository is cloned
125
+ and set up as a submodule under <code>vendor/</code>.</p>
126
+
127
+ <p>If <code>--release</code> is specified, <code>freeze</code> will create and switch to a branch
128
+ matching a particular tag or revision. Use this to lock to a specific
129
+ version of Puppet.</p>
130
+
131
+ <p>Once the repository is frozen in, switch between tagged releases by <code>cd</code>ing
132
+ to the repository under vendor and running <code>git checkout &lt;tag></code>.</p>
133
+
134
+ <p>Any repository frozen under <code>vendor/</code> will be added to the Puppet load path
135
+ when using <code>rump go</code>.</p></dd>
136
+ <dt class="flush"><code>go</code></dt><dd><p>Do a Puppet run. Assumes the current directory is a repository of Puppet
137
+ manifests.</p>
138
+
139
+ <p><var>puppet-options</var> are any options you can pass to <code>puppet</code> on the command
140
+ line (e.g. <code>--debug</code>, <code>--verbose</code>, <code>--tags foobar</code>).</p></dd>
141
+ <dt class="flush"><code>help</code></dt><dd><p>Display the man page.</p></dd>
142
+ <dt class="flush"><code>init</code></dt><dd><p>Initialise a repo of scaffolded Puppet manifests. Generates scaffolding for
143
+ a repository of Puppet manifests, and <code>git init</code>s the repository.</p></dd>
144
+ <dt><code>scaffold</code></dt><dd><p>Generate scaffolding for a repository of Puppet manifests, primed for Rump.</p>
145
+
146
+ <p>Called by <code>init</code>. You should never have to call this manually.</p></dd>
147
+ <dt class="flush"><code>whoami</code></dt><dd><p>Sets <code>user.name</code> and <code>user.email</code> using <code>git config</code>. Useful if you have
148
+ multiple users working with the repository from the same UNIX account.</p>
149
+
150
+ <p>If no arguments are specified, will output the currently configured name
151
+ and email.</p>
152
+
153
+ <p>If an argument is specified, treat the argument as an RFC2822 formatted
154
+ email address, e.g. John Doe <a href="&#109;&#x61;&#x69;&#x6c;&#116;&#x6f;&#58;&#106;&#111;&#104;&#x6e;&#x40;&#101;&#x78;&#97;&#109;&#112;&#108;&#x65;&#46;&#x6f;&#114;&#x67;" data-bare-link="true">&#106;&#111;&#104;&#110;&#x40;&#101;&#120;&#97;&#x6d;&#x70;&#x6c;&#101;&#x2e;&#111;&#x72;&#103;</a>. Sets <code>user.name</code> and
155
+ <code>user.email</code> with <code>git config</code>.</p>
156
+
157
+ <p>Modelled on <code>bzr whoami</code>.</p></dd>
158
+ </dl>
159
+
160
+
161
+ <h2 id="OPTIONS">OPTIONS</h2>
162
+
163
+ <dl>
164
+ <dt><code>--help|-h</code></dt><dd>Display the man page.</dd>
165
+ </dl>
166
+
167
+
168
+ <h2 id="RETURN-VALUES">RETURN VALUES</h2>
169
+
170
+ <ul>
171
+ <li><strong>0</strong>: Command completed successfully.</li>
172
+ <li><strong>1</strong>: Argument error.</li>
173
+ <li><strong>2</strong>: Subcommand error.</li>
174
+ <li><strong>3</strong>: Required frozen submodule doesn't exist.</li>
175
+ </ul>
176
+
177
+
178
+ <h2 id="QUIRKS">QUIRKS</h2>
179
+
180
+ <ol>
181
+ <li>Puppet's fileserver (<code>source =&gt; "puppet:///..."</code> on File resources) doesn't
182
+ behave as expected on Puppet &lt; 2.6. If you are using Puppet &lt; 2.6, all files
183
+ need to be templates.</li>
184
+ </ol>
185
+
186
+
187
+ <h2 id="EXAMPLES">EXAMPLES</h2>
188
+
189
+ <p>Initialise a Rump-ready Puppet repository:</p>
190
+
191
+ <pre><code>$ rump init barfoo
192
+ Initialized empty Git repository in barfoo/.git/
193
+ </code></pre>
194
+
195
+ <p>Clone a git repository of Puppet manifests:</p>
196
+
197
+ <pre><code>$ rump clone git@github.com:exampledotorg/manifests.git
198
+ </code></pre>
199
+
200
+ <p>Clone a git repository of Puppet manifests into a specific directory:</p>
201
+
202
+ <pre><code>$ rump clone git@github.com:exampledotorg/manifests.git another_clone
203
+ </code></pre>
204
+
205
+ <p>Graft a Rump scaffold onto an existing repository of manifests:</p>
206
+
207
+ <pre><code>$ rump scaffold another_clone
208
+ </code></pre>
209
+
210
+ <p>Freeze Puppet and Facter:</p>
211
+
212
+ <pre><code>$ rump freeze
213
+ Cloning into vendor/puppet...
214
+ remote: Counting objects: 72007, done.
215
+ remote: Compressing objects: 100% (22120/22120), done.
216
+ remote: Total 72007 (delta 52640), reused 66470 (delta 48322)
217
+ Receiving objects: 100% (72007/72007), 12.13 MiB | 253 KiB/s, done.
218
+ Resolving deltas: 100% (52640/52640), done.
219
+ Cloning into vendor/facter...
220
+ remote: Counting objects: 4185, done.
221
+ remote: Compressing objects: 100% (1930/1930), done.
222
+ remote: Total 4185 (delta 2202), reused 3973 (delta 2095)
223
+ Receiving objects: 100% (4185/4185), 840.81 KiB | 174 KiB/s, done.
224
+ Resolving deltas: 100% (2202/2202), done.
225
+ Freezing complete.
226
+ </code></pre>
227
+
228
+ <p>Freeze some other repository:</p>
229
+
230
+ <pre><code>$ rump freeze moonshine https://github.com/railsmachine/moonshine.git
231
+ Cloning into vendor/moonshine...
232
+ remote: Counting objects: 4122, done.
233
+ remote: Compressing objects: 100% (1976/1976), done.
234
+ remote: Total 4122 (delta 2190), reused 3730 (delta 1911)
235
+ Receiving objects: 100% (4122/4122), 543.59 KiB | 58 KiB/s, done.
236
+ Resolving deltas: 100% (2190/2190), done.
237
+ Freezing complete.
238
+ </code></pre>
239
+
240
+ <p>Freeze Puppet at a particular version:</p>
241
+
242
+ <pre><code>$ rump freeze puppet git://github.com/puppetlabs/puppet.git --release=2.6.2
243
+ Cloning into /Users/auxesis/foobar/vendor/puppet...
244
+ remote: Counting objects: 72007, done.
245
+ remote: Compressing objects: 100% (22120/22120), done.
246
+ remote: Total 72007 (delta 52640), reused 66470 (delta 48322)
247
+ Receiving objects: 100% (72007/72007), 12.13 MiB | 238 KiB/s, done.
248
+ Resolving deltas: 100% (52640/52640), done.
249
+ Switched to a new branch '2.6.2'
250
+ Freezing complete.
251
+ </code></pre>
252
+
253
+ <p>Do a Puppet run:</p>
254
+
255
+ <pre><code>$ rump go
256
+ You should probably be root when running this! Proceeding anyway...
257
+ Using frozen Puppet from vendor/puppet.
258
+ notice: Finished catalog run in 0.01 seconds
259
+ </code></pre>
260
+
261
+ <p>Do a Puppet run, and pass in arguments to Puppet:</p>
262
+
263
+ <pre><code>$ rump go --noop --debug
264
+ You should probably be root when running this! Proceeding anyway...
265
+ Using frozen Puppet from vendor/puppet.
266
+ ruby -I vendor/facter/lib -I vendor/puppet/lib vendor/puppet/bin/puppet
267
+ --modulepath modules --confdir etc --vardir var manifests/site.pp --noop --debug
268
+ debug: Creating default schedules
269
+ debug: Failed to load library 'selinux' for feature 'selinux'
270
+ debug: Puppet::Type::File::ProviderMicrosoft_windows: feature microsoft_windows is missing
271
+ debug: Failed to load library 'ldap' for feature 'ldap'
272
+ debug: Failed to load library 'shadow' for feature 'libshadow'
273
+ ...
274
+ </code></pre>
275
+
276
+ <p>Find out who the currently configured git user is:</p>
277
+
278
+ <pre><code>$ rump whoami
279
+ Jane Doe &lt;jane@example.org&gt;
280
+ </code></pre>
281
+
282
+ <p>Set the git user:</p>
283
+
284
+ <pre><code>$ rump whoami 'John Doe &lt;john@example.org&gt;'
285
+ </code></pre>
286
+
287
+ <h2 id="AUTHOR">AUTHOR</h2>
288
+
289
+ <p>Lindsay Holmwood <a href="&#109;&#x61;&#x69;&#x6c;&#116;&#x6f;&#x3a;&#108;&#x69;&#110;&#x64;&#115;&#x61;&#121;&#x40;&#x68;&#111;&#x6c;&#x6d;&#x77;&#x6f;&#x6f;&#100;&#46;&#x69;&#x64;&#x2e;&#97;&#117;" data-bare-link="true">&#108;&#105;&#110;&#x64;&#115;&#97;&#x79;&#x40;&#x68;&#x6f;&#108;&#x6d;&#x77;&#111;&#111;&#x64;&#x2e;&#105;&#x64;&#46;&#x61;&#117;</a></p>
290
+
291
+ <h2 id="COPYRIGHT">COPYRIGHT</h2>
292
+
293
+ <p>Rump is copyright Rails Machine LLC.</p>
294
+
295
+ <h2 id="SEE-ALSO">SEE ALSO</h2>
296
+
297
+ <p><span class="man-ref">puppet<span class="s">(8)</span></span></p>
298
+
299
+
300
+ <ol class='man-decor man-foot man foot'>
301
+ <li class='tl'></li>
302
+ <li class='tc'>February 2011</li>
303
+ <li class='tr'>rump(1)</li>
304
+ </ol>
305
+
306
+ </div>
307
+ </body>
308
+ </html>