Browse Source

[mod] utils/filtron.sh - check a filtron installation

Impplement a script to check a filtron installation::

   ./utils/filtron.sh install check

Related-to: https://github.com/searxng/searxng/issues/450
Related-to: https://github.com/searxng/searxng/pull/446#issuecomment-954599668

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
Markus Heiser 3 years ago
parent
commit
064b545f14
1 changed files with 45 additions and 34 deletions
  1. 45 34
      utils/filtron.sh

+ 45 - 34
utils/filtron.sh

@@ -76,6 +76,7 @@ shell
   start interactive shell from user ${SERVICE_USER}
 install / remove
   :all:        complete setup of filtron service
+  :check:      check the filtron installation
   :user:       add/remove service user '$SERVICE_USER' ($SERVICE_HOME)
   :rules:      reinstall filtron rules $FILTRON_RULES
 update filtron
@@ -135,6 +136,10 @@ main() {
             rst_title "$SERVICE_NAME" part
             sudo_or_exit
             case $2 in
+                check)
+                    rst_title "Check filtron installation" part
+                    install_check
+                    ;;
                 all) install_all ;;
                 user) assert_user ;;
                 rules)
@@ -226,6 +231,45 @@ install_all() {
 
 }
 
+install_check() {
+
+    if service_account_is_available "$SERVICE_USER"; then
+        info_msg "service account $SERVICE_USER available."
+    else
+        err_msg "service account $SERVICE_USER not available!"
+    fi
+    if go_is_available "$SERVICE_USER"; then
+        info_msg "~$SERVICE_USER: go is installed"
+    else
+        err_msg "~$SERVICE_USER: go is not installed"
+    fi
+    if filtron_is_installed; then
+        info_msg "~$SERVICE_USER: filtron app is installed"
+    else
+        err_msg "~$SERVICE_USER: filtron app is not installed!"
+    fi
+
+    if ! service_is_available "http://${FILTRON_API}"; then
+        err_msg "API not available at: http://${FILTRON_API}"
+    fi
+
+    if ! service_is_available "http://${FILTRON_LISTEN}" ; then
+        err_msg "Filtron is not listening on: http://${FILTRON_LISTEN}"
+    fi
+
+    if service_is_available "http://${FILTRON_TARGET}" ; then
+        info_msg "Filtron's target is available at: http://${FILTRON_TARGET}"
+    fi
+
+    if ! service_is_available "${PUBLIC_URL}"; then
+        warn_msg "Public service at ${PUBLIC_URL} is not available!"
+        if ! in_container; then
+            warn_msg "Check if public name is correct and routed or use the public IP from above."
+        fi
+    fi
+
+}
+
 remove_all() {
     rst_title "De-Install $SERVICE_NAME (service)"
 
@@ -354,40 +398,7 @@ sourced ${DOT_CONFIG} :
 EOF
     install_log_searx_instance
 
-    if service_account_is_available "$SERVICE_USER"; then
-        info_msg "service account $SERVICE_USER available."
-    else
-        err_msg "service account $SERVICE_USER not available!"
-    fi
-    if go_is_available "$SERVICE_USER"; then
-        info_msg "~$SERVICE_USER: go is installed"
-    else
-        err_msg "~$SERVICE_USER: go is not installed"
-    fi
-    if filtron_is_installed; then
-        info_msg "~$SERVICE_USER: filtron app is installed"
-    else
-        err_msg "~$SERVICE_USER: filtron app is not installed!"
-    fi
-
-    if ! service_is_available "http://${FILTRON_API}"; then
-        err_msg "API not available at: http://${FILTRON_API}"
-    fi
-
-    if ! service_is_available "http://${FILTRON_LISTEN}" ; then
-        err_msg "Filtron is not listening on: http://${FILTRON_LISTEN}"
-    fi
-
-    if service_is_available "http://${FILTRON_TARGET}" ; then
-        info_msg "Filtron's target is available at: http://${FILTRON_TARGET}"
-    fi
-
-    if ! service_is_available "${PUBLIC_URL}"; then
-        warn_msg "Public service at ${PUBLIC_URL} is not available!"
-        if ! in_container; then
-            warn_msg "Check if public name is correct and routed or use the public IP from above."
-        fi
-    fi
+    install_check
 
     if in_container; then
         lxc_suite_info