From f6ca7bb43270474fa876ff6ba62c6b2113b045ad Mon Sep 17 00:00:00 2001
From: sunty <1172534965@qq.com>
Date: 星期五, 31 五月 2024 14:03:29 +0800
Subject: [PATCH] Optimize day and night algorithm, format date and time, batch process by date.

---
 swfs.go |   43 +++++++++++++++++++++++++++++++++++++++----
 1 files changed, 39 insertions(+), 4 deletions(-)

diff --git a/swfs.go b/swfs.go
index d3a9b39..551c776 100644
--- a/swfs.go
+++ b/swfs.go
@@ -5,7 +5,6 @@
 	"bytes"
 	"errors"
 	"fmt"
-	"github.com/golang/glog"
 	"io"
 	"io/ioutil"
 	"net/http"
@@ -60,7 +59,7 @@
 	cp := configPath + "/seaweedfs_start.sh"
 	file, err := os.OpenFile(cp, os.O_RDWR, 0666)
 	if err != nil {
-		glog.Error("open config file fail, err: ", err)
+		fmt.Println("open config file fail, err: ", err)
 		return info, err
 	}
 	defer file.Close()
@@ -102,7 +101,7 @@
 	cp := configPath + "/seaweedfs_start.sh"
 	file, err := os.OpenFile(cp, os.O_RDWR, 0666)
 	if err != nil {
-		glog.Error("open config file fail, err: ", err)
+		fmt.Println("open config file fail, err: ", err)
 		return false
 	}
 	defer file.Close()
@@ -131,7 +130,43 @@
 	}
 
 	if err := writeToFile(cp, output); err != nil {
-		glog.Errorf("write config file err: %v", err)
+		fmt.Println("write config file err: ", err)
+		return false
+	}
+	return true
+}
+
+//璁剧疆閰嶇疆鏂囦欢ip浠ュ強peer
+func SetConfigByIpAndPeer(configPath string, ip string, peers []string) bool {
+	cp := configPath + "/seaweedfs_start.sh"
+	file, err := os.OpenFile(cp, os.O_RDWR, 0666)
+	if err != nil {
+		fmt.Println("open config file fail, err: ", err)
+		return false
+	}
+	defer file.Close()
+
+	buf := bufio.NewReader(file)
+	output := make([]byte, 0)
+	for {
+		line, _, c := buf.ReadLine()
+		if c == io.EOF {
+			break
+		}
+		if strings.Contains(string(line), "ip=") {
+			newline := "ip=" + ip
+			line = []byte(newline)
+		}
+		if strings.Contains(string(line), "peers=") {
+			newline := "peers=" + strings.Replace(strings.Trim(fmt.Sprint(peers), "[]"), " ", ",", -1)
+			line = []byte(newline)
+		}
+		output = append(output, line...)
+		output = append(output, []byte("\n")...)
+	}
+
+	if err := writeToFile(cp, output); err != nil {
+		fmt.Println("write config file err: ", err)
 		return false
 	}
 	return true

--
Gitblit v1.8.0