New options in installer to install only docker, k8scluster or deploy-osm
[osm/devops.git] / installers / full_install_osm.sh
index 92ec4fa..4747949 100755 (executable)
@@ -33,8 +33,8 @@ function usage(){
     echo -e "     -A <VCA apiproxy> use VCA/juju API proxy"
     echo -e "     --pla:          install the PLA module for placement support"
     echo -e "     --old-sa:       install old Service Assurance framework (MON, POL); do not install Airflow and Pushgateway"
-    echo -e "     --ng-sa:        install new Service Assurance framework (Airflow, AlertManager and Pushgateway)  (enabled by default)"
-    echo -e "     -o <ADDON>:     ONLY (un)installs one of the addons (k8s_monitor, ng-sa)"
+    echo -e "     --ng-sa:        install new Service Assurance framework (Airflow, AlertManager and Pushgateway) (enabled by default)"
+    echo -e "     -o <COMPONENT>: ONLY installs the specified component (k8s_monitor, ng-sa, k8scluster, docker, deploy-osm)"
     echo -e "     -O <openrc file path/cloud name>: Install OSM to an OpenStack infrastructure. <openrc file/cloud name> is required. If a <cloud name> is used, the clouds.yaml file should be under ~/.config/openstack/ or /etc/openstack/"
     echo -e "     -N <openstack public network name/ID>: Public network name required to setup OSM to OpenStack"
     echo -e "     -f <path to SSH public key>: Public SSH key to use to deploy OSM to OpenStack"
@@ -625,6 +625,10 @@ function dump_vars(){
     echo "INSTALL_NGSA=$INSTALL_NGSA"
     echo "INSTALL_DOCKER=$INSTALL_DOCKER"
     echo "INSTALL_ONLY=$INSTALL_ONLY"
+    echo "INSTALL_ONLY_DEPLOY_OSM=$INSTALL_ONLY_DEPLOY_OSM"
+    echo "INSTALL_ONLY_DOCKER_CE=$INSTALL_ONLY_DOCKER_CE"
+    echo "INSTALL_ONLY_K8S_CLUSTER=$INSTALL_ONLY_K8S_CLUSTER"
+    echo "INSTALL_ONLY_NGSA=$INSTALL_ONLY_NGSA"
     echo "INSTALL_PLA=$INSTALL_PLA"
     echo "INSTALL_TO_OPENSTACK=$INSTALL_TO_OPENSTACK"
     echo "INSTALL_VIMEMU=$INSTALL_VIMEMU"
@@ -698,6 +702,10 @@ OPENSTACK_USERDATA_FILE=""
 OPENSTACK_VM_NAME="server-osm"
 OPENSTACK_PYTHON_VENV="$HOME/.virtual-envs/osm"
 INSTALL_ONLY=""
+INSTALL_ONLY_DEPLOY_OSM=""
+INSTALL_ONLY_DOCKER_CE=""
+INSTALL_ONLY_K8S_CLUSTER=""
+INSTALL_ONLY_NGSA=""
 INSTALL_DOCKER=""
 INSTALL_JUJU=""
 INSTALL_NOHOSTCLIENT=""
@@ -772,7 +780,10 @@ while getopts ":a:c:r:n:k:u:R:D:o:O:N:H:S:s:t:U:P:A:l:L:K:d:p:T:f:F:-: hy" o; do
         o)
             INSTALL_ONLY="y"
             [ "${OPTARG}" == "k8s_monitor" ] && INSTALL_K8S_MONITOR="y" && continue
-            [ "${OPTARG}" == "ng-sa" ] && INSTALL_NGSA="y" && continue
+            [ "${OPTARG}" == "ng-sa" ] && INSTALL_ONLY_NGSA="y" && continue
+            [ "${OPTARG}" == "docker" ] && INSTALL_ONLY_DOCKER_CE="y" && continue
+            [ "${OPTARG}" == "k8scluster" ] && INSTALL_ONLY_K8S_CLUSTER="y" && continue
+            [ "${OPTARG}" == "deploy-osm" ] && INSTALL_ONLY_DEPLOY_OSM="y" && continue
             ;;
         O)
             INSTALL_TO_OPENSTACK="y"
@@ -940,8 +951,11 @@ else
     # Community_installer
     # Special cases go first
     if [ -n "$INSTALL_ONLY" ]; then
+        [ -n "$INSTALL_ONLY_DOCKER_CE" ] && install_docker_ce
+        [ -n "$INSTALL_ONLY_K8S_CLUSTER" ] && install_k8s_cluster
         [ -n "$INSTALL_K8S_MONITOR" ] && install_k8s_monitoring
-        [ -n "$INSTALL_NGSA" ] && install_osm_ngsa_service
+        [ -n "$INSTALL_ONLY_DEPLOY_OSM" ] && deploy_osm
+        [ -n "$INSTALL_ONLY_NGSA" ] && install_osm_ngsa_service
         echo -e "\nDONE" && exit 0
     fi
     # This is where installation starts