3 # Builds MyPLC, either inside the MyPLC development environment in
4 # devel/root (if PLC_DEVEL_BOOTSTRAP is true), or in the current host
5 # environment (may be itself a MyPLC development environment or a
6 # Fedora environment with the appropriate development packages
9 # Marc E. Fiuczynski <mef@cs.princeton.edu>
10 # Copyright (C) 2007 The Trustees of Princeton University
17 # XXX .spec file needs to have the appropriate set of requires statements
19 # Install configuration scripts
20 echo "* myplc-native: Installing configuration scripts"
25 echo "* myplc-native: installing plc_config.py in /usr/share/myplc"
26 install -D -m 755 plc_config.py ${tmpdir}/usr/share/myplc/plc_config.py
27 install -D -m 755 plc-config ${tmpdir}/usr/bin/plc-config
28 install -D -m 755 plc-config-tty ${tmpdir}/usr/bin/plc-config-tty
29 install -D -m 755 db-config ${tmpdir}/usr/bin/db-config
30 install -D -m 755 dns-config ${tmpdir}/usr/bin/dns-config
31 install -D -m 755 plc-map.py ${tmpdir}/usr/bin/plc-map.py
32 install -D -m 755 plc-kml.py ${tmpdir}/usr/bin/plc-kml.py
33 install -D -m 755 refresh-peer.py ${tmpdir}/usr/bin/refresh-peer.py
34 install -D -m 755 clean-empty-dirs.py ${tmpdir}/usr/bin/clean-empty-dirs.py
35 install -D -m 755 mtail.py ${tmpdir}/usr/bin/mtail.py
36 install -D -m 755 check-ssl-peering.py ${tmpdir}/usr/bin/check-ssl-peering.py
37 # Extra scripts (mostly for mail and dns) not installed by myplc by default. Used in production
38 mkdir -p ${tmpdir}/etc/support-scripts
39 cp support-scripts/* ${tmpdir}/etc/support-scripts
40 # copy initscripts to etc/plc_sliceinitscripts
41 mkdir -p ${tmpdir}/etc/plc_sliceinitscripts
42 cp plc_sliceinitscripts/* ${tmpdir}/etc/plc_sliceinitscripts
45 echo "* myplc-native: Installing initscripts"
46 find plc.d | cpio -p -d -u ${tmpdir}/etc/
47 install -D -m 755 guest.init ${tmpdir}/etc/init.d/plc
49 # fetch the release stamp from the build if any
50 if [ -f ../../../myplc-release ] ; then
51 cp ../../../myplc-release myplc-release
53 echo "Cannot find release information." > myplc-release
55 echo "$HeadURL$" >> myplc-release
57 # install it in /etc/myplc-release
58 install -m 444 myplc-release ${tmpdir}/etc/myplc-release
60 # Install configuration file
61 echo "* myplc: Installing configuration file"
62 install -D -m 444 default_config.xml ${tmpdir}/etc/planetlab/default_config.xml
63 install -D -m 444 plc_config.dtd ${tmpdir}/etc/planetlab/plc_config.dtd
65 # Initialize node RPMs directory. The PlanetLab-Bootstrap.tar.bz2
66 # tarball already contains all of the node RPMs pre-installed. Only
67 # updates or optional packages should be placed in this directory.
68 nodefamily=${pldistro}-${pl_DISTRO_ARCH}
69 install -D -m 644 $pl_DISTRO_YUMGROUPS \
70 ${tmpdir}/var/www/html/install-rpms/$nodefamily/yumgroups.xml
71 # temporary - so that node update still work until yum.conf.php gets fixed
72 ( cd ${tmpdir}/var/www/html/install-rpms ; ln -s $nodefamily planetlab)