Merge branch '1.0'

Conflicts:
	proxy/create_exec_interceptor.go
	test/600_proxy_docker_py_test.sh
This commit is contained in:
Matthias Radestock committed 2015-08-28 20:29:43 +01:00
commit 8960a3a898
2 files changed
+17 -14

No files matched your search

+7 -6
View File
@@ -47,6 +47,7 @@ func (i *createContainerInterceptor) InterceptRequest(r *http.Request) error {
return err
}
r.Body.Close()
r.Body = ioutil.NopCloser(bytes.NewReader(body))
container := createContainerRequestBody{}
if err := json.Unmarshal(body, &container); err != nil {
@@ -72,14 +73,14 @@ func (i *createContainerInterceptor) InterceptRequest(r *http.Request) error {
if err := i.setWeaveDNS(&container, hostname); err != nil {
return err
}
}
newBody, err := json.Marshal(container)
if err != nil {
return err
newBody, err := json.Marshal(container)
if err != nil {
return err
}
r.Body = ioutil.NopCloser(bytes.NewReader(newBody))
r.ContentLength = int64(len(newBody))
}
r.Body = ioutil.NopCloser(bytes.NewReader(newBody))
r.ContentLength = int64(len(newBody))
return nil
}
+10 -8
View File
@@ -1,6 +1,7 @@
package proxy
import (
"bytes"
"encoding/json"
"io/ioutil"
"net/http"
@@ -18,6 +19,7 @@ func (i *createExecInterceptor) InterceptRequest(r *http.Request) error {
return err
}
r.Body.Close()
r.Body = ioutil.NopCloser(bytes.NewReader(body))
options := docker.CreateExecOptions{}
if err := json.Unmarshal(body, &options); err != nil {
@@ -29,20 +31,20 @@ func (i *createExecInterceptor) InterceptRequest(r *http.Request) error {
return err
}
_, hasWeaveWait := container.Volumes["/w"]
if _, hasWeaveWait := container.Volumes["/w"]; !hasWeaveWait {
return nil
}
cidrs, err := i.proxy.weaveCIDRsFromConfig(container.Config, container.HostConfig)
if err != nil {
Log.Infof("Leaving container %s alone because %s", container.ID, err)
} else if hasWeaveWait {
Log.Infof("Exec in container %s with WEAVE_CIDR \"%s\"", container.ID, strings.Join(cidrs, " "))
options.Cmd = append(weaveWaitEntrypoint, options.Cmd...)
return nil
}
if err := marshalRequestBody(r, options); err != nil {
return err
}
Log.Infof("Exec in container %s with WEAVE_CIDR \"%s\"", container.ID, strings.Join(cidrs, " "))
options.Cmd = append(weaveWaitEntrypoint, options.Cmd...)
return nil
return marshalRequestBody(r, options)
}
func (i *createExecInterceptor) InterceptResponse(r *http.Response) error {