- fix a couple of types
[myplc.git] / plc_config.xml
index 3a2ca3c..4210b72 100644 (file)
@@ -1,5 +1,15 @@
-<?xml version="1.0"?>
-<!DOCTYPE configuration PUBLIC "-//PlanetLab Central//DTD PLC configuration//EN" "configuration.dtd">
+<?xml version="1.0" encoding="utf-8"?>
+
+<!--
+Default PLC configuration file
+
+Mark Huang <mlhuang@cs.princeton.edu>
+Copyright (C) 2006 The Trustees of Princeton University
+
+$Id$
+-->
+
+<!DOCTYPE configuration PUBLIC "-//PlanetLab Central//DTD PLC configuration//EN" "plc_config.dtd">
 
 <configuration>
   <variables>
          <description>The abbreviated name of this PLC
          installation. It is used as the prefix for system slices
          (e.g., pl_conf). Warning: Currently, this variable should
-         not be changed once set.</description>
+         not be changed.</description>
        </variable>
 
-       <variable id="root_user" type="password">
+       <variable id="root_user" type="email">
          <name>Root Account</name>
          <value>root@test.planet-lab.org</value>
          <description>The name of the initial administrative
          and warnings.</description>
        </variable>
 
-       <variable id="support_address">
+       <variable id="support_address" type="email">
          <name>Support Address</name>
          <value>root@localhost</value>
          <description>This address is used for support
          Tracker.</description>
        </variable>
 
-       <variable id="boot_address">
+       <variable id="boot_address" type="email">
          <name>Boot Messages Address</name>
          <value>root@localhost</value>
          <description>The API will notify this address when a problem
          reachable by the rest of your installation.</description>
        </variable>
 
+       <variable id="port" type="int">
+         <name>Port</name>
+         <value>5432</value>
+         <description>The TCP port number through which the database
+         server should be accessed.</description>
+       </variable>
+
        <variable id="name" type="string">
          <name>Database Name</name>
          <value>planetlab3</value>
          <name>Authorized Hosts</name>
          <value></value>
          <description>A space-separated list of IP addresses allowed
-         to access the API through the maintenance account. If left
-         blank, the API, web, and boot servers are
-         allowed.</description>
+         to access the API through the maintenance account. The value
+         of this variable is set automatically to allow only the API,
+         web, and boot servers, and should not be
+         changed.</description>
        </variable>
 
        <!-- The following are not actually meant to be configurable
        <variable id="ssl_key" type="file">
          <name>SSL Key</name>
          <value>/etc/planetlab/api_ssl.key</value>
-         <description>The corresponding SSL private key. If not
-         specified or non-existent, a self-signed certificate will be
+         <description>The corresponding SSL private key used for
+         signing the certificate, and for signing slice tickets. If
+         not specified or non-existent, one will be
          generated.</description>
        </variable>
 
-       <variable id="ticket_key" type="file">
-         <name>Slice Ticket Private Key</name>
-         <value>/etc/planetlab/slice-ticket-key-nopass.pem</value>
-         <description>The private PEM key file used to sign slice
-         tickets.</description>
-       </variable>
-
-       <variable id="ticket_key_pub" type="file">
-         <name>Slice Ticket Public Key</name>
-         <value>/etc/planetlab/slice-ticket-key-public.pem</value>
-         <description>The public PEM key file used to verify signed
-         slice tickets.</description>
+       <variable id="ssl_key_pub" type="file">
+         <name>SSL Key</name>
+         <value>/etc/planetlab/api_ssl.pub</value>
+         <description>The corresponding SSL public key. If not
+         specified or non-existent, one will be
+         generated.</description>
        </variable>
       </variablelist>
     </category>
          <name>SSL Key</name>
          <value>/etc/planetlab/www_ssl.key</value>
          <description>The corresponding SSL private key. If not
-         specified or non-existent, a self-signed certificate will be
+         specified or non-existent, one will be
          generated.</description>
        </variable>
       </variablelist>
          <name>SSL Key</name>
          <value>/etc/planetlab/boot_ssl.key</value>
          <description>The corresponding SSL private key. If not
-         specified or non-existent, a self-signed certificate will be
+         specified or non-existent, one will be
          generated.</description>
        </variable>
       </variablelist>
       <description>PlanetLab Central Packages</description>
       <uservisible>true</uservisible>
       <packagelist>
+       <!-- Basics -->
+       <packagereq type="mandatory">dev</packagereq>   
+
+       <!-- kernel-vserver is intended for the vserver-reference, but
+            serves the same useful purpose for MyPLC, namely, to
+            Provide: kernel without actually installing anything. -->
+       <packagereq type="mandatory">kernel-vserver</packagereq>        
+
        <!-- Sending mail -->
        <packagereq type="mandatory">sendmail</packagereq>
        <packagereq type="mandatory">sendmail-cf</packagereq>
        <packagereq type="mandatory">cvs</packagereq>
        <packagereq type="mandatory">curl</packagereq>
        <packagereq type="mandatory">wget</packagereq>
+       <packagereq type="mandatory">less</packagereq>
+       <packagereq type="mandatory">gzip</packagereq>
+       <packagereq type="mandatory">bzip2</packagereq>
+       <packagereq type="mandatory">cpio</packagereq>
+       <packagereq type="mandatory">tar</packagereq>
+       <packagereq type="mandatory">diffutils</packagereq>
 
        <!-- yum >=2.2 uses a new repository format -->
        <packagereq type="mandatory">createrepo</packagereq>
+       <packagereq type="mandatory">yum</packagereq>
+       <packagereq type="mandatory">rpm</packagereq>
 
        <!-- For mkpasswd -->
        <packagereq type="mandatory">expect</packagereq>
 
+       <!-- For ssh-keygen -->
+       <packagereq type="mandatory">openssh</packagereq>
+
        <!-- Almost all scripts are written in Python -->
        <packagereq type="mandatory">python</packagereq>
 
        <packagereq type="mandatory">xmlsec1-openssl</packagereq>
        <packagereq type="mandatory">openssl</packagereq>
 
-       <!-- bootcd is generated using mkisofs -->
-       <packagereq type="mandatory">mkisofs</packagereq>
-
-       <!-- bootcd and bootmanager images are signed using GPG -->
-       <packagereq type="mandatory">gnupg</packagereq>
-
-       <!-- bootmanager requires uuencode -->
-       <packagereq type="mandatory">sharutils</packagereq>
+       <!-- Customizable Boot CD and Boot Manager packages -->
+       <packagereq type="mandatory">bootcd</packagereq>
+       <packagereq type="mandatory">bootmanager</packagereq>
       </packagelist>
     </group>