@@ -67,6 +67,9 @@ func RunMockCeph(t *testing.T, name string, cli *client.DockerCli, etcdPort stri
6767 daemonName := name + "-daemon"
6868 RunMockCephDaemon (t , daemonName , etcdPort )
6969
70+ metadataName := name + "-metadata"
71+ RunMockCephMetadata (t , metadataName , etcdPort )
72+
7073 gatewayName := name + "-gateway"
7174 RunMockCephGateway (t , gatewayName , utils .RandomPort (), etcdPort )
7275}
@@ -122,6 +125,31 @@ func RunMockCephDaemon(t *testing.T, name string, etcdPort string) {
122125 }
123126}
124127
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+
125153// RunMockCephGateway starts a mock S3 endpoint used for component testing
126154func RunMockCephGateway (t * testing.T , name string , port string , etcdPort string ) {
127155 var err error
0 commit comments