X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=installers%2Ffull_install_osm.sh;h=d2b08db4973127ba9ecd73985091ca02cb39d6b8;hb=ce7cf378c96b295e6172341c2d5df109aef78234;hp=9ae5da2d2d93c84aae030323413de08eccc2c591;hpb=6cbfee112265135377fbe110a3dbdbb70d670724;p=osm%2Fdevops.git diff --git a/installers/full_install_osm.sh b/installers/full_install_osm.sh index 9ae5da2d..d2b08db4 100755 --- a/installers/full_install_osm.sh +++ b/installers/full_install_osm.sh @@ -72,7 +72,8 @@ function usage(){ echo -e " [--lxd-cred ]: Takes a YAML file as a parameter with the LXD Credentials information (--charmed option)" echo -e " [--microstack]: Installs microstack as a vim. (--charmed option)" echo -e " [--ha]: Installs High Availability bundle. (--charmed option)" - echo -e " [--tag]: Docker image tag" + echo -e " [--tag]: Docker image tag. (--charmed option)" + echo -e " [--registry]: Docker registry with optional credentials as user:pass@hostname:port (--charmed option)" } @@ -646,6 +647,7 @@ function generate_docker_compose_files() { function generate_k8s_manifest_files() { #Kubernetes resources $WORKDIR_SUDO cp -bR ${OSM_DEVOPS}/installers/docker/osm_pods $OSM_DOCKER_WORK_DIR + $WORKDIR_SUDO rm -f $OSM_K8S_WORK_DIR/mongo.yaml if [ -n "$NGUI" ]; then $WORKDIR_SUDO rm -f $OSM_K8S_WORK_DIR/light-ui.yaml else @@ -749,6 +751,9 @@ function generate_docker_env_files() { if [ ! -f $OSM_DOCKER_WORK_DIR/ro.env ]; then echo "RO_DB_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}" |$WORKDIR_SUDO tee $OSM_DOCKER_WORK_DIR/ro.env fi + if ! grep -Fq "OSMRO_DATABASE_COMMONKEY" $OSM_DOCKER_WORK_DIR/ro.env; then + echo "OSMRO_DATABASE_COMMONKEY=${OSM_DATABASE_COMMONKEY}" | $WORKDIR_SUDO tee -a $OSM_DOCKER_WORK_DIR/ro.env + fi # Keystone KEYSTONE_DB_PASSWORD=$(generate_secret) @@ -912,6 +917,18 @@ function deploy_osm_services() { kubectl apply -n $OSM_STACK_NAME -f $OSM_K8S_WORK_DIR } +#deploy charmed services +function deploy_charmed_services() { + juju add-model $OSM_STACK_NAME $OSM_VCA_K8S_CLOUDNAME + # deploy mongodb charm + namespace=$OSM_STACK_NAME + juju deploy cs:~charmed-osm/mongodb-k8s \ + --config enable-sidecar=true \ + --config replica-set=rs0 \ + --config namespace=$namespace \ + -m $namespace +} + function deploy_osm_pla_service() { # corresponding to namespace_vol $WORKDIR_SUDO sed -i "s#path: /var/lib/osm#path: $OSM_NAMESPACE_VOL#g" $OSM_DOCKER_WORK_DIR/osm_pla/pla.yaml @@ -966,7 +983,7 @@ function parse_yaml() { } function namespace_vol() { - osm_services="nbi lcm ro pol mon kafka mongo mysql prometheus" + osm_services="nbi lcm ro pol mon kafka mysql prometheus" for osm in $osm_services; do $WORKDIR_SUDO sed -i "s#path: /var/lib/osm#path: $OSM_NAMESPACE_VOL#g" $OSM_K8S_WORK_DIR/$osm.yaml done @@ -1303,6 +1320,7 @@ EOF track env_files if [ -n "$KUBERNETES" ]; then + deploy_charmed_services kube_secrets [ ! $OSM_DOCKER_TAG == "8" ] && parse_yaml $OSM_DOCKER_TAG namespace_vol @@ -1491,7 +1509,7 @@ function track(){ wget -q -O /dev/null $url } -JUJU_AGENT_VERSION=2.8.1 +JUJU_AGENT_VERSION=2.8.6 UNINSTALL="" DEVELOP="" UPDATE="" @@ -1520,7 +1538,7 @@ INSTALL_NOLXD="" INSTALL_NODOCKER="" INSTALL_NOJUJU="" KUBERNETES="" -NGUI="" +NGUI="y" INSTALL_K8S_MONITOR="" INSTALL_NOHOSTCLIENT="" SESSION_ID=`date +%s` @@ -1574,8 +1592,8 @@ while getopts ":b:r:c:n:k:u:R:D:o:O:m:N:H:S:s:w:t:U:P:A:l:L:K:-: hy" o; do usage && exit 1 ;; n) - [ "${OPTARG}" == "lwui" ] && continue - [ "${OPTARG}" == "ngui" ] && NGUI="y" && continue + [ "${OPTARG}" == "lwui" ] && NGUI="" && continue + [ "${OPTARG}" == "ngui" ] && continue echo -e "Invalid argument for -n : ' $OPTARG'\n" >&2 usage && exit 1 ;; @@ -1694,6 +1712,7 @@ while getopts ":b:r:c:n:k:u:R:D:o:O:m:N:H:S:s:w:t:U:P:A:l:L:K:-: hy" o; do [ "${OPTARG}" == "vca" ] && continue [ "${OPTARG}" == "ha" ] && continue [ "${OPTARG}" == "tag" ] && continue + [ "${OPTARG}" == "registry" ] && continue [ "${OPTARG}" == "pla" ] && INSTALL_PLA="y" && continue [ "${OPTARG}" == "volume" ] && OPENSTACK_ATTACH_VOLUME="true" && continue echo -e "Invalid option: '--$OPTARG'\n" >&2