Skip to content

Commit b4564fe

Browse files
committed
ref(tests): use mock-store container in functional tests
1 parent 02981cf commit b4564fe

3 files changed

Lines changed: 4 additions & 100 deletions

File tree

database/Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,5 +49,6 @@ test-unit:
4949
@echo no unit tests
5050

5151
test-functional:
52+
@docker history deis/mock-store >/dev/null 2>&1 || $(MAKE) -C ../tests/ mock-store
5253
@docker history deis/test-etcd >/dev/null 2>&1 || docker pull deis/test-etcd:latest
5354
GOPATH=`cd ../tests/ && godep path`:$(GOPATH) go test -v ./tests/...

registry/Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,5 +49,6 @@ test-unit:
4949
@echo no unit tests
5050

5151
test-functional:
52+
@docker history deis/mock-store >/dev/null 2>&1 || $(MAKE) -C ../tests/ mock-store
5253
@docker history deis/test-etcd >/dev/null 2>&1 || docker pull deis/test-etcd:latest
5354
GOPATH=`cd ../tests/ && godep path`:$(GOPATH) go test -v ./tests/...

tests/mock/mock.go

Lines changed: 2 additions & 100 deletions
Original file line numberDiff line numberDiff line change
@@ -57,30 +57,11 @@ func RunMockDatabase(t *testing.T, tag string, etcdPort string, dbPort string) {
5757
func RunMockCeph(t *testing.T, name string, cli *client.DockerCli, etcdPort string) {
5858

5959
etcdutils.SetSingle(t, "/deis/store/hosts/"+utils.HostAddress(), utils.HostAddress(), etcdPort)
60-
61-
// since we're only running one OSD, our default of 128 placement groups is too large
62-
etcdutils.SetSingle(t, "/deis/store/pgNum", "64", etcdPort)
63-
64-
monitorName := name + "-monitor"
65-
RunMockCephMonitor(t, monitorName, etcdPort)
66-
67-
daemonName := name + "-daemon"
68-
RunMockCephDaemon(t, daemonName, etcdPort)
69-
70-
metadataName := name + "-metadata"
71-
RunMockCephMetadata(t, metadataName, etcdPort)
72-
73-
gatewayName := name + "-gateway"
74-
RunMockCephGateway(t, gatewayName, utils.RandomPort(), etcdPort)
75-
}
76-
77-
// RunMockCephMonitor runs a Ceph Monitor agent
78-
func RunMockCephMonitor(t *testing.T, name string, etcdPort string) {
7960
var err error
8061
cli, stdout, stdoutPipe := dockercli.NewClient()
81-
cephImage := "deis/store-monitor:" + utils.BuildTag()
62+
cephImage := "deis/mock-store:latest"
8263
ipaddr := utils.HostAddress()
83-
fmt.Printf("--- Running deis/mock-ceph-monitor at %s\n", ipaddr)
64+
fmt.Printf("--- Running deis/mock-store at %s\n", ipaddr)
8465
done2 := make(chan bool, 1)
8566
go func() {
8667
done2 <- true
@@ -90,88 +71,9 @@ func RunMockCephMonitor(t *testing.T, name string, etcdPort string) {
9071
"--rm",
9172
"-e", "HOST="+ipaddr,
9273
"-e", "ETCD_PORT="+etcdPort,
93-
"-e", "NUM_STORES=1",
9474
"--net=host",
9575
cephImage)
9676
}()
97-
dockercli.PrintToStdout(t, stdout, stdoutPipe, "monmap e1: 1 mons at")
98-
if err != nil {
99-
t.Fatal(err)
100-
}
101-
}
102-
103-
// RunMockCephDaemon sets up a single Ceph OSD
104-
func RunMockCephDaemon(t *testing.T, name string, etcdPort string) {
105-
var err error
106-
cli, stdout, stdoutPipe := dockercli.NewClient()
107-
cephImage := "deis/store-daemon:" + utils.BuildTag()
108-
ipaddr := utils.HostAddress()
109-
fmt.Printf("--- Running deis/mock-ceph-daemon at %s\n", ipaddr)
110-
done := make(chan bool, 1)
111-
go func() {
112-
done <- true
113-
_ = cli.CmdRm("-f", name)
114-
err = dockercli.RunContainer(cli,
115-
"--name", name,
116-
"--rm",
117-
"-e", "HOST="+ipaddr,
118-
"-e", "ETCD_PORT="+etcdPort,
119-
"--net=host",
120-
cephImage)
121-
}()
122-
dockercli.PrintToStdout(t, stdout, stdoutPipe, "journal close /var/lib/ceph/osd/ceph-0/journal")
123-
if err != nil {
124-
t.Fatal(err)
125-
}
126-
}
127-
128-
// RunMockCephMetadata starts a mock Ceph MDS
129-
func RunMockCephMetadata(t *testing.T, name string, etcdPort string) {
130-
var err error
131-
cli, stdout, stdoutPipe := dockercli.NewClient()
132-
cephImage := "deis/store-metadata:" + utils.BuildTag()
133-
ipaddr := utils.HostAddress()
134-
fmt.Printf("--- Running deis/mock-ceph-metadata at %s\n", ipaddr)
135-
done2 := make(chan bool, 1)
136-
go func() {
137-
done2 <- true
138-
_ = cli.CmdRm("-f", name)
139-
err = dockercli.RunContainer(cli,
140-
"--name", name,
141-
"--rm",
142-
"-e", "ETCD_PORT="+etcdPort,
143-
"-e", "HOST="+ipaddr,
144-
"--net=host",
145-
cephImage)
146-
}()
147-
dockercli.PrintToStdout(t, stdout, stdoutPipe, "mds.0.1 active_start")
148-
if err != nil {
149-
t.Fatal(err)
150-
}
151-
}
152-
153-
// RunMockCephGateway starts a mock S3 endpoint used for component testing
154-
func RunMockCephGateway(t *testing.T, name string, port string, etcdPort string) {
155-
var err error
156-
cli, stdout, stdoutPipe := dockercli.NewClient()
157-
cephImage := "deis/store-gateway:" + utils.BuildTag()
158-
ipaddr := utils.HostAddress()
159-
cephAddr := ipaddr + ":" + port
160-
fmt.Printf("--- Running deis/mock-ceph-gateway at %s\n", cephAddr)
161-
done2 := make(chan bool, 1)
162-
go func() {
163-
done2 <- true
164-
_ = cli.CmdRm("-f", name)
165-
err = dockercli.RunContainer(cli,
166-
"--name", name,
167-
"-h", "deis-store-gateway",
168-
"--rm",
169-
"-p", port+":"+"8888",
170-
"-e", "ETCD_PORT="+etcdPort,
171-
"-e", "HOST="+ipaddr,
172-
"-e", "EXTERNAL_PORT="+port,
173-
cephImage)
174-
}()
17577
dockercli.PrintToStdout(t, stdout, stdoutPipe, "deis-store-gateway running...")
17678
if err != nil {
17779
t.Fatal(err)

0 commit comments

Comments
 (0)