source: ProjectBuilder/devel/pb-modules/etc/pb.conf.pod@ 1176

Last change on this file since 1176 was 1176, checked in by Bruno Cornec, 13 years ago

r4160@eelzbach2: bruno | 2011-02-06 13:30:39 +0100

  • Adds support for Remote Machines (RM). Not tested yet.
File size: 31.0 KB
Line 
1=pod
2
3=head1 NAME
4
5Documentation for pb configuration files
6
7=head1 DESCRIPTION
8
9pb helps you build various packages directly from your project sources.
10In order to work correctly, it relies on a certain number of configuration files. Most of these configuration parameters can be setup in all the configuration files, however, they generally make more sense in a specific one, which is indicated. There are mainly 4 configuration files, the one in the home directory of the user (used first), the one from the project (use in second), the one in the VM/VE hosting directory, and the one provided by the tool in /etc/pb or /usr/local/etc/pb (lastly).
11
12=head1 SYNOPSIS
13
14Those files have the same format, which is near from a a perl hash structure:
15keyword key = value1[,value2,...]
16
17The key could be also default, in which case it will be used as a default value if no more precise content is given for the key.
18
19Each value is detailed below giving the nature of its use (Mandatory or Optional - only used for certain feature), the value of the key (could be the project, an OS name, default, ...), the value of the parameter field and its format, the default configuration file in which it should be defined (home $HOME/.pbrc, conf /etc/pb/pb.conf or /usr/local/etc/pb/pb.conf, VE vepath/.pbrc, VM vmpath/.pbrc, or project project.pb) and an example of use.
20
21=head1 OPTIONS
22
23=over 4
24
25=item B<defpkgdir>
26
27 Nature: Mandatory
28 Key: project (as defined in the -p option or PBPROJ environment variable)
29 Value: coma separated list of packages built by default in this project. When not using any package name as a parameter to pb commands, this list will be used.
30 Conffile: project
31 Example: defpkgdir mondorescue = mondo,mindi NB: a default value is not really meaningful.
32
33=item B<delivery>
34
35 Nature: Optional
36 Key: project (as defined in the -p option or PBPROJ environment variable)
37 Value: directory where to deliver packages once built for ftp/web access.
38 Conffile: project
39 Example: delivery mondorescue = prod
40
41=item B<extpkgdir>
42
43 Nature: Optional
44 Key: project (as defined in the -p option or PBPROJ environment variable)
45 Value: coma separated list of packages built in addition in this project. When using the all package name as a parameter to pb commands, this list will be used, in addition to the defpkgdir list.
46 Conffile: project
47 Example: extpkgdir mondorescue = mondo-doc,mindi-mindibusybox
48
49=item B<filteredfiles>
50
51 Nature: Optional
52 Key: package (as provided in defpkgdir or extpkgdir)
53 Value: coma separated list of files that will be filtered using the macro system from pb, during the creation of the compressed source tar files for this package. Their path is relative to the directory containing the package.
54 Conffile: project
55 Example: filteredfiles mindi = rootfs/sbin/init,mindi,install.sh,doc/mindi.8
56
57=item B<namingtype>
58
59 Nature: Optional
60 Key: package (as provided in defpkgdir or extpkgdir)
61 Value: perl, if packages are CPAN perl modules that need to be named respecting the distribution perl convention (perl-Name for rpm, libname-perl for deb)
62 Conffile: project
63 Example: namingtype ProjectBuilder = perl
64
65=item B<osambiguous>
66
67 Nature: Optional
68 Key: OS (could be from the most generic up to the most specific from ostype, osfamily, os, os-ver, os-ver-arch). In that case, should be an OS name.
69 Value: coma separated list of distributions which use the same file name in /etc for different distributions (ex: /etc/redhat-release for redhat, rhel, mandriva,...). Cf: B<osrelambfile>
70 Conffile: pb
71 Example: osambiguous debian = debian,ubuntu
72
73=item B<oschkcmd>
74
75 Nature: Optional
76 Key: OS (could be from the most generic up to the most specific from ostype, osfamily, os, os-ver, os-ver-arch).
77 Value: package checker tool.
78 Conffile: pb
79 Example: oschkcmd deb = /usr/bin/lintian
80
81=item B<oschkopt>
82
83 Nature: Optional
84 Key: OS (could be from the most generic up to the most specific from ostype, osfamily, os, os-ver, os-ver-arch).
85 Value: package checker tool options.
86 Conffile: pb
87 Example: oschkcmd rpm = -i
88
89=item B<oscmd>
90
91 Nature: Mandatory
92 Key: tool (pb or rpmbootstrap)
93 Value: come separated list of commands that are mandatory on the underlying system
94 Conffile: pb
95 Example: oscmd pb = tar,ls
96
97=item B<oscmdopt>
98
99 Nature: Mandatory
100 Key: tool (pb or rpmbootstrap)
101 Value: come separated list of commands that are optional on the underlying system
102 Conffile: pb
103 Example: oscmd pb = svn2cl,svn,cvs
104
105=item B<oscodename>
106
107 Nature: Optional
108 Key: OS (could be from the most generic up to the most specific from ostype, osfamily, os, os-ver, os-ver-arch). In that case, should be an os-ver.
109 Value: code name. Mostly useful for debian and ubuntu, due to debootstrap.
110 Conffile: pb
111 Example: oscodename debian-5.0 = lenny
112
113=item B<osfamily>
114
115 Nature: Mandatory
116 Key: OS (could be from the most generic up to the most specific from ostype, osfamily, os, os-ver, os-ver-arch). In that case, should be an os.
117 Value: OS family name (used to group similar distribution for handling)
118 Conffile: pb
119 Example: osfamily debian = du
120
121=item B<osins>
122
123 Nature: Optional
124 Key: OS (could be from the most generic up to the most specific from ostype, osfamily, os, os-ver, os-ver-arch). The family name is generaly used here.
125 Value: OS command to lauch in order to automatically install packages on it.
126 Conffile: pb
127 Example: osins fedora = sudo yum -y install
128
129=item B<osmindep>
130
131 Nature: Optional
132 Key: OS (could be from the most generic up to the most specific from ostype, osfamily, os, os-ver, os-ver-arch). NB: a default value is highly interesting here.
133 Value: coma separated list of packages needed before setupvm|ve can be run. Install them with your distribution in VM or automatically in VE when possible.
134 Conffile: pb
135 Example: osmindep default = perl,sudo,wget,tar,make,gzip
136
137=item B<osnover>
138
139 Nature: Optional
140 Key: OS (could be from the most generic up to the most specific from ostype, osfamily, os, os-ver, os-ver-arch).
141 Value: true|false. True means that this OS has no need to keep the version
142 Conffile: pb
143 Example: osnover gentoo = true
144
145=item B<osperldep>
146
147 Nature: Optional
148 Key: OS (could be from the most generic up to the most specific from ostype, osfamily, os, os-ver, os-ver-arch).
149 Value: coma separated list of perl modules needed by pb and not provided in a package format for the relative OS, and that will be installed from CPAN in your VM/VE.
150 Conffile: pb
151 Example: osperldep rhel-5 = Module-Build,File-MimeInfo,File-BaseDir,Mail-Sendmail
152
153=item B<osperlver>
154
155 Nature: Mandatory (for each module mentioned in B<osperldep>)
156 Key: Perl Module (as defined in B<osperldep>)
157 Value: Version of the perl module that needs to be found on CPAN.
158 Conffile: pb
159 Example: Date-Manip = 5.54
160
161=item B<ospkg>
162
163 Nature: Optional (Mandatory if pbinstalltype is pkg)
164 Key: OS (could be from the most generic up to the most specific from ostype, osfamily, os, os-ver, os-ver-arch).
165 Value: coma separated list of packages that have to be installed in order for pb to be operational in the VE|VM
166 Conffile: pb
167 Example: ospkg rhel-5 = project-builder
168
169=item B<ospkgdep>
170
171 Nature: Optional
172 Key: OS (could be from the most generic up to the most specific from ostype, osfamily, os, os-ver, os-ver-arch).
173 Value: coma separated list of packages that are needed by pb and should be installed automatically in the VM/VE during the setupvm|ve phasis by pb.
174 Conffile: pb
175 Example: ospkgdep rhel-5 = wget,make,ntp,patch,perl-DateManip
176
177=item B<osrelambfile>
178
179 Nature: Mandatory (per OS mentioned in B<osambiguous>)
180 Key: OS (could be from the most generic up to the most specific from ostype, osfamily, os, os-ver, os-ver-arch). Should be the OS name here.
181 Value: full path name of the ambiguous file describing that distribution, as well as some others. All the distributions mentioned here should also be mentioned with their ambiguous other distribution in the B<osambiguous> parameter.
182 Conffile: pb
183 Example: osrelambfile debian = /etc/debian_version
184
185=item B<osrelexpr>
186
187 Nature: Mandatory (per OS mentioned in B<osrelambfile> and B<osrelfile>)
188 Key: OS (could be from the most generic up to the most specific from ostype, osfamily, os, os-ver, os-ver-arch).
189 Value: the perl regular expression used to parse the B<osrelambfile> in order to extract from it the version of the distribution (in parenthesis to allow its usage as $1 by perl)
190 Conffile: pb
191osrelexpr rhel = Red Hat (?:Enterprise Linux|Linux Advanced Server) .*release ([0-9.]+).* \(
192 Example:
193
194=item B<osrelfile>
195
196 Nature: Mandatory
197 Key: OS (could be from the most generic up to the most specific from ostype, osfamily, os, os-ver, os-ver-arch). Should be the OS name here.
198 Value: full path name of the file describing non-ambiguously that distribution. There should be a bijection between the file and the distribution name.
199 Conffile: pb
200 Example: osrelfile fedora = /etc/fedora-release
201
202=item B<osremovedotinver>
203
204 Nature: Optional
205 Key: OS (could be from the most generic up to the most specific from ostype, osfamily, os, os-ver, os-ver-arch).
206 Value: true|false. If true, then no '.' (dot) character is kept in the version name of that OS.
207 Conffile: pb
208 Example: osremovedotinver redhat = true
209
210=item B<osrepo>
211
212 Nature: Optional (Mandatory if pbinstalltype is pkg)
213 Key: OS (could be from the most generic up to the most specific from ostype, osfamily, os, os-ver, os-ver-arch).
214 Value: coma separated list of packages or repo file to be added to the VE|VM to support package installation of pb
215 Conffile: pb
216 Example: osrepo rpm = ftp://ftp.project-builder.org/$ddir/$dver/pb.repo
217
218=item B<ossuffix>
219
220 Nature: Optional
221 Key: OS (could be from the most generic up to the most specific from ostype, osfamily, os, os-ver, os-ver-arch).
222 Value: suffix that will be used in the name of the packages created. By default, concatenation of OS name and version.
223 Conffile: pb
224 Example: ossuffix mandriva = mdv
225
226=item B<ostype>
227
228 Nature: Mandatory
229 Key: OS (could be from the most generic up to the most specific from ostype, osfamily, os, os-ver, os-ver-arch). The family name is generaly used here.
230 Value: build type grouping packages family. This is used internaly by pb to make various handling depending on that build type.
231 Conffile: pb
232 Example: ostype rh = rpm, ostype md = rpm, ostype novell = rpm
233
234=item B<osupd>
235
236 Nature: Optional
237 Key: OS (could be from the most generic up to the most specific from ostype, osfamily, os, os-ver, os-ver-arch). The family name is generaly used here.
238 Value: OS command to lauch in order to automatically update th VM|VE
239 Conffile: pb
240 Example: osupd fedora = sudo yum -y update
241
242=item B<pbconfurl>
243
244 Nature: Mandatory
245 Key: project (as defined in the -p option or PBPROJ environment variable)
246 Value: B<pb URL> giving access to where the pb configuration dir is stored. Under that directory you have the same tree infrastructure as the upstream project, and under the pb packaging infra, including the project configuration file. Cf: man
247 Conffile: home|project
248 Example: pbconfurl fossology = svn+ssh://user@svn.project-builder.org/mondo/svn/pb/projects/fossology/pbconf, cvs+ssh://:ext:user@linuxcoe.cvs.sourceforge.net:/cvsroot/linuxcoe/pbconf
249
250=item B<pbdefdir>
251
252 Nature: Optional
253 Key: project (as defined in the -p option or PBPROJ environment variable)
254 Value: local directory under which every pb related operation will take place. if not defined then /var/cache. A default value is highly interesting here. If you want to use VMs/VEs, then use $ENV{'HOME'} to make it portable to it.
255 Conffile: home
256 Example: pbdefdir default = $ENV{'HOME'}/local/pb/projects
257
258=item B<pbinstalltype>
259
260 Nature: Mandatory
261 Key: project (as defined in the -p option or PBPROJ environment variable)
262 Value: file or pkg. Indicates how pb will be installed during the setupve|vm phase in the virtual environment|machine, using CPAN files or upstream packages. Only the dev team needs to use file as packages do not yet exist for it. Or when no repository exists to pull project-builder.org from.
263 Conffile: pb
264
265=item B<pbml>
266
267 Nature: Optional (Mandatory if using announce command)
268 Key: project (as defined in the -p option or PBPROJ environment variable)
269 Value: white space separated list of e-mail adresses used to send announces with the pb announce option.
270 Conffile: project
271 Example: pbml pb = pb-announce@project-builder.org pb-devel@project-builder.org
272
273=item B<pbpackager>
274
275 Nature: Mandatory
276 Key: project (as defined in the -p option or PBPROJ environment variable)
277 Value: Firstname Name and e-mail address of the person packaging the software.
278 Conffile: project
279 Example: pbpackager pb = Bruno Cornec <bruno@project-builder.org>
280
281=item B<pbparallel>
282
283 Nature: Optional
284 Key: tool (pb or rpmbootstrap)
285 Value: number of processes to execute in parallel. By default use the number of cores.
286 Conffile: pb
287 Example: pbparallel pb = 12
288
289=item B<pbprojdir>
290
291 Nature: Optional
292 Key: project (as defined in the -p option or PBPROJ environment variable)
293 Value: local directory under which the project is locally exported. NB: a default value is highly interesting here. By default pbdefdir/projectname
294 Conffile: home
295 Example: pbprojdir mondorescue = $ENV{'HOME'}/local/mondorescue
296
297=item B<pbrepo>
298
299 Nature: Mandatory
300 Key: project (as defined in the -p option or PBPROJ environment variable)
301 Value: URL of the server hosting the upstream tar file.
302 Conffile: project
303 Example: pbrepo mondorescue = ftp://ftp.mondorescue.org
304
305=item B<pbsmtp>
306
307 Nature: Optional (Mandatory if using the announce command)
308 Key: project (as defined in the -p option or PBPROJ environment variable)
309 Value: FQDN of the mail server to use to send announces. NB: a default value is highly interesting here.
310 Conffile: home
311 Example: pbsmtp mondorescue = localhost
312
313=item B<pbsockscmd>
314
315 Nature: Optional
316 Key: project (as defined in the -p option or PBPROJ environment variable)
317 Value: name of the command to use to socksify network calls. NB: a default value is highly interesting here.
318 Conffile: home
319 Example: pbsockscmd default = tsocks
320
321=item B<pburl>
322
323 Nature: Optional
324 Key: project (as defined in the -p option or PBPROJ environment variable)
325 Value: B<pb URL> giving access to where the project is stored. Normaly provided by the project, but could be overloaded for specific authentication information in the home configuration file or when using a DVCS
326 Conffile: home|project
327 Example: pburl linuxcoe = cvs+ssh://:ext:user@linuxcoe.cvs.sourceforge.net:/cvsroot/linuxcoe, pburl pb = svk:////local/pb
328
329=item B<pbwf>
330
331 Nature: Optional
332 Key: project (as defined in the -p option or PBPROJ environment variable)
333 Value: whatever. As soon as this is defined, then that project is known as not well formed (have a subdirectory in its tar file under which all sources are put named project-version). This should be reported upstream to the project. tar files generated by project-builder to not suffer from that. This is valid when packaging for tar files and not CMS.
334 Conffile: project
335 Example: pbwf afio = 1
336
337=item B<pkgtag>
338
339 Nature: Optional
340 Key: package (as provided in defpkgdir or extpkgdir)
341 Value: Tag that needs to be used in package name (on rpm: name-ver-tag.arch.rpm). Useful when different from the project version B<projtag> and when republishing a package due to package build modification (not code).
342 Conffile: project
343 Example: pkgtag mindi-busybox = 2
344
345=item B<pkgver>
346
347 Nature: Optional
348 Key: package (as provided in defpkgdir or extpkgdir)
349 Value: Version that needs to be used in package name (on rpm: name-ver-tag.arch.rpm). Useful when different from the project version B<projver>.
350 Conffile: project
351 Example: pkgver mindi-busybox = 1.7.3
352
353=item B<projtag>
354
355 Nature: Mandatory
356 Key: project (as defined in the -p option or PBPROJ environment variable)
357 Value: tag that will be used for all packages names (on rpm: name-ver-tag.arch.rpm) in the project. Each package can overwrite it using B<pkgtag>.
358 Conffile: project
359 Example: projtag mondorescue = 1
360
361=item B<projver>
362
363 Nature: Mandatory
364 Key: project (as defined in the -p option or PBPROJ environment variable)
365 Value: version that will be used for all packages names (on rpm: name-ver-tag.arch.rpm) in the project. Each package can overwrite it using B<pkgver>.
366 Conffile: project
367 Example: projver mondorescue = 2.2.9
368
369=item B<rbsconf>
370
371 Nature: Optional
372 Key: project (as defined in the -p option or PBPROJ environment variable)
373 Value: for mock it's the configuration directory. For rinse it's its configuration file. For rpmbootstrap it's not used yet.
374 Conffile: ve
375 Example: rbsconf default = /etc/mock, rbsconf default = /etc/pb/pb-rinse.conf
376
377=item B<rbsb4pi>
378
379 Nature: Optional
380 Key: OS (could be from the most generic up to the most specific from ostype, osfamily, os, os-ver, os-ver-arch). The family name is generaly used here.
381 Value: for mock it's not used. For rinse it's the script to call before doing installation (in order change the mirror location). For rpmbootstrap it's not used yet.
382 Conffile: ve
383 Example: rbsb4pi centos = /home/rinse/bin/before-post-install.sh
384
385=item B<rbsopt>
386
387 Nature: Optional
388 Key: tool used for rpm based VE. Could be one of rpmbootstrap, rinse, mock, ...
389 Value: Additional option to pass to the command
390 Conffile: ve
391 Example: rbsopt rpmbootstrap = -k
392
393=item B<rbspi>
394
395 Nature: Optional
396 Key: OS (could be from the most generic up to the most specific from ostype, osfamily, os, os-ver, os-ver-arch). The family name is generaly used here.
397 Value: for mock it's not used. For rinse it's the script to call after doing installation for customization. For rpmbootstrap it's the script to call after doing installation for customization.
398 Conffile: ve
399 Example: rbspi centos = /home/rinse/bin/post-install.sh
400
401=item B<rmhost>
402
403 Nature: Mandatory
404 Key: OS (could be from the most generic up to the most specific from ostype, osfamily, os, os-ver, os-ver-arch). The family name is generaly used here.
405 Value: IP address or name of the Remote Machine running the OS mentioned in the key, accessed through ssh.
406 Conffile: rm
407 Example: rmhost default = localhost - rmhost hpux-11.3-ia64 = 10.10.10.10 - rmhost mandriva-2010.2-x86_64 = machine1.domain.name
408
409=item B<rmlist>
410
411 Nature: Mandatory
412 Key: project (as defined in the -p option or PBPROJ environment variable)
413 Value: list of coma separated OS (under the form of os-ver-arch). The corresponding machines running these distributions are given in the rmpool parameter.
414 Conffile: rm
415 Example: rmlist default = mandriva-2010.2-i386,fedora-14-i386,rhel-6-i386,rhel-5-i386,pensuse-11.3-i386,sles-11-i386,gentoo-nover-i386,debian-5.0-i386,ubuntu-10.10-i386,solaris-10-i386,mandriva-2010.2-x86_64,fedora-14-x86_64,rhel-6-x86_64,rhel-5-x86_64,opensuse-11.3-x86_64,sles-11-x86_64,gentoo-nover-x86_64,debian-5.0-x86_64,ubuntu-10.10-x86_64,solaris-10-x86_64,hp-ux-11.3-ia64,rhel-5-ia64
416
417=item B<rmlogin>
418
419 Nature: Mandatory
420 Key: project (as defined in the -p option or PBPROJ environment variable)
421 Value: account name to use on the Remote Machine to build packages. Communication is done with ssh.
422 Conffile: rm
423 Example: rmlogin default = pb
424
425=item B<rmmonport>
426
427 Nature: Optional
428 Key: project (as defined in the -p option or PBPROJ environment variable)
429 Value: TCP port that is used to dialog with the monitor of the Remote Machine, to pass orders.
430 Conffile: rm
431 Example: rmmonport default = 4444
432
433=item B<rmntp>
434
435 Nature: Optional
436 Key: project (as defined in the -p option or PBPROJ environment variable)
437 Value: NTP server to contact for time accuracy with B<rmntpcmd> before building.
438 Conffile: rm
439 Example: rmntp default = 1.pool.ntp.org
440
441=item B<rmntpcmd>
442
443 Nature: Optional
444 Key: project (as defined in the -p option or PBPROJ environment variable)
445 Value: NTP command to use to perform time synchronization with the B<rmntp> server.
446 Conffile: rm
447 Example: rmntpcmd default = /usr/sbin/ntpdate,rmntpcmd opensuse-10.1-i386 = sntp -P no -r
448
449=item B<rmpath>
450
451 Nature: Mandatory
452 Key: project (as defined in the -p option or PBPROJ environment variable)
453 Value: path where to find configuration file for Remote Machines management.
454 Conffile: rm
455 Example: rmpath default = /home/remote
456
457=item B<rmport>
458
459 Nature: Mandatory
460 Key: project (as defined in the -p option or PBPROJ environment variable)
461 Value: port number to use to communicate with the RM using the SSH protocol. This localport is redirected to the port 22 of the RM.
462 Conffile: rm
463 Example: rmport pb = 2222,rmport mondorescue = 2223
464
465=item B<rmtmout>
466
467 Nature: Optional
468 Key: OS (could be from the most generic up to the most specific from ostype, osfamily, os, os-ver, os-ver-arch). The family name is generaly used here.
469 Value: Time in seconds to wait before interacting with the VM. This should correspond to the time the VM takes to boot.
470 Conffile: rm
471 Example: rmtmout default = 180
472
473=item B<rmtype>
474
475 Nature: Mandatory
476 Key: project (as defined in the -p option or PBPROJ environment variable)
477 Value: ssh. For the moment, only ssh is supported as a communication means with RM.
478 Conffile: rm
479 Example: rmrtype default = ssh
480
481
482=item B<supfiles>
483
484Not used yet.
485
486=item B<testver>
487
488 Nature: Optional
489 Key: project (as defined in the -p option or PBPROJ environment variable)
490 Value: true (meaning this is a test version, whose tag will be generated automatically, based on 0+date in order to allow regular updates, and still be inferior to tag 1 of the official version, and delivered under the test subdirectory of the ftp server). By default false.
491 Conffile: project
492 Example: testver mondorescue = true
493
494=item B<vedebtype>
495
496 Nature: Mandatory
497 Key: project (as defined in the -p option or PBPROJ environment variable)
498 Value: debootstrap (no other tool to create deb distro based chroot)
499 Conffile: ve
500 Example: vedebtype default = debootstrap
501
502=item B<velist>
503
504 Nature: Mandatory
505 Key: project (as defined in the -p option or PBPROJ environment variable)
506 Value: list of coma separated OS (under the form of os-ver-arch).
507 Conffile: ve
508 Example: velist default = centos-4-i386,centos-5-i386,centos-4-x86_64,centos-5-x86_64,debian-5.0-i386,debian-5.0-x86_64,lsb-4.0.1-i386,lsb-4.0.1-x86_64
509
510=item B<velogin>
511
512 Nature: Mandatory
513 Key: project (as defined in the -p option or PBPROJ environment variable)
514 Value: account name to use in the VE to build packages.
515 Conffile: ve
516 Example: velogin default = pb
517
518=item B<ventp>
519
520 Nature: Optional
521 Key: project (as defined in the -p option or PBPROJ environment variable)
522 Value: NTP server to contact for time accuracy with B<ventpcmd> before building.
523 Conffile: ve
524 Example: ventp default = 1.pool.ntp.org
525
526=item B<ventpcmd>
527
528 Nature: Optional
529 Key: project (as defined in the -p option or PBPROJ environment variable)
530 Value: NTP command to use to perform time synchronization with the B<ventp> server.
531 Conffile: ve
532 Example: ventpcmd default = /usr/sbin/ntpdate
533
534=item B<vepath>
535
536 Nature: Mandatory
537 Key: project (as defined in the -p option or PBPROJ environment variable)
538 Value: path where to find VEs. Ve will be created and used under that path. For each VE os-ver-arch, it will create a subdirectory tree os/ver/arch below that point.
539 Conffile: ve
540 Example: vepath default = /home/rpmbootstrap
541
542=item B<verebuild>
543
544 Nature: Optional
545 Key: project (as defined in the -p option or PBPROJ environment variable)
546 Value: true|false. True means that the VE should be rebuild before usage.
547 Conffile: ve
548 Example: ventpcmd default = /usr/sbin/ntpdate
549
550=item B<verpmtype>
551
552 Nature: Mandatory
553 Key: project (as defined in the -p option or PBPROJ environment variable)
554 Value: rpmbootstrap|rinse|mock (different tools to create a chroot environment for RPM based distributions. rpmbootstrap comes with pb. the 2 others are separate projects).
555 Conffile: ve
556 Example: verpmtype default = rpmbootstrap
557
558=item B<vesnap>
559
560 Nature: Optional
561 Key: project (as defined in the -p option or PBPROJ environment variable)
562 Value: true|false. True means that the snapshot of the VE should be used before call to the VE. This snapshot consists of a compressed tar pf the VE. Which means that you will always start from a known state, resulting of a former snapshot operation on the VE. Also speeds up a lot the VM launch operation.
563 Conffile: ve
564 Example: vesnap default = true
565
566=item B<vetype>
567
568 Nature: Mandatory
569 Key: project (as defined in the -p option or PBPROJ environment variable)
570 Value: chroot|schroot. There are two different ways of launching a chroot activity in pb. For the moment only chroot has been tested.
571 Conffile: ve
572 Example: vertype default = chroot
573
574=item B<vmbuildtm>
575
576 Nature: Optional
577 Key: OS (could be from the most generic up to the most specific from ostype, osfamily, os, os-ver, os-ver-arch). Default value is set to vmtmout
578 Value: Time in seconds to wait before killing the VM if SSH port already used. This should corresponds to the time to send files, build the project and get packages in the VM.
579 Conffile: project
580 Example: vmbuildtm default = 600,vmbuildtm mandriva-2009.0-x86_64 = 1200
581
582=item B<vmcmd>
583
584 Nature: Mandatory
585 Key: OS (could be from the most generic up to the most specific from ostype, osfamily, os, os-ver, os-ver-arch). NB: a default value is highly interesting here.
586 Value: Command to call to launch the VM emulator. It can contain some options. Another way to pass options to the VM manager command launcher is by using the PBVMOPT environment variable, which comes in addition to the option vmopt.
587 Conffile: vm
588 Example: vmcmd default = /usr/bin/kvm
589
590
591=item B<vmhost>
592
593 Nature: Mandatory
594 Key: project (as defined in the -p option or PBPROJ environment variable)
595 Value: hostname to connect to in order to reach the VM through ssh. Generally redirected from a port on localhost.
596 Conffile: vm
597 Example: vmhost default = localhost
598
599=item B<vmlist>
600
601 Nature: Mandatory
602 Key: project (as defined in the -p option or PBPROJ environment variable)
603 Value: list of coma separated OS (under the form of os-ver-arch).
604 Conffile: vm
605 Example: vmlist default = asianux-2-i386,asianux-3-i386,mandrake-10.1-i386,mandrake-10.2-i386,mandriva-2006.0-i386,mandriva-2007.0-i386,mandriva-2007.1-i386,mandriva-2008.0-i386,mandriva-2008.1-i386,mandriva-2009.0-i386,mandriva-2009.1-i386,mandriva-2010.0-i386,redhat-7.3-i386,redhat-9-i386,fedora-4-i386,fedora-5-i386,fedora-6-i386,fedora-7-i386,fedora-8-i386,fedora-9-i386,fedora-10-i386,fedora-11-i386,fedora-12-i386,rhel-2.1-i386,rhel-3-i386,rhel-4-i386,rhel-5-i386,suse-10.0-i386,suse-10.1-i386,suse-10.2-i386,opensuse-10.3-i386,opensuse-11.0-i386,opensuse-11.1-i386,opensuse-11.2-i386,sles-9-i386,sles-10-i386,sles-11-i386,gentoo-nover-i386,debian-3.1-i386,debian-4.0-i386,debian-5.0-i386,ubuntu-6.06-i386,ubuntu-7.04-i386,ubuntu-7.10-i386,ubuntu-8.04-i386,ubuntu-8.10-i386,ubuntu-9.04-i386,ubuntu-9.10-i386,solaris-10-i386,asianux-2-x86_64,asianux-3-x86_64,mandriva-2007.0-x86_64,mandriva-2007.1-x86_64,mandriva-2008.0-x86_64,mandriva-2008.1-x86_64,mandriva-2009.0-x86_64,mandriva-2009.1-x86_64,mandriva-2010.0-x86_64,fedora-6-x86_64,fedora-7-x86_64,fedora-8-x86_64,fedora-9-x86_64,fedora-10-x86_64,fedora-11-x86_64,fedora-12-x86_64,rhel-3-x86_64,rhel-4-x86_64,rhel-5-x86_64,suse-10.2-x86_64,opensuse-10.3-x86_64,opensuse-11.0-x86_64,opensuse-11.1-x86_64,opensuse-11.2-x86_64,sles-10-x86_64,sles-11-x86_64,gentoo-nover-x86_64,debian-4.0-x86_64,debian-5.0-x86_64,ubuntu-7.04-x86_64,ubuntu-7.10-x86_64,ubuntu-8.04-x86_64,ubuntu-8.10-x86_64,ubuntu-9.04-x86_64,ubuntu-9.10-x86_64,solaris-10-x86_64
606
607=item B<vmlogin>
608
609 Nature: Mandatory
610 Key: project (as defined in the -p option or PBPROJ environment variable)
611 Value: account name to use in the VM to build packages. Communication is done with ssh.
612 Conffile: vm
613 Example: vmlogin default = pb
614
615=item B<vmmem>
616
617 Nature: Optional
618 Key: project (as defined in the -p option or PBPROJ environment variable)
619 Value: Memory size in MB to allocate to the VM.
620 Conffile: vm
621 Example: vmmem default = 512
622
623=item B<vmmonport>
624
625 Nature: Optional
626 Key: project (as defined in the -p option or PBPROJ environment variable)
627 Value: TCP port that is used to dialog with the monitor of the VM, to pass orders such as snapshot. Not really operational yet.
628 Conffile: vm
629 Example: vmmonport default = 4444
630
631=item B<vmntp>
632
633 Nature: Optional
634 Key: project (as defined in the -p option or PBPROJ environment variable)
635 Value: NTP server to contact for time accuracy with B<vmntpcmd> before building.
636 Conffile: vm
637 Example: vmntp default = 1.pool.ntp.org
638
639=item B<vmntpcmd>
640
641 Nature: Optional
642 Key: project (as defined in the -p option or PBPROJ environment variable)
643 Value: NTP command to use to perform time synchronization with the B<vmntp> server.
644 Conffile: vm
645 Example: vmntpcmd default = /usr/sbin/ntpdate,vmntpcmd opensuse-11.0-i386 = sntp -P no -r
646
647=item B<vmopt>
648
649 Nature: Optional
650 Key: OS (could be from the most generic up to the most specific from ostype, osfamily, os, os-ver, os-ver-arch). NB: a default value is highly interesting here.
651 Value: list of options to pass to the VM manager command launcher for that distribution. Another way to pass options to the VM manager command launcher is by using the PBVMOPT environment variable, which comes in addition to his option.
652 Conffile: vm
653 Example: vmopt default = -m 384 -daemonize,vmopt mandriva-2009.0-i386 = -m 256 -daemonize -no-kvm
654
655=item B<vmpath>
656
657 Nature: Mandatory
658 Key: project (as defined in the -p option or PBPROJ environment variable)
659 Value: path where to find VMs. They will be created and used under that path. For each VM os-ver-arch, it will create a os-ver-arch.qemu file below that point.
660 Conffile: vm
661 Example: vmpath default = /home/qemu
662
663=item B<vmport>
664
665 Nature: Mandatory
666 Key: project (as defined in the -p option or PBPROJ environment variable)
667 Value: port number to use to communicate with the VM using the SSH protocol. This localport is redirected to the port 22 of the VM.
668 Conffile: vm
669 Example: vmport pb = 2222,vmport mondorescue = 2223
670
671=item B<vmsize>
672
673 Nature: Mandatory
674 Key: project (as defined in the -p option or PBPROJ environment variable)
675 Value: Size of the VM to create when using the newvm command of pb.
676 Conffile: vm
677 Example: vmsize default = 7G
678
679=item B<vmsnap>
680
681 Nature: Optional
682 Key: project (as defined in the -p option or PBPROJ environment variable)
683 Value: true|false. True means that the snapshot of the VM called pb should be used. Which means that you will always start from a known state, resulting of a former snapshot operation on the VM. Also speeds up a lot the VM launch operation.
684 Conffile: vm
685 Example: vmsnap default = true
686
687=item B<vmtmout>
688
689 Nature: Optional
690 Key: OS (could be from the most generic up to the most specific from ostype, osfamily, os, os-ver, os-ver-arch). NB: a default value is highly interesting here.
691 Value: Time in seconds to wait before interacting with the VM. This should correspond to the time the VM takes to boot.
692 Conffile: vm
693 Example: vmtmout default = 180,vmtmout mandriva-2009.0-x86_64 = 500
694
695=item B<vmtype>
696
697 Nature: Mandatory
698 Key: project (as defined in the -p option or PBPROJ environment variable)
699 Value: qemu|kvm. For the moment, only QEMU or KVM are supported as virtualization technologies.
700 Conffile: vm
701 Example: vmrtype default = kvm
702
703=item B<webdir>
704
705 Nature: Optional
706 Key: project (as defined in the -p option or PBPROJ environment variable)
707 Value: Target directory containing the web content in the project that should be delivered when using the sbx|cms2webssh|pkg command of pb.
708 Conffile: project
709 Example: webdir mondorescue = website
710
711=back
712
713=head1 OTHER PARAMETERS
714=item B<pb_URL>
715=item B<pb_directory_desc>
716=item B<pb_environment_variables>
Note: See TracBrowser for help on using the repository browser.