Update openrc for Juju 3

Add Juju 3 support to the openrc file used in the
Getting Started tutorial.

A few other minor improvements.

Change-Id: I74315e5a64902d7e96e3557cb99d89493e62ad4c
Signed-off-by: Peter Matulis <peter.matulis@canonical.com>
This commit is contained in:
Peter Matulis 2023-10-11 22:45:14 -04:00
parent 71290ca0bd
commit 4ec5f8dc58

View File

@ -1,21 +1,33 @@
# Navigate Juju 2.9/3.x
JUJU_VERSION=$(juju version | cut -c 1)
if [ $JUJU_VERSION -eq 2 ]; then
RUN="run"
else
RUN="exec"
fi
# Place the cloud's CA certificate in a file readable by the openstackclients snap
_snap_user_dir=~/snap/openstackclients/common
if [ ! -d $_snap_user_dir ]; then
mkdir -p $_snap_user_dir
mkdir $_snap_user_dir
fi
_root_ca=$_snap_user_dir/root-ca.crt
juju exec -u vault/leader -- 'leader-get root-ca' | tee $_root_ca >/dev/null 2>&1
juju ${RUN} -u vault/leader -- 'leader-get root-ca' | tee $_root_ca >/dev/null 2>&1
# Find an IP address for Keystone
_keystone_vip=$(juju config keystone vip)
if [ -n "$_keystone_vip" ]; then
_keystone_ip=$(echo $_keystone_vip | awk '{print $1}')
else
_keystone_ip=$(juju exec -u keystone/leader -- 'network-get --bind-address public')
_keystone_ip=$(juju ${RUN} -u keystone/leader -- 'network-get --bind-address public')
fi
# Query for the Keystone admin password
_password=$(juju exec -u keystone/leader -- 'leader-get admin_passwd')
_password=$(juju ${RUN} -u keystone/leader -- 'leader-get admin_passwd')
# Unset possible undercloud environment variables
unset "${!OS_*}"
# Set the OpenStack environment variables
export OS_AUTH_PROTOCOL=https