Browse Source

Merge pull request #309 from xiangli-cmu/master

fix create folder before write info file
Xiang Li 12 years ago
parent
commit
1c1d3dd708
2 changed files with 12 additions and 12 deletions
  1. 11 11
      etcd.go
  2. 1 1
      tests/functional/simple_multi_node_test.go

+ 11 - 11
etcd.go

@@ -47,6 +47,17 @@ func main() {
 		log.Verbose = true
 	}
 
+	// Setup a default directory based on the machine name
+	if config.DataDir == "" {
+		config.DataDir = config.Name + ".etcd"
+		log.Warnf("Using the directory %s as the etcd configuration directory because a directory was not specified. ", config.DataDir)
+	}
+
+	// Create data directory if it doesn't already exist.
+	if err := os.MkdirAll(config.DataDir, 0744); err != nil {
+		log.Fatalf("Unable to create path: %s", err)
+	}
+
 	// Load info object.
 	info, err := config.Info()
 	if err != nil {
@@ -61,17 +72,6 @@ func main() {
 		info.Name = host
 	}
 
-	// Setup a default directory based on the machine name
-	if config.DataDir == "" {
-		config.DataDir = info.Name + ".etcd"
-		log.Warnf("Using the directory %s as the etcd configuration directory because a directory was not specified. ", config.DataDir)
-	}
-
-	// Create data directory if it doesn't already exist.
-	if err := os.MkdirAll(config.DataDir, 0744); err != nil {
-		log.Fatalf("Unable to create path: %s", err)
-	}
-
 	// Retrieve TLS configuration.
 	tlsConfig, err := info.EtcdTLS.Config()
 	if err != nil {

+ 1 - 1
tests/functional/simple_multi_node_test.go

@@ -52,7 +52,7 @@ func templateTestSimpleMultiNode(t *testing.T, tls bool) {
 
 	result, err = c.Set("foo", "bar", 100)
 
-	if err != nil || result.Key != "/foo" || result.Value != "bar" || result.PrevValue != "bar" || result.TTL != 100 {
+	if err != nil || result.Key != "/foo" || result.Value != "bar" || result.PrevValue != "bar" || result.TTL < 95 {
 		if err != nil {
 			t.Fatal(err)
 		}