summaryrefslogtreecommitdiff
path: root/cli/imgup/stuff.go
diff options
context:
space:
mode:
authorhorus_arch2015-04-21 14:22:34 +0200
committerhorus_arch2015-04-21 14:22:34 +0200
commitdb550a0edb5f21220151530f91056c4acbcc87b7 (patch)
tree3305af27bb7da90d5fb65729ec3438495e81f0f0 /cli/imgup/stuff.go
parentaa20d46e89069800b77247dccda0a500865411e3 (diff)
downloadmandible-db550a0edb5f21220151530f91056c4acbcc87b7.tar.gz
Add better UX to cli command + auto-update from binary.
Diffstat (limited to 'cli/imgup/stuff.go')
-rw-r--r--cli/imgup/stuff.go37
1 files changed, 37 insertions, 0 deletions
diff --git a/cli/imgup/stuff.go b/cli/imgup/stuff.go
new file mode 100644
index 0000000..13e3c29
--- /dev/null
+++ b/cli/imgup/stuff.go
@@ -0,0 +1,37 @@
+package main
+
+import (
+ "fmt"
+ "github.com/canerdogan/go-autoupdate"
+ "net/http"
+ "os"
+ "strings"
+)
+
+func isUrl(url string) bool {
+ return strings.HasPrefix(url, "http://") || strings.HasPrefix(url, "https://")
+}
+
+func isImage(filePath string) bool {
+ file, err := os.Open(filePath)
+ if err != nil {
+ fmt.Println("There was an error.")
+ fmt.Println("Technical details: " + err.Error())
+ return false
+ }
+ buff := make([]byte, 512)
+ _, err = file.Read(buff)
+ return strings.Contains(http.DetectContentType(buff), "image")
+}
+
+func doUpdate(url string) {
+ fmt.Println("Update binary from "+url, "...")
+ err, _ := update.FromUrl(url)
+ if err != nil {
+ fmt.Print("\n")
+ fmt.Println("Update failed!")
+ os.Exit(1)
+ }
+ fmt.Println("Update completed!")
+ fmt.Print("\n")
+}