X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=installers%2Finstall_osm.sh;h=2c4361fd00d51e387dc654f91ae8e07ffa7ee12e;hb=refs%2Fchanges%2F02%2F6002%2F1;hp=a523796fa056041a0059cb93a00047d9f8705fca;hpb=14097dc4299491ab6eb7aaf961210158da2035ac;p=osm%2Fdevops.git diff --git a/installers/install_osm.sh b/installers/install_osm.sh index a523796f..2c4361fd 100755 --- a/installers/install_osm.sh +++ b/installers/install_osm.sh @@ -421,12 +421,15 @@ function install_osmclient(){ sudo add-apt-repository -y "deb [arch=amd64] $CLIENT_REPOSITORY_BASE/$CLIENT_RELEASE $CLIENT_REPOSITORY osmclient" sudo apt-get update sudo apt-get install -y python-osmclient - export OSM_HOSTNAME=`lxc list | awk '($2=="SO-ub"){print $6}'` - export OSM_RO_HOSTNAME=`lxc list | awk '($2=="RO"){print $6}'` + #sed 's,OSM_SOL005=[^$]*,OSM_SOL005=True,' -i ${HOME}/.bashrc + #echo 'export OSM_HOSTNAME=localhost' >> ${HOME}/.bashrc + #echo 'export OSM_SOL005=True' >> ${HOME}/.bashrc echo -e "\nOSM client installed" echo -e "You might be interested in adding the following OSM client env variables to your .bashrc file:" echo " export OSM_HOSTNAME=${OSM_HOSTNAME}" - echo " export OSM_RO_HOSTNAME=${OSM_RO_HOSTNAME}" + [ -n "$INSTALL_LIGHTWEIGHT" ] && echo " export OSM_SOL005=True" + [ -z "$INSTALL_LIGHTWEIGHT" ] && echo " export OSM_RO_HOSTNAME=${OSM_RO_HOSTNAME}" + return 0 } function install_from_lxdimages(){ @@ -501,7 +504,7 @@ function generate_docker_images() { docker build ${LWTEMPDIR}/MON -f ${LWTEMPDIR}/MON/docker/Dockerfile -t osm/mon || ! echo "cannot build MON docker image" >&2 docker build ${LWTEMPDIR}/MON/policy_module -f ${LWTEMPDIR}/MON/policy_module/Dockerfile -t osm/pm || ! echo "cannot build PM docker image" >&2 git -C ${LWTEMPDIR} clone https://osm.etsi.org/gerrit/osm/NBI - docker build ${LWTEMPDIR}/NBI -t osm/nbi || ! echo "cannot build NBI docker image" >&2 + docker build ${LWTEMPDIR}/NBI -f ${LWTEMPDIR}/NBI/Dockerfile.local -t osm/nbi || ! echo "cannot build NBI docker image" >&2 git -C ${LWTEMPDIR} clone https://osm.etsi.org/gerrit/osm/RO docker build ${LWTEMPDIR}/RO -f ${LWTEMPDIR}/RO/docker/Dockerfile-local -t osm/ro || ! echo "cannot build RO docker image" >&2 docker build ${LWTEMPDIR}/RO/lcm -t osm/lcm || ! echo "cannot build LCM docker image" >&2 @@ -511,12 +514,25 @@ EONG echo "Finished generation of docker images" } +function generate_docker_env_files() { + echo "Generating docker env files" + OSMLCM_VCA_HOST=`juju show-controller|grep api-endpoints|awk -F\' '{print $2}'|awk -F\: '{print $1}'` + OSMLCM_VCA_SECRET=`grep password /home/ubuntu/.local/share/juju/accounts.yaml |awk '{print $2}'` + MYSQL_ROOT_PASSWORD=`date +%s | sha256sum | base64 | head -c 32` + echo "OSMLCM_VCA_HOST=${OSMLCM_VCA_HOST}" > ${OSM_DEVOPS}/installers/docker/lcm.env + echo "OSMLCM_VCA_SECRET=${OSMLCM_VCA_SECRET}" >> ${OSM_DEVOPS}/installers/docker/lcm.env + echo "MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}" > ${OSM_DEVOPS}/installers/docker/ro-db.env + echo "RO_DB_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}" > ${OSM_DEVOPS}/installers/docker/ro.env + echo "OS_NOTIFIER_URI=http://${DEFAULT_IP}:8662" > ${OSM_DEVOPS}/installers/docker/mon.env + echo "Finished generation of docker env files" +} + function deploy_lightweight() { echo "Deploying lightweight build" newgrp docker << EONG - docker swarm init + docker swarm init --advertise-addr ${DEFAULT_IP} docker network create --driver=overlay --attachable netOSM - docker stack deploy -c $OSM_DEVOPS/installers/docker/docker-compose.yaml osm + docker stack deploy -c ${OSM_DEVOPS}/installers/docker/docker-compose.yaml osm EONG echo "Finished deployment of lightweight build" } @@ -530,8 +546,7 @@ function install_osmclient_sol005() { pushd ${LWTEMPDIR}/osmclient sudo -H python setup.py install popd - export OSM_HOSTNAME=localhost - export OSM_SOL005=True + #sed 's,OSM_SOL005=[^$]*,OSM_SOL005=True,' -i ~/.bashrc echo 'export OSM_HOSTNAME=localhost' >> ${HOME}/.bashrc echo 'export OSM_SOL005=True' >> ${HOME}/.bashrc } @@ -539,14 +554,16 @@ function install_osmclient_sol005() { function install_lightweight() { echo "Installing lightweight build of OSM" LWTEMPDIR="$(mktemp -d -q --tmpdir "installosmlight.XXXXXX")" - trap 'rm -rf "$LWTEMPDIR"' EXIT + trap 'rm -rf "${LWTEMPDIR}"' EXIT + DEFAULT_IF=`route -n |awk '$1~/^0.0.0.0/ {print $8}'` + DEFAULT_IP=`ip -o -4 a |grep ${DEFAULT_IF}|awk '{split($4,a,"/"); print a[1]}'` install_juju install_docker_ce generate_docker_images + generate_docker_env_files deploy_lightweight - #install_osmclient - #For the moment, the osmclient is installed from the repo - install_osmclient_sol005 + install_osmclient + return 0 } function install_vimemu() { @@ -564,14 +581,14 @@ function install_vimemu() { echo "Waiting for 'vim-emu' container to start ..." sleep 5 export VIMEMU_HOSTNAME=$(sudo docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' vim-emu) - echo "vim-emu running at $VIMEMU_HOSTNAME ..." + echo "vim-emu running at ${VIMEMU_HOSTNAME} ..." echo -e "You might be interested in adding the following OSM client env variables to your .bashrc file:" echo " export OSM_HOSTNAME=${OSM_HOSTNAME}" echo " export OSM_RO_HOSTNAME=${OSM_RO_HOSTNAME}" echo -e "You might be interested in adding the following vim-emu env variables to your .bashrc file:" echo " export VIMEMU_HOSTNAME=${VIMEMU_HOSTNAME}" echo -e "\nTo add the emulated VIM to OSM you should do:" - echo " osm vim-create --name emu-vim1 --user username --password password --auth_url http://$VIMEMU_HOSTNAME:6001/v2.0 --tenant tenantName --account_type openstack" + echo " osm vim-create --name emu-vim1 --user username --password password --auth_url http://${VIMEMU_HOSTNAME}:6001/v2.0 --tenant tenantName --account_type openstack" } function dump_vars(){