Browse Source

Update migration.

Ben Johnson 12 years ago
parent
commit
bf76af8fd1

+ 1 - 1
tests/fixtures/v1/README

@@ -12,4 +12,4 @@ $ tests/fixtures/v1/complete.2.sh
 $ tests/fixtures/v1/complete.3.sh
 $ tests/fixtures/v1/complete.4.sh
 
-The resulting server state data can be found in tmp/node0.
+The resulting server state data can be found in tmp/node*.

+ 0 - 1
tests/fixtures/v1/complete/conf

@@ -1 +0,0 @@
-{"commitIndex":16,"peers":[{"name":"node3","connectionString":""}]}

+ 0 - 18
tests/fixtures/v1/complete/info

@@ -1,18 +0,0 @@
-{
- "name": "node0",
- "raftURL": "http://127.0.0.1:7001",
- "etcdURL": "http://127.0.0.1:4001",
- "webURL": "",
- "raftListenHost": "127.0.0.1:7001",
- "etcdListenHost": "127.0.0.1:4001",
- "raftTLS": {
-  "CertFile": "",
-  "KeyFile": "",
-  "CAFile": ""
- },
- "etcdTLS": {
-  "CertFile": "",
-  "KeyFile": "",
-  "CAFile": ""
- }
-}

BIN
tests/fixtures/v1/complete/log


+ 0 - 0
tests/fixtures/v1/complete.1.sh → tests/fixtures/v1/run.1.sh


+ 0 - 0
tests/fixtures/v1/complete.2.sh → tests/fixtures/v1/run.2.sh


+ 0 - 0
tests/fixtures/v1/complete.3.sh → tests/fixtures/v1/run.3.sh


+ 0 - 0
tests/fixtures/v1/complete.4.sh → tests/fixtures/v1/run.4.sh


+ 23 - 16
tests/functional/v1_migration_test.go

@@ -5,6 +5,7 @@ import (
 	"io/ioutil"
 	"os"
 	"os/exec"
+	"path/filepath"
 	"testing"
 	"time"
 
@@ -18,23 +19,30 @@ func TestV1Migration(t *testing.T) {
 	os.RemoveAll(path)
 	defer os.RemoveAll(path)
 
-	// Copy over fixture files.
-	if err := exec.Command("cp", "-r", "../fixtures/v1/complete", path).Run(); err != nil {
-		panic("Fixture initialization error")
+	nodes := []string{"node0", "node1"}
+	for i, node := range nodes {
+		nodepath := filepath.Join(path, node)
+
+		// Copy over fixture files.
+		if err := exec.Command("cp", "-r", "../fixtures/v1/" + node, nodepath).Run(); err != nil {
+			panic("Fixture initialization error")
+		}
+
+		procAttr := new(os.ProcAttr)
+		procAttr.Files = []*os.File{nil, os.Stdout, os.Stderr}
+
+		args := []string{"etcd", fmt.Sprintf("-d=%s", nodepath)}
+		args = append(args, "-c", fmt.Sprintf("127.0.0.1:%d", 4001 + i))
+		args = append(args, "-s", fmt.Sprintf("127.0.0.1:%d", 7001 + i))
+		process, err := os.StartProcess(EtcdBinPath, args, procAttr)
+		if err != nil {
+			t.Fatal("start process failed:" + err.Error())
+			return
+		}
+		defer process.Kill()
+		time.Sleep(time.Second)
 	}
 
-	procAttr := new(os.ProcAttr)
-	procAttr.Files = []*os.File{nil, os.Stdout, os.Stderr}
-	args := []string{"etcd", fmt.Sprintf("-d=%s", path)}
-
-	process, err := os.StartProcess(EtcdBinPath, args, procAttr)
-	if err != nil {
-		t.Fatal("start process failed:" + err.Error())
-		return
-	}
-	defer process.Kill()
-	time.Sleep(time.Second)
-
 
 	// Ensure deleted message is removed.
 	resp, err := tests.Get("http://localhost:4001/v2/keys/message")
@@ -48,4 +56,3 @@ func TestV1Migration(t *testing.T) {
 	assert.Nil(t, err, "")
 	assert.Equal(t, resp.StatusCode, 404, "")
 }
-