# Mark Huang <mlhuang@cs.princeton.edu>
# Copyright (C) 2006 The Trustees of Princeton University
#
-# $Id: api,v 1.4 2006/06/23 21:41:31 mlhuang Exp $
+# $Id$
#
# Source function library and configuration
. /etc/plc.d/functions
. /etc/planetlab/plc_config
+local_config=/etc/planetlab/configs/site.xml
# Be verbose
set -x
MESSAGE=$"Configuring the API"
dialog "$MESSAGE"
- # Generate old DB configuration file
- ln -sf plc_config /etc/planetlab/plc_db
-
# Make sure that the API maintenance account is protected by a
# password.
if [ -z "$PLC_API_MAINTENANCE_PASSWORD" ] ; then
PLC_API_MAINTENANCE_PASSWORD=$(uuidgen)
- plc-config --category=plc_api --variable=maintenance_password --value="$PLC_API_MAINTENANCE_PASSWORD" --save
+ plc-config --category=plc_api --variable=maintenance_password --value="$PLC_API_MAINTENANCE_PASSWORD" --save=$local_config $local_config
+ service plc reload
fi
# Make sure that all PLC servers are allowed to access the API
# through the maintenance account.
- PLC_API_MAINTENANCE_SOURCES=$(
+ PLC_API_MAINTENANCE_SOURCES=($((
+ for ip in $PLC_API_MAINTENANCE_SOURCES ; do
+ echo $ip
+ done
for server in API BOOT WWW ; do
hostname=PLC_${server}_HOST
gethostbyname ${!hostname}
- done | sort -u
- )
- plc-config --category=plc_api --variable=maintenance_sources --value="$PLC_API_MAINTENANCE_SOURCES" --save
-
- # Generate old API configuration file
- api-config
- check
+ done
+ ) | sort -u))
+ PLC_API_MAINTENANCE_SOURCES=${PLC_API_MAINTENANCE_SOURCES[*]}
+ plc-config --category=plc_api --variable=maintenance_sources --value="$PLC_API_MAINTENANCE_SOURCES" --save=$local_config $local_config
+ service plc reload
result "$MESSAGE"
;;