X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=installers%2Fcharmed_install.sh;h=770dd6ee03ec10e7244d2a62d3d602b052729369;hb=20611225b7c1283bc5ce1572b5515e898c6df2b5;hp=e196706137eaa29a334f8674a4531cfb2f14e673;hpb=49379ced23b5e344a773ce77ac9cb59c1864e19b;p=osm%2Fdevops.git diff --git a/installers/charmed_install.sh b/installers/charmed_install.sh index e1967061..770dd6ee 100755 --- a/installers/charmed_install.sh +++ b/installers/charmed_install.sh @@ -25,14 +25,15 @@ PATH=/snap/bin:${PATH} MODEL_NAME=osm -OSM_BUNDLE=cs:osm-58 -OSM_HA_BUNDLE=cs:osm-ha-43 +OSM_BUNDLE=cs:osm-67 +OSM_HA_BUNDLE=cs:osm-ha-52 TAG=testing-daily function check_arguments(){ while [ $# -gt 0 ] ; do case $1 in --bundle) BUNDLE="$2" ;; + --overlay) OVERLAY="$2" ;; --k8s) KUBECFG="$2" ;; --vca) CONTROLLER="$2" ;; --lxd) LXD_CLOUD="$2" ;; @@ -41,6 +42,7 @@ function check_arguments(){ --ha) BUNDLE=$OSM_HA_BUNDLE ;; --tag) TAG="$2" ;; --registry) REGISTRY_INFO="$2" ;; + --only-vca) ONLY_VCA=y ;; esac shift done @@ -235,7 +237,6 @@ function deploy_charmed_osm(){ esac fi - create_overlay echo "Creating OSM model" if [ -v KUBECFG ]; then juju add-model $MODEL_NAME $K8S_CLOUD_NAME @@ -249,10 +250,14 @@ function deploy_charmed_osm(){ fi [ -v TAG ] && generate_images_overlay && images_overlay="--overlay $IMAGES_OVERLAY_FILE" + if [ -v OVERLAY ]; then + extra_overlay="--overlay $OVERLAY" + fi + if [ -v BUNDLE ]; then - juju deploy -m $MODEL_NAME $BUNDLE --overlay ~/.osm/vca-overlay.yaml $images_overlay + juju deploy -m $MODEL_NAME $BUNDLE --overlay ~/.osm/vca-overlay.yaml $images_overlay $extra_overlay else - juju deploy -m $MODEL_NAME $OSM_BUNDLE --overlay ~/.osm/vca-overlay.yaml $images_overlay + juju deploy -m $MODEL_NAME $OSM_BUNDLE --overlay ~/.osm/vca-overlay.yaml $images_overlay $extra_overlay fi if [ ! -v KUBECFG ]; then @@ -266,10 +271,10 @@ function deploy_charmed_osm(){ API_SERVER="$(echo $hostport | sed -e 's,:.*,,g')" fi # Expose OSM services - juju config -m $MODEL_NAME nbi site_url=https://nbi.${API_SERVER}.xip.io - juju config -m $MODEL_NAME ng-ui site_url=https://ui.${API_SERVER}.xip.io - juju config -m $MODEL_NAME grafana site_url=https://grafana.${API_SERVER}.xip.io - juju config -m $MODEL_NAME prometheus site_url=https://prometheus.${API_SERVER}.xip.io + juju config -m $MODEL_NAME nbi site_url=https://nbi.${API_SERVER}.nip.io + juju config -m $MODEL_NAME ng-ui site_url=https://ui.${API_SERVER}.nip.io + juju config -m $MODEL_NAME grafana site_url=https://grafana.${API_SERVER}.nip.io + juju config -m $MODEL_NAME prometheus site_url=https://prometheus.${API_SERVER}.nip.io echo "Waiting for deployment to finish..." check_osm_deployed @@ -306,7 +311,7 @@ function create_overlay() { sudo snap install yq local HOME=/home/$USER local vca_user=$(cat $HOME/.local/share/juju/accounts.yaml | yq e .controllers.$CONTROLLER_NAME.user - ) - local vca_password=$(cat $HOME/.local/share/juju/accounts.yaml | yq e .controllers.$CONTROLLER_NAME.password - ) + local vca_secret=$(cat $HOME/.local/share/juju/accounts.yaml | yq e .controllers.$CONTROLLER_NAME.password - ) local vca_host=$(cat $HOME/.local/share/juju/controllers.yaml | yq e .controllers.$CONTROLLER_NAME.api-endpoints[0] - | cut -d ":" -f 1) local vca_port=$(cat $HOME/.local/share/juju/controllers.yaml | yq e .controllers.$CONTROLLER_NAME.api-endpoints[0] - | cut -d ":" -f 2) local vca_pubkey=\"$(cat $HOME/.local/share/juju/ssh/juju_id_rsa.pub)\" @@ -323,7 +328,7 @@ applications: lcm: options: vca_user: $vca_user - vca_password: $vca_password + vca_secret: $vca_secret vca_host: $vca_host vca_port: $vca_port vca_pubkey: $vca_pubkey @@ -333,7 +338,7 @@ applications: mon: options: vca_user: $vca_user - vca_password: $vca_password + vca_secret: $vca_secret vca_host: $vca_host vca_cacert: $vca_cacert EOF @@ -440,25 +445,40 @@ check_arguments $@ mkdir -p ~/.osm install_snaps bootstrap_k8s_lxd -deploy_charmed_osm -install_osmclient -export OSM_HOSTNAME=$(juju config -m $MODEL_NAME nbi site_url | sed "s/http.*\?:\/\///"):443 -sleep 10 -add_local_k8scluster - -if [ -v MICROSTACK ]; then - install_microstack -fi +create_overlay +if [ -v ONLY_VCA ]; then + HOME=/home/$USER + vca_user=$(cat $HOME/.local/share/juju/accounts.yaml | yq e .controllers.$CONTROLLER_NAME.user - ) + vca_secret=$(cat $HOME/.local/share/juju/accounts.yaml | yq e .controllers.$CONTROLLER_NAME.password - ) + vca_host=$(cat $HOME/.local/share/juju/controllers.yaml | yq e .controllers.$CONTROLLER_NAME.api-endpoints[0] - | cut -d ":" -f 1) + vca_port=$(cat $HOME/.local/share/juju/controllers.yaml | yq e .controllers.$CONTROLLER_NAME.api-endpoints[0] - | cut -d ":" -f 2) + vca_pubkey=\"$(cat $HOME/.local/share/juju/ssh/juju_id_rsa.pub)\" + vca_cloud="lxd-cloud" + vca_cacert=$(cat $HOME/.local/share/juju/controllers.yaml | yq e .controllers.$CONTROLLER_NAME.ca-cert - | base64 | tr -d \\n) + hostname=`cat /etc/hostname` + + echo "Use the following command to register the installed VCA to your OSM:" + echo -e " osm vca-add --endpoints $vca_host:$vca_port \ \n --user $vca_user \ \n --secret $vca_secret \ \n --cacert $vca_cacert \ \n --lxd-cloud lxd-cloud \ \n --lxd-credentials lxd-cloud \ \n --k8s-cloud microk8s \ \n --k8s-credentials microk8s\ \n $hostname-vca" +else + deploy_charmed_osm + install_osmclient + export OSM_HOSTNAME=$(juju config -m $MODEL_NAME nbi site_url | sed "s/http.*\?:\/\///"):443 + sleep 10 + add_local_k8scluster + if [ -v MICROSTACK ]; then + install_microstack + fi + echo "Your installation is now complete, follow these steps for configuring the osmclient:" + echo + echo "1. Create the OSM_HOSTNAME environment variable with the NBI IP" + echo + echo "export OSM_HOSTNAME=$OSM_HOSTNAME" + echo + echo "2. Add the previous command to your .bashrc for other Shell sessions" + echo + echo "echo \"export OSM_HOSTNAME=$OSM_HOSTNAME\" >> ~/.bashrc" + echo + echo "DONE" +fi -echo "Your installation is now complete, follow these steps for configuring the osmclient:" -echo -echo "1. Create the OSM_HOSTNAME environment variable with the NBI IP" -echo -echo "export OSM_HOSTNAME=$OSM_HOSTNAME" -echo -echo "2. Add the previous command to your .bashrc for other Shell sessions" -echo -echo "echo \"export OSM_HOSTNAME=$OSM_HOSTNAME\" >> ~/.bashrc" -echo -echo "DONE"