add support docker connect / disconnect

Signed-off-by: Victor Vieux <vieux@docker.com>
This commit is contained in:
Victor Vieux
2015-10-08 20:24:47 -07:00
parent e5eeec580c
commit 587d535188
2 changed files with 52 additions and 24 deletions

View File

@@ -53,30 +53,32 @@ var routes = map[string]map[string]handler{
"/volumes/{volumename:.*}": proxyVolume,
},
"POST": {
"/auth": proxyRandom,
"/commit": postCommit,
"/build": postBuild,
"/images/create": postImagesCreate,
"/images/load": postImagesLoad,
"/images/{name:.*}/push": proxyImageTagOptional,
"/images/{name:.*}/tag": postTagImage,
"/containers/create": postContainersCreate,
"/containers/{name:.*}/kill": proxyContainerAndForceRefresh,
"/containers/{name:.*}/pause": proxyContainerAndForceRefresh,
"/containers/{name:.*}/unpause": proxyContainerAndForceRefresh,
"/containers/{name:.*}/rename": postRenameContainer,
"/containers/{name:.*}/restart": proxyContainerAndForceRefresh,
"/containers/{name:.*}/start": proxyContainerAndForceRefresh,
"/containers/{name:.*}/stop": proxyContainerAndForceRefresh,
"/containers/{name:.*}/wait": proxyContainerAndForceRefresh,
"/containers/{name:.*}/resize": proxyContainer,
"/containers/{name:.*}/attach": proxyHijack,
"/containers/{name:.*}/copy": proxyContainer,
"/containers/{name:.*}/exec": postContainersExec,
"/exec/{execid:.*}/start": postExecStart,
"/exec/{execid:.*}/resize": proxyContainer,
"/networks/create": postNetworksCreate,
"/volumes": postVolumes,
"/auth": proxyRandom,
"/commit": postCommit,
"/build": postBuild,
"/images/create": postImagesCreate,
"/images/load": postImagesLoad,
"/images/{name:.*}/push": proxyImageTagOptional,
"/images/{name:.*}/tag": postTagImage,
"/containers/create": postContainersCreate,
"/containers/{name:.*}/kill": proxyContainerAndForceRefresh,
"/containers/{name:.*}/pause": proxyContainerAndForceRefresh,
"/containers/{name:.*}/unpause": proxyContainerAndForceRefresh,
"/containers/{name:.*}/rename": postRenameContainer,
"/containers/{name:.*}/restart": proxyContainerAndForceRefresh,
"/containers/{name:.*}/start": proxyContainerAndForceRefresh,
"/containers/{name:.*}/stop": proxyContainerAndForceRefresh,
"/containers/{name:.*}/wait": proxyContainerAndForceRefresh,
"/containers/{name:.*}/resize": proxyContainer,
"/containers/{name:.*}/attach": proxyHijack,
"/containers/{name:.*}/copy": proxyContainer,
"/containers/{name:.*}/exec": postContainersExec,
"/exec/{execid:.*}/start": postExecStart,
"/exec/{execid:.*}/resize": proxyContainer,
"/networks/create": postNetworksCreate,
"/networks/{networkid:.*}/connect": proxyNetwork,
"/networks/{networkid:.*}/disconnect": proxyNetwork,
"/volumes": postVolumes,
},
"PUT": {
"/containers/{name:.*}/archive": proxyContainer,

View File

@@ -66,3 +66,29 @@ function teardown() {
run docker_swarm network ls
[ "${#lines[@]}" -eq 7 ]
}
@test "docker network disconnect connect" {
start_docker_with_busybox 2
swarm_manage
# run
docker_swarm run -d --name test_container -e constraint:node==node-0 busybox sleep 100
run docker_swarm network inspect node-0/bridge
[ "${#lines[@]}" -eq 13 ]
docker_swarm network disconnect node-0/bridge test_container
run docker_swarm network inspect node-0/bridge
[ "${#lines[@]}" -eq 6 ]
docker_swarm network connect node-0/bridge test_container
run docker_swarm network inspect node-0/bridge
[ "${#lines[@]}" -eq 13 ]
docker_swarm rm -f test_container
run docker_swarm network inspect node-0/bridge
[ "${#lines[@]}" -eq 6 ]
}