1 We've tried to isolate the distro-dependent configurations from the code
3 Most of the .pgks files are optional to define a new distro:
4 missing files are searched in the planetlab distro
6 ========== build environment
8 that defines the contents of the build -- see Makefile
9 ./build/<pldistro>-tags.mk
10 that defines the svn locations of the various modules
11 ./build/<pldistro>-install.mk
12 optional make file to define the install target
14 ========== kernel config
15 ./Linux-2.6/configs/kernel-2.6.<n>-<arch>-<pldistro>.config
16 (subject to change location in the future)
18 ========== various system images
19 ./build/config.<pldistro>/devel.pkgs
20 set of packages required for building
21 ./build/config.<pldistro>/bootcd.pkgs
22 contents of the bootcd image
23 ./build/config.<pldistro>/bootstrapfs.pkgs
24 the standard contents of the node root
25 used to generate yumgroups.xml
26 ./build/config.<pldistro>/bootstrapfs.pkgs
27 specification for the contents of the core for the node
29 this results in a tarball (tar.bz2)
30 ./build/config.<pldistro>/bootstrapfs-*.pkgs
31 each of these files results in an extension tarball
32 ./build/config.<pldistro>/myplc.pkgs
33 contents of the myplc image
34 ./build/config.<pldistro>/vserver.pkgs
35 the contents of the standard vserver reference image
36 ./build/config.<pldistro>/vserver-*.pkgs
37 all *.pkgs files here - produce additional vserver images
38 ./build/config.<pldistro>/vtest.pkgs
39 used to create test vservers for myplc-native
42 as of this writing extensions are managed as follows:
43 - at node installation, the tarball produced from bootstrapfs.pkgs is
44 downloaded and untared to produce the core node setup
45 - then we attempt to install an extension corresponding to each of the
46 nodegroups that the node is part of
47 - the first method is to try and download a tarball named after the
48 extension. such tarballs are produced by the build from a .pkgs file,
50 - if that fails, then the extension install is attempted through a
51 yum groupinstall extension<nodegroup>