X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=installers%2Ffull_install_osm.sh;h=06880687e6a3fbf2d164ee61ab2a1f3976bef492;hb=0c82da075268f5891dce618c8bc6e116dfde8493;hp=e9a2e0d5b8a4f137e1e46e545ec4ca741a4b88a8;hpb=4a9adcd592da4b23cdbaff8c3ef019b8a1818f45;p=osm%2Fdevops.git diff --git a/installers/full_install_osm.sh b/installers/full_install_osm.sh index e9a2e0d5..06880687 100755 --- a/installers/full_install_osm.sh +++ b/installers/full_install_osm.sh @@ -183,6 +183,10 @@ function remove_helm() { fi } +function remove_crontab_job() { + crontab -l | grep -v '${OSM_DEVOPS}/installers/update-juju-lxc-images' | crontab - +} + #Uninstall osmclient function uninstall_osmclient() { sudo apt-get remove --purge -y python-osmclient @@ -245,6 +249,7 @@ EONG $WORKDIR_SUDO rm -rf $OSM_DOCKER_WORK_DIR [ -z "$CONTROLLER_NAME" ] && sg lxd -c "juju destroy-controller --destroy-all-models --yes $OSM_STACK_NAME" fi + remove_crontab_job uninstall_osmclient echo "Some docker images will be kept in case they are used by other docker stacks" echo "To remove them, just run 'docker image prune' in a terminal" @@ -276,9 +281,14 @@ function FATAL(){ exit 1 } +function update_juju_images(){ + crontab -l | grep update-juju-lxc-images || (crontab -l 2>/dev/null; echo "0 4 * * 6 $USER ${OSM_DEVOPS}/installers/update-juju-lxc-images --xenial --bionic") | crontab - + ${OSM_DEVOPS}/installers/update-juju-lxc-images --xenial --bionic +} + function install_lxd() { # Apply sysctl production values for optimal performance - sudo cp /usr/share/osm-devops/installers/60-lxd-production.conf /etc/sysctl.d/60-lxd-production.conf + sudo cp ${OSM_DEVOPS}/installers/60-lxd-production.conf /etc/sysctl.d/60-lxd-production.conf sudo sysctl --system # Install LXD snap @@ -288,7 +298,7 @@ function install_lxd() { # Configure LXD sudo usermod -a -G lxd `whoami` - cat /usr/share/osm-devops/installers/lxd-preseed.conf | sed 's/^config: {}/config:\n core.https_address: '$DEFAULT_IP':8443/' | sg lxd -c "lxd init --preseed" + cat ${OSM_DEVOPS}/installers/lxd-preseed.conf | sed 's/^config: {}/config:\n core.https_address: '$DEFAULT_IP':8443/' | sg lxd -c "lxd init --preseed" sg lxd -c "lxd waitready" DEFAULT_INTERFACE=$(ip route list|awk '$1=="default" {print $5; exit}') [ -z "$DEFAULT_INTERFACE" ] && DEFAULT_INTERFACE=$(route -n |awk '$1~/^0.0.0.0/ {print $8; exit}') @@ -414,6 +424,7 @@ function install_juju() { echo "Installing juju" sudo snap install juju --classic --channel=2.7/stable [[ ":$PATH": != *":/snap/bin:"* ]] && PATH="/snap/bin:${PATH}" + update_juju_images echo "Finished installation of juju" return 0 } @@ -846,7 +857,7 @@ function parse_yaml() { } function namespace_vol() { - osm_services="nbi lcm ro pol mon kafka mongo mysql" + osm_services="nbi lcm ro pol mon kafka mongo 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 @@ -977,6 +988,23 @@ function deploy_elk() { return 0 } +function add_local_k8scluster() { + /usr/bin/osm --all-projects vim-create \ + --name _system-osm-vim \ + --account_type dummy \ + --auth_url http://dummy \ + --user osm --password osm --tenant osm \ + --description "dummy" \ + --config '{management_network_name: mgmt}' + /usr/bin/osm --all-projects k8scluster-add \ + --creds ${HOME}/.kube/config \ + --vim _system-osm-vim \ + --k8s-nets '{"net1": null}' \ + --version '1.15' \ + --description "OSM Internal Cluster" \ + _system-osm-k8s +} + function install_lightweight() { [ "${OSM_STACK_NAME}" == "osm" ] || OSM_DOCKER_WORK_DIR="$OSM_WORK_DIR/stack/$OSM_STACK_NAME" [ -n "$KUBERNETES" ] && OSM_K8S_WORK_DIR="$OSM_DOCKER_WORK_DIR/osm_pods" && OSM_NAMESPACE_VOL="${OSM_HOST_VOL}/${OSM_STACK_NAME}" @@ -1186,6 +1214,10 @@ EOF fi track after_healthcheck + [ -n "$KUBERNETES" ] && add_local_k8scluster + track add_local_k8scluster + + wget -q -O- https://osm-download.etsi.org/ftp/osm-8.0-eight/README2.txt &> /dev/null track end return 0 @@ -1559,9 +1591,9 @@ fi if [ -n "$CHARMED" ]; then if [ -n "$UNINSTALL" ]; then - /usr/share/osm-devops/installers/charmed_uninstall.sh -R $RELEASE -r $REPOSITORY -u $REPOSITORY_BASE -D /usr/share/osm-devops -t $DOCKER_TAG "$@" + ${OSM_DEVOPS}/installers/charmed_uninstall.sh -R $RELEASE -r $REPOSITORY -u $REPOSITORY_BASE -D /usr/share/osm-devops -t $DOCKER_TAG "$@" else - /usr/share/osm-devops/installers/charmed_install.sh -R $RELEASE -r $REPOSITORY -u $REPOSITORY_BASE -D /usr/share/osm-devops -t $DOCKER_TAG "$@" + ${OSM_DEVOPS}/installers/charmed_install.sh -R $RELEASE -r $REPOSITORY -u $REPOSITORY_BASE -D /usr/share/osm-devops -t $DOCKER_TAG "$@" echo "Your installation is now complete, follow these steps for configuring the osmclient:" echo