Xen: support Ubuntu Xenial for xen DevStack
Upgrade xen tool to install Ubuntu Xenial; change the upstart task to systemd task to finish the OpenStack installation by using devstack. Change-Id: I8129923be3c41e7f60e9d32348a5ea8e07d4845b
This commit is contained in:
parent
7a30c7fcab
commit
6e49cab091
@ -96,48 +96,27 @@ mkdir -p $STAGING_DIR/opt/stack/devstack
|
||||
tar xf /tmp/devstack.tar -C $STAGING_DIR/opt/stack/devstack
|
||||
cd $TOP_DIR
|
||||
|
||||
# Create an upstart job (task) for devstack, which can interact with the console
|
||||
cat >$STAGING_DIR/etc/init/devstack.conf << EOF
|
||||
start on stopped rc RUNLEVEL=[2345]
|
||||
# Create an systemd task for devstack
|
||||
cat >$STAGING_DIR/etc/systemd/system/devstack.service << EOF
|
||||
[Unit]
|
||||
Description=Install OpenStack by DevStack
|
||||
|
||||
console output
|
||||
task
|
||||
[Service]
|
||||
Type=oneshot
|
||||
RemainAfterExit=yes
|
||||
ExecStartPre=/bin/rm -f /opt/stack/runsh.succeeded
|
||||
ExecStart=/bin/su -c "/opt/stack/run.sh" stack
|
||||
StandardOutput=tty
|
||||
StandardError=tty
|
||||
|
||||
pre-start script
|
||||
rm -f /opt/stack/runsh.succeeded
|
||||
end script
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
|
||||
script
|
||||
initctl stop hvc0 || true
|
||||
|
||||
# Read any leftover characters from standard input
|
||||
while read -n 1 -s -t 0.1 -r ignored; do
|
||||
true
|
||||
done
|
||||
|
||||
clear
|
||||
|
||||
chown -R $STACK_USER /opt/stack
|
||||
|
||||
su -c "/opt/stack/run.sh" $STACK_USER
|
||||
|
||||
# Update /etc/issue
|
||||
{
|
||||
echo "OpenStack VM - Installed by DevStack"
|
||||
IPADDR=\$(ip -4 address show eth0 | sed -n 's/.*inet \\([0-9\.]\\+\\).*/\1/p')
|
||||
echo " Management IP: \$IPADDR"
|
||||
echo -n " Devstack run: "
|
||||
if [ -e /opt/stack/runsh.succeeded ]; then
|
||||
echo "SUCCEEDED"
|
||||
else
|
||||
echo "FAILED"
|
||||
fi
|
||||
echo ""
|
||||
} > /etc/issue
|
||||
initctl start hvc0 > /dev/null 2>&1
|
||||
end script
|
||||
EOF
|
||||
|
||||
# enable this service
|
||||
ln -s $STAGING_DIR/etc/systemd/system/devstack.service $STAGING_DIR/etc/systemd/system/multi-user.target.wants/devstack.service
|
||||
|
||||
# Configure the hostname
|
||||
echo $GUEST_NAME > $STAGING_DIR/etc/hostname
|
||||
|
||||
@ -178,6 +157,8 @@ set -eux
|
||||
(
|
||||
flock -n 9 || exit 1
|
||||
|
||||
sudo chown -R stack /opt/stack
|
||||
|
||||
[ -e /opt/stack/runsh.succeeded ] && rm /opt/stack/runsh.succeeded
|
||||
echo \$\$ >> /opt/stack/run_sh.pid
|
||||
|
||||
@ -187,7 +168,24 @@ set -eux
|
||||
|
||||
# Got to the end - success
|
||||
touch /opt/stack/runsh.succeeded
|
||||
|
||||
# Update /etc/issue
|
||||
(
|
||||
echo "OpenStack VM - Installed by DevStack"
|
||||
IPADDR=$(ip -4 address show eth0 | sed -n 's/.*inet \([0-9\.]\+\).*/\1/p')
|
||||
echo " Management IP: $IPADDR"
|
||||
echo -n " Devstack run: "
|
||||
if [ -e /opt/stack/runsh.succeeded ]; then
|
||||
echo "SUCCEEDED"
|
||||
else
|
||||
echo "FAILED"
|
||||
fi
|
||||
echo ""
|
||||
) > /opt/stack/issue
|
||||
sudo cp /opt/stack/issue /etc/issue
|
||||
|
||||
rm /opt/stack/run_sh.pid
|
||||
) 9> /opt/stack/.runsh_lock
|
||||
EOF
|
||||
|
||||
chmod 755 $STAGING_DIR/opt/stack/run.sh
|
||||
|
@ -424,7 +424,7 @@ else
|
||||
echo "looking at the console of your domU / checking the log files."
|
||||
echo ""
|
||||
echo "ssh into your domU now: 'ssh stack@$OS_VM_MANAGEMENT_ADDRESS' using your password"
|
||||
echo "and then do: 'sudo service devstack status' to check if devstack is still running."
|
||||
echo "and then do: 'sudo systemctl status devstack' to check if devstack is still running."
|
||||
echo "Check that /opt/stack/runsh.succeeded exists"
|
||||
echo ""
|
||||
echo "When devstack completes, you can visit the OpenStack Dashboard"
|
||||
|
@ -50,7 +50,7 @@ disk_size=$(($OSDOMU_VDI_GB * 1024 * 1024 * 1024))
|
||||
# however these need to be answered before the netinstall
|
||||
# is ready to fetch the preseed file, and as such must be here
|
||||
# to get a fully automated install
|
||||
pvargs="-- quiet console=hvc0 partman/default_filesystem=ext3 \
|
||||
pvargs="quiet console=hvc0 partman/default_filesystem=ext3 \
|
||||
console-setup/ask_detect=false locale=${UBUNTU_INST_LOCALE} \
|
||||
keyboard-configuration/layoutcode=${UBUNTU_INST_KEYBOARD} \
|
||||
netcfg/choose_interface=eth0 \
|
||||
|
@ -63,8 +63,8 @@ PUB_IP=${PUB_IP:-172.24.4.10}
|
||||
PUB_NETMASK=${PUB_NETMASK:-255.255.255.0}
|
||||
|
||||
# Ubuntu install settings
|
||||
UBUNTU_INST_RELEASE="trusty"
|
||||
UBUNTU_INST_TEMPLATE_NAME="Ubuntu 14.04 (64-bit) for DevStack"
|
||||
UBUNTU_INST_RELEASE="xenial"
|
||||
UBUNTU_INST_TEMPLATE_NAME="Ubuntu 16.04 (64-bit) for DevStack"
|
||||
# For 12.04 use "precise" and update template name
|
||||
# However, for 12.04, you should be using
|
||||
# XenServer 6.1 and later or XCP 1.6 or later
|
||||
|
Loading…
Reference in New Issue
Block a user