Remove references to the multiple config files
Only refer to heat.conf in the docs and scripts. For install.sh copy the iniset() function from devstack to assist in setting some semi-sane defaults. Change-Id: I933891e35103c003f1272bc89c7b42d2ad76697b
This commit is contained in:
parent
752da8e0c1
commit
ae28bf4c89
@ -63,7 +63,7 @@ start_mysql_server() {
|
||||
|
||||
MYSQL_HEAT_PW_DEFAULT="heat"
|
||||
MYSQL_HEAT_PW=${MYSQL_HEAT_PW_DEFAULT}
|
||||
HEAT_CONFIG="/etc/heat/heat-engine.conf"
|
||||
HEAT_CONFIG="/etc/heat/heat.conf"
|
||||
ASSUME_YES=""
|
||||
ELEVATE=""
|
||||
|
||||
|
@ -111,9 +111,7 @@ In the heat directory, run the install script::
|
||||
|
||||
If running OpenStack grizzly installed via tools/openstack, it is necessary to modify the default service user password::
|
||||
|
||||
sudo sed -i "s/verybadpass/secrete/" /etc/heat/heat-api-cfn.conf
|
||||
sudo sed -i "s/verybadpass/secrete/" /etc/heat/heat-api-cloudwatch.conf
|
||||
sudo sed -i "s/verybadpass/secrete/" /etc/heat/heat-api.conf
|
||||
sudo sed -i "s/verybadpass/secrete/" /etc/heat/heat.conf
|
||||
|
||||
Source the keystone credentials created with tools/openstack
|
||||
------------------------------------------------------------
|
||||
@ -186,9 +184,10 @@ The heat engine configuration file should be updated with the address of the bri
|
||||
|
||||
::
|
||||
|
||||
sudo sed -i -e "/heat_metadata_server_url/ s/127\.0\.0\.1/${BRIDGE_IP}/" /etc/heat/heat-engine.conf
|
||||
sudo sed -i -e "/heat_waitcondition_server_url/ s/127\.0\.0\.1/${BRIDGE_IP}/" /etc/heat/heat-engine.conf
|
||||
sudo sed -i -e "/heat_watch_server_url/ s/127\.0\.0\.1/${BRIDGE_IP}/" /etc/heat/heat-engine.conf
|
||||
sudo sed -i -e "/^\[DEFAULT\]/ a\\\nheat_metadata_server_url=http://${BRIDGE_IP}:8000/\n" /etc/heat/heat.conf
|
||||
sudo sed -i -e "/^\[DEFAULT\]/ a\\\nheat_waitcondition_server_url=http://${BRIDGE_IP}:8000/v1/waitcondition/" /etc/heat/heat.conf
|
||||
sudo sed -i -e "/^\[DEFAULT\]/ a\\\nheat_watch_server_url=http://${BRIDGE_IP}:8003/" /etc/heat/heat.conf
|
||||
|
||||
|
||||
Launch the Heat services
|
||||
------------------------
|
||||
|
@ -101,9 +101,7 @@ Modify configuration for admin password
|
||||
Later a keystone user called '''heat''' will be created. At this point a password for that user needs to be chosen.
|
||||
The following files will need editing:
|
||||
|
||||
- /etc/heat/heat-api-cfn.conf
|
||||
- /etc/heat/heat-api-cloudwatch.conf
|
||||
- /etc/heat/heat-api.conf
|
||||
- /etc/heat/heat.conf
|
||||
|
||||
::
|
||||
|
||||
|
@ -36,4 +36,4 @@ OPTIONS
|
||||
FILES
|
||||
========
|
||||
|
||||
* /etc/heat/heat-api-cfn.conf
|
||||
* /etc/heat/heat.conf
|
||||
|
@ -30,4 +30,4 @@ OPTIONS
|
||||
FILES
|
||||
========
|
||||
|
||||
* /etc/heat/heat-api-cloudwatch.conf
|
||||
* /etc/heat/heat.conf
|
||||
|
@ -36,4 +36,4 @@ OPTIONS
|
||||
FILES
|
||||
========
|
||||
|
||||
* /etc/heat/heat-api.conf
|
||||
* /etc/heat/heat.conf
|
||||
|
@ -35,4 +35,4 @@ OPTIONS
|
||||
FILES
|
||||
========
|
||||
|
||||
* /etc/heat/heat-engine.conf
|
||||
* /etc/heat/heat.conf
|
||||
|
@ -7,7 +7,7 @@ pipeline = faultwrap versionnegotiation authtoken context apiv1app
|
||||
# ie. uses alternative auth backend that authenticates users against keystone
|
||||
# using username and password instead of validating token (which requires
|
||||
# an admin/service token).
|
||||
# To enable, in heat-api.conf:
|
||||
# To enable, in heat.conf:
|
||||
# [paste_deploy]
|
||||
# flavor = standalone
|
||||
#
|
||||
@ -15,7 +15,7 @@ pipeline = faultwrap versionnegotiation authtoken context apiv1app
|
||||
pipeline = faultwrap versionnegotiation authpassword context apiv1app
|
||||
|
||||
# heat-api pipeline for custom cloud backends
|
||||
# i.e. in heat-api.conf:
|
||||
# i.e. in heat.conf:
|
||||
# [paste_deploy]
|
||||
# flavor = custombackend
|
||||
#
|
||||
|
@ -27,7 +27,7 @@ if __name__ == '__main__':
|
||||
config = ConfigParser.SafeConfigParser()
|
||||
try:
|
||||
config = ConfigParser.SafeConfigParser()
|
||||
config.readfp(open('/etc/heat/heat-engine.conf'))
|
||||
config.readfp(open('/etc/heat/heat.conf'))
|
||||
sql_connection = config.get('DEFAULT', 'sql_connection')
|
||||
except Exception:
|
||||
sql_connection = 'mysql://heat:heat@localhost/heat'
|
||||
|
71
install.sh
71
install.sh
@ -35,16 +35,60 @@ detect_rabbit() {
|
||||
return 1
|
||||
}
|
||||
|
||||
sed_if_rabbit() {
|
||||
DEFAULT_RABBIT_PASSWORD="guest"
|
||||
# Determinate is the given option present in the INI file
|
||||
# ini_has_option config-file section option
|
||||
function ini_has_option() {
|
||||
local file=$1
|
||||
local section=$2
|
||||
local option=$3
|
||||
local line
|
||||
line=$(sed -ne "/^\[$section\]/,/^\[.*\]/ { /^$option[ \t]*=/ p; }" "$file")
|
||||
[ -n "$line" ]
|
||||
}
|
||||
|
||||
# Set an option in an INI file
|
||||
# iniset config-file section option value
|
||||
function iniset() {
|
||||
local file=$1
|
||||
local section=$2
|
||||
local option=$3
|
||||
local value=$4
|
||||
if ! grep -q "^\[$section\]" "$file"; then
|
||||
# Add section at the end
|
||||
echo -e "\n[$section]" >>"$file"
|
||||
fi
|
||||
if ! ini_has_option "$file" "$section" "$option"; then
|
||||
# Add it
|
||||
sed -i -e "/^\[$section\]/ a\\
|
||||
$option = $value
|
||||
" "$file"
|
||||
else
|
||||
# Replace it
|
||||
sed -i -e "/^\[$section\]/,/^\[.*\]/ s|^\($option[ \t]*=[ \t]*\).*$|\1$value|" "$file"
|
||||
fi
|
||||
}
|
||||
|
||||
basic_configuration() {
|
||||
conf_path=$1
|
||||
if echo $conf_path | grep ".conf$" >/dev/null 2>&1
|
||||
then
|
||||
iniset $target DEFAULT auth_encryption_key `hexdump -n 16 -v -e '/1 "%02x"' /dev/random`
|
||||
iniset $target DEFAULT db_backend heat.db.sqlalchemy.api
|
||||
iniset $target DEFAULT sql_connection "mysql://heat:heat@localhost/heat"
|
||||
|
||||
BRIDGE_IP=127.0.0.1
|
||||
iniset $target DEFAULT heat_metadata_server_url "http://${BRIDGE_IP}:8000/"
|
||||
iniset $target DEFAULT heat_waitcondition_server_url "http://${BRIDGE_IP}:8000/v1/waitcondition/"
|
||||
iniset $target DEFAULT heat_watch_server_url "http://${BRIDGE_IP}:8003/"
|
||||
|
||||
if detect_rabbit
|
||||
then
|
||||
echo "rabbitmq detected, configuring $conf_path for rabbit" >&2
|
||||
sed -i "/^rpc_backend\b/ s/impl_qpid/impl_kombu/" $conf_path
|
||||
sed -i "/^rpc_backend/a rabbit_password=$DEFAULT_RABBIT_PASSWORD" $conf_path
|
||||
iniset $conf_path DEFAULT rpc_backend heat.openstack.common.rpc.impl_kombu
|
||||
iniset $conf_path DEFAULT rabbit_password guest
|
||||
else
|
||||
echo "qpid detected, configuring $conf_path for qpid" >&2
|
||||
iniset $conf_path DEFAULT rpc_backend heat.openstack.common.rpc.impl_qpid
|
||||
fi
|
||||
fi
|
||||
}
|
||||
@ -55,19 +99,22 @@ install_dir() {
|
||||
|
||||
for fn in $(ls $dir); do
|
||||
f=$dir/$fn
|
||||
target=$prefix/$f
|
||||
if [ $fn = 'heat.conf.sample' ]; then
|
||||
target=$prefix/$dir/heat.conf
|
||||
fi
|
||||
if [ -d $f ]; then
|
||||
[ -d $prefix/$f ] || install -d $prefix/$f
|
||||
[ -d $target ] || install -d $target
|
||||
install_dir $f $prefix
|
||||
elif [ -f $prefix/$f ]; then
|
||||
echo "NOT replacing existing config file $prefix/$f" >&2
|
||||
diff -u $prefix/$f $f
|
||||
elif [ -f $target ]; then
|
||||
echo "NOT replacing existing config file $target" >&2
|
||||
diff -u $target $f
|
||||
else
|
||||
echo "Installing $fn in $prefix/$dir" >&2
|
||||
install -m 664 $f $prefix/$dir
|
||||
if [ $fn = 'heat-engine.conf' ]; then
|
||||
sed -i "s/%ENCRYPTION_KEY%/`hexdump -n 16 -v -e '/1 "%02x"' /dev/random`/" $prefix/$f
|
||||
install -m 664 $f $target
|
||||
if [ $fn = 'heat.conf.sample' ]; then
|
||||
basic_configuration $target
|
||||
fi
|
||||
sed_if_rabbit $prefix/$f
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user