Changeset 987 in ProjectBuilder


Ignore:
Timestamp:
Feb 23, 2010, 8:21:51 AM (14 years ago)
Author:
Bruno Cornec
Message:

r3703@localhost: bruno | 2010-02-21 07:08:00 +0100

  • verebuild non mandatory, cleanup + doc
  • vepkglist => vemindep
  • pb.conf doc again continued
Location:
devel
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • devel/pb-doc/pb.conf.pod

    r986 r987  
    305305Example: rbsb4pi centos = /home/rinse/bin/before-post-install.sh
    306306
     307=item B<rbspi>
     308
     309Nature: Optional
     310Key: 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.
     311Value: 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.
     312Conffile: ve
     313Example: pbrpi centos = /home/rinse/bin/post-install.sh
     314
    307315=item B<supfiles>
    308316
     
    341349Example: velogin default = pb
    342350
     351=item B<vemindep>
     352
     353Nature: Optional
     354Key: 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 per OS family is interesting here.
     355Value: coma separated list of packages needed before pb can be run in the VE. Installed automatically in setupve phase.
     356Conffile: ve
     357Example: vemindep rpm = rpm-build,diffutils,ntpdate, vemindep deb = diff
     358
    343359=item B<ventp>
    344360
     
    359375=item B<vepath>
    360376
    361 Nature: Optional
     377Nature: Mandatory
    362378Key: project (as defined in the -p option or PBPROJ environment variable)
    363379Value: 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.
     
    365381Example: vepath default = /home/rpmbootstrap
    366382
    367 =item B<vepi>
    368 =item B<vepkglist>
    369383=item B<verebuild>
     384
     385Nature: Optional
     386Key: project (as defined in the -p option or PBPROJ environment variable)
     387Value: true|false. True means that the VE should be rebuild before usage.
     388Conffile: ve
     389Example: ventpcmd default = /usr/sbin/ntpdate
     390
    370391=item B<verpmtype>
     392
     393Nature: Mandatory
     394Key: project (as defined in the -p option or PBPROJ environment variable)
     395Value: rpmbootstrap|rinse|mock (different tools to create a chroot environment for RPM based distributions. rpmbootstrap comes with pb. the 2 others are separate projects).
     396Conffile: ve
     397Example: verpmtype default = rpmbootstrap
     398
    371399=item B<vesnap>
    372400=item B<vetmout>
     
    383411
    384412=item B<vmlogin>
     413
     414Nature: Mandatory
     415Key: project (as defined in the -p option or PBPROJ environment variable)
     416Value: account name to use in the VM to build packages. Communication is done with ssh.
     417Conffile: vm
     418Example: vmlogin default = pb
     419
    385420=item B<vmmonport>
    386421=item B<vmntp>
     422
     423Nature: Optional
     424Key: project (as defined in the -p option or PBPROJ environment variable)
     425Value: NTP server to contact for time accuracy with B<vmntpcmd> before building.
     426Conffile: vm
     427Example: vmntp default = 1.pool.ntp.org
     428
    387429=item B<vmntpcmd>
     430
     431Nature: Optional
     432Key: project (as defined in the -p option or PBPROJ environment variable)
     433Value: NTP command to use to perform time synchronization with the B<vmntp> server.
     434Conffile: vm
     435Example: vmntpcmd default = /usr/sbin/ntpdate,vmntpcmd opensuse-11.0-i386 = sntp -P no -r
     436
    388437=item B<vmopt>
    389438=item B<vmpath>
     439
     440Nature: Mandatory
     441Key: project (as defined in the -p option or PBPROJ environment variable)
     442Value: 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.
     443Conffile: vm
     444Example: vmpath default = /home/qemu
     445
    390446=item B<vmport>
    391447=item B<vmsize>
  • devel/pb/bin/pb

    r986 r987  
    11571157    my $port = "sshport";
    11581158    my $conf = "sshconf";
    1159     my $rebuild = "sshrebuild";
    11601159    my $tmout = undef;
    11611160    my $path = undef;
     
    11631162        $login = "vmlogin";
    11641163        $dir = "pbdefdir";
    1165         $rebuild = "vmrebuild";
    11661164        # Specific VM
    11671165        $tmout = "vmtmout";
     
    11751173        $path = "vepath";
    11761174        $conf = "rbsconf";
    1177         $rebuild = "verebuild";
    11781175    } elsif ($cmt eq "Web") {
    11791176        $host = "websshhost";
     
    12491246
    12501247    pb_log(0,"Sources handled ($cmt): $src\n");
    1251     pb_log(2,"values: ".Dumper(($host,$login,$dir,$port,$tmout,$rebuild,$path,$conf))."\n");
     1248    pb_log(2,"values: ".Dumper(($host,$login,$dir,$port,$tmout,$path,$conf))."\n");
    12521249    my ($sshhost,$sshlogin,$sshdir,$sshport) = pb_conf_get($host,$login,$dir,$port);
    12531250    # Not mandatory...
    1254     my ($vrebuild,$rbsconf,$testver) = pb_conf_get_if($rebuild,$conf,"testver");
     1251    my ($rbsconf,$testver) = pb_conf_get_if($conf,"testver");
    12551252    my ($vtmout,$vepath);
    12561253    # ...Except those in virtual context
     
    12611258        ($vtmout) = pb_conf_get($tmout);
    12621259    }
    1263     pb_log(2,"ssh: ".Dumper(($sshhost,$sshlogin,$sshdir,$sshport,$vtmout,$vrebuild,$vepath,$rbsconf))."\n");
     1260    pb_log(2,"ssh: ".Dumper(($sshhost,$sshlogin,$sshdir,$sshport,$vtmout,$vepath,$rbsconf))."\n");
    12641261
    12651262    my $mac;
     
    17421739
    17431740        # Get VE context
    1744         my ($ptr,$vetmout,$vepath,$verebuild,$rbsconf) = pb_conf_get("vetype","vetmout","vepath","verebuild","rbsconf");
     1741        my ($ptr,$vetmout,$vepath,$rbsconf) = pb_conf_get("vetype","vetmout","vepath","rbsconf");
    17451742        my $vetype = $ptr->{$ENV{'PBPROJ'}};
    17461743
    17471744        # We can probably only get those params now we have the distro context
    1748         my ($rbsb4pi,$rbspi,$vesnap,$oscodename,$vepkglist,$osmindep) = pb_conf_get_if("rbsb4pi","rbspi","vesnap","oscodename","vepkglist","osmindep");
     1745        my ($rbsb4pi,$rbspi,$vesnap,$oscodename,$osmindep,$verebuild) = pb_conf_get_if("rbsb4pi","rbspi","vesnap","oscodename","osmindep","verebuild");
    17491746
    17501747        if (($vetype eq "chroot") || ($vetype eq "schroot")) {
     
    17551752
    17561753            my ($verpmtype,$vedebtype) = pb_conf_get("verpmtype","vedebtype");
    1757             if (($create != 0) || ($verebuild->{$ENV{'PBPROJ'}} =~ /true/i) || ($pbforce == 1)) {
     1754            if (($create != 0) || ((defined $verebuild) && ($verebuild->{$ENV{'PBPROJ'}} =~ /true/i)) || ($pbforce == 1)) {
    17581755                # We have to rebuild the chroot
    17591756                if ($dtype eq "rpm") {
     
    17751772                        $postparam = "";
    17761773                        $postparam .= pb_distro_get_param($ddir,$dver,$darch,$osmindep);
    1777                         $postparam .= ",";
    1778                         $postparam .= pb_distro_get_param($ddir,$dver,$darch,$vepkglist);
    1779                         if ($postparam eq ",") {
     1774                        if ($postparam eq "") {
    17801775                            $addpkgs = "";
    17811776                        } else {
     
    18101805                    my $addpkgs;
    18111806                    $postparam .= pb_distro_get_param($ddir,$dver,$darch,$osmindep);
    1812                     $postparam .= ",";
    1813                     $postparam .= pb_distro_get_param($ddir,$dver,$darch,$vepkglist);
    1814                     if ($postparam eq ",") {
     1807                    if ($postparam eq "") {
    18151808                        $addpkgs = "";
    18161809                    } else {
     
    22252218        # once this is done, we can do what we want on the VM remotely
    22262219    } elsif ($vtype eq "ve") {
    2227         # We need to finish the setup of packages needed in the VE if needed
     2220        # We need to finish the setup of packages needed in the VE
    22282221        # rinse/debootstrap at least needs it
    2229         my ($vepkglist,$osmindep) = pb_conf_get_if("vepkglist","osmindep");
     2222        my ($vemindep) = pb_conf_get_if("vemindep");
    22302223
    22312224        my $postparam = "";
    2232         if (defined $osmindep) {
    2233             $postparam .= pb_distro_get_param($ddir,$dver,$darch,$osmindep);
    2234         }
    2235         if (defined $vepkglist) {
    2236             $postparam .= " ".pb_distro_get_param($ddir,$dver,$darch,$vepkglist);
     2225        if (defined $vemindep) {
     2226            $postparam .= " ".pb_distro_get_param($ddir,$dver,$darch,$vemindep);
    22372227        }
    22382228        # Change the list of pkg in to a space separated list
  • devel/rpmbootstrap/etc/.pbrc

    r986 r987  
    1616# Special for rinse: script to launch before populating the VE
    1717rbsb4pi centos = /home/rinse/bin/before-post-install.sh
    18 # Additional packages to install
    19 vepkglist centos = rpm-build,diffutils,ntpdate
    20 vepkglist deb = diff
     18# Additional packages to install for pb to build packages in VE
     19vemindep rpm = rpm-build,diffutils,ntpdate
     20vemindep deb = diff
    2121
    2222verebuild default = false
Note: See TracChangeset for help on using the changeset viewer.