move serviceman to github releases
[webi-installers/.git] / serviceman / install.sh
index 06ed1e7c89042762815d1a42ef3d2e41174bcc21..3602521aac8b9fcdf4a4f77b5d1571e3ab067641 100644 (file)
@@ -1,29 +1,42 @@
 #!/bin/bash
 
-{
-
+function __init_serviceman() {
     set -e
     set -u
 
-    # Test if in PATH
-    set +e
-    my_serviceman=$(command -v serviceman)
-    set -e
-    if [ -n "$my_serviceman" ]; then
-        if [ "$my_serviceman" != "$HOME/.local/bin/serviceman" ]; then
-            echo "a serviceman installation (which make take precedence) exists at:"
-            echo "    $my_serviceman"
-            echo ""
-        fi
-    fi
-
-    # Get arch envs, etc
-    webi_download "https://rootprojects.org/serviceman/dist/$(uname -s)/$(uname -m)/serviceman" "$HOME/Downloads/serviceman"
-    chmod +x "$HOME/Downloads/serviceman"
-    mv "$HOME/Downloads/serviceman" "$HOME/.local/bin/"
-
-    # add to ~/.local/bin to PATH, just in case
-    webi_path_add $HOME/.local/bin # > /dev/null 2> /dev/null
-    # TODO inform user to add to path, apart from pathman?
+    ######################
+    # Install serviceman #
+    ######################
+
+    # Every package should define these 6 variables
+    pkg_cmd_name="serviceman"
+
+    pkg_dst_cmd="$HOME/.local/bin/serviceman"
+    pkg_dst="$pkg_dst_cmd"
+
+    pkg_src_cmd="$HOME/.local/opt/serviceman-v$WEBI_VERSION/bin/serviceman"
+    pkg_src_dir="$HOME/.local/opt/serviceman-v$WEBI_VERSION"
+    pkg_src="$pkg_src_cmd"
+
+    pkg_install() {
+        # $HOME/.local/opt/serviceman-v0.8.0/bin
+        mkdir -p "$pkg_src_bin"
+
+        # mv ./serviceman* "$HOME/.local/opt/serviceman-v0.8.0/bin/serviceman"
+        mv ./"$pkg_cmd_name"* "$pkg_src_cmd"
+
+        # chmod a+x "$HOME/.local/opt/serviceman-v0.8.0/bin/serviceman"
+        chmod a+x "$pkg_src_cmd"
+    }
+
+    pkg_get_current_version() {
+        # 'serviceman version' has output in this format:
+        #       serviceman v0.8.0 (f3ab547) 2020-12-02T16:19:10-07:00
+        # This trims it down to just the version number:
+        #       0.8.0
+        echo "$(serviceman --version 2>/dev/null | head -n 1 | cut -d' ' -f2 | sed 's:^v::')"
+    }
 
 }
+
+__init_serviceman