echo -e " -K: Specifies the name of the controller to use - The controller must be already bootstrapped"
echo -e " --debug: debug mode"
echo -e " --cachelxdimages: cache local lxd images, create cronjob for that cache (will make installation longer)"
- echo -e " --nojuju: do not juju, assumes already installed"
[ -z "${DEBUG_INSTALL}" ] || DEBUG end of function
}
[ -z "${DEBUG_INSTALL}" ] || DEBUG end of function
}
-function install_juju() {
+function install_juju_client() {
[ -z "${DEBUG_INSTALL}" ] || DEBUG beginning of function
- echo "Installing juju"
+ echo "Installing juju client"
sudo snap install juju --classic --channel=$JUJU_VERSION/stable
[[ ":$PATH": != *":/snap/bin:"* ]] && PATH="/snap/bin:${PATH}"
[ -n "$INSTALL_CACHELXDIMAGES" ] && update_juju_images
- echo "Finished installation of juju"
+ echo "Finished installation of juju client"
[ -z "${DEBUG_INSTALL}" ] || DEBUG end of function
return 0
}
function juju_createcontroller_k8s(){
[ -z "${DEBUG_INSTALL}" ] || DEBUG beginning of function
cat $HOME/.kube/config | juju add-k8s $OSM_VCA_K8S_CLOUDNAME --client \
- || FATAL "Failed to add K8s endpoint and credential for client in cloud $OSM_VCA_K8S_CLOUDNAME"
+ || FATAL_TRACK juju "Failed to add K8s endpoint and credential for client in cloud $OSM_VCA_K8S_CLOUDNAME"
JUJU_BOOTSTRAP_OPTS=""
if [ -n "${OSM_BEHIND_PROXY}" ] ; then
--config controller-service-type=loadbalancer \
--agent-version=$JUJU_AGENT_VERSION \
${JUJU_BOOTSTRAP_OPTS} \
- || FATAL "Failed to bootstrap controller $OSM_NAMESPACE in cloud $OSM_VCA_K8S_CLOUDNAME"
+ || FATAL_TRACK juju "Failed to bootstrap controller $OSM_NAMESPACE in cloud $OSM_VCA_K8S_CLOUDNAME"
[ -z "${DEBUG_INSTALL}" ] || DEBUG end of function
}
DEBUG_INSTALL=""
INSTALL_CACHELXDIMAGES=""
INSTALL_NOJUJU=""
-JUJU_AGENT_VERSION=2.9.34
+JUJU_AGENT_VERSION=2.9.43
JUJU_VERSION=2.9
OSM_BEHIND_PROXY=""
OSM_DEVOPS=
-)
[ "${OPTARG}" == "help" ] && usage && exit 0
[ "${OPTARG}" == "debug" ] && DEBUG_INSTALL="--debug" && continue
- [ "${OPTARG}" == "nojuju" ] && INSTALL_NOJUJU="y" && continue
[ "${OPTARG}" == "cachelxdimages" ] && INSTALL_CACHELXDIMAGES="y" && continue
echo -e "Invalid option: '--$OPTARG'\n" >&2
usage && exit 1
echo "OSM_DEVOPS=$OSM_DEVOPS"
echo "HOME=$HOME"
-[ -z "$INSTALL_NOJUJU" ] && install_juju
-track juju juju_install_ok
+[ -z "$INSTALL_NOJUJU" ] && install_juju_client
+track juju juju_client_ok
if [ -z "$OSM_VCA_HOST" ]; then
if [ -z "$CONTROLLER_NAME" ]; then
juju_createcontroller_k8s
juju_addlxd_cloud
if [ -n "$LXD_CLOUD_FILE" ]; then
- [ -z "$LXD_CRED_FILE" ] && FATAL "The installer needs the LXD credential yaml if the LXD is external"
+ [ -z "$LXD_CRED_FILE" ] && FATAL_TRACK juju "The installer needs the LXD credential yaml if the LXD is external"
OSM_VCA_CLOUDNAME="lxd-cloud"
juju add-cloud $OSM_VCA_CLOUDNAME $LXD_CLOUD_FILE --force || juju update-cloud $OSM_VCA_CLOUDNAME --client -f $LXD_CLOUD_FILE
juju add-credential $OSM_VCA_CLOUDNAME -f $LXD_CRED_FILE || juju update-credential $OSM_VCA_CLOUDNAME lxd-cloud-creds -f $LXD_CRED_FILE
else
OSM_VCA_CLOUDNAME="lxd-cloud"
if [ -n "$LXD_CLOUD_FILE" ]; then
- [ -z "$LXD_CRED_FILE" ] && FATAL "The installer needs the LXD credential yaml if the LXD is external"
+ [ -z "$LXD_CRED_FILE" ] && FATAL_TRACK juju "The installer needs the LXD credential yaml if the LXD is external"
juju add-cloud -c $CONTROLLER_NAME $OSM_VCA_CLOUDNAME $LXD_CLOUD_FILE --force || juju update-cloud lxd-cloud -c $CONTROLLER_NAME -f $LXD_CLOUD_FILE
juju add-credential -c $CONTROLLER_NAME $OSM_VCA_CLOUDNAME -f $LXD_CRED_FILE || juju update-credential lxd-cloud -c $CONTROLLER_NAME -f $LXD_CRED_FILE
else
fi
[ -z "$CONTROLLER_NAME" ] && OSM_VCA_HOST=`sg lxd -c "juju show-controller $OSM_NAMESPACE"|grep api-endpoints|awk -F\' '{print $2}'|awk -F\: '{print $1}'`
[ -n "$CONTROLLER_NAME" ] && OSM_VCA_HOST=`juju show-controller $CONTROLLER_NAME |grep api-endpoints|awk -F\' '{print $2}'|awk -F\: '{print $1}'`
- [ -z "$OSM_VCA_HOST" ] && FATAL "Cannot obtain juju controller IP address"
+ [ -z "$OSM_VCA_HOST" ] && FATAL_TRACK juju "Cannot obtain juju controller IP address"
fi
track juju juju_controller_ok
-
-