Skip to content

Commit 245d121

Browse files
committed
api/types: migrate NetworkConnect, NetworkDisconnect to api/types/network
Signed-off-by: Sebastiaan van Stijn <[email protected]>
1 parent 89624e0 commit 245d121

9 files changed

Lines changed: 41 additions & 30 deletions

File tree

api/server/router/network/network_routes.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -239,7 +239,7 @@ func (n *networkRouter) postNetworkConnect(ctx context.Context, w http.ResponseW
239239
return err
240240
}
241241

242-
var connect types.NetworkConnect
242+
var connect network.ConnectOptions
243243
if err := httputils.ReadJSON(r, &connect); err != nil {
244244
return err
245245
}
@@ -256,7 +256,7 @@ func (n *networkRouter) postNetworkDisconnect(ctx context.Context, w http.Respon
256256
return err
257257
}
258258

259-
var disconnect types.NetworkDisconnect
259+
var disconnect network.DisconnectOptions
260260
if err := httputils.ReadJSON(r, &disconnect); err != nil {
261261
return err
262262
}

api/types/network/network.go

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,20 @@ const (
1717
NetworkNat = "nat"
1818
)
1919

20+
// ConnectOptions represents the data to be used to connect a container to the
21+
// network.
22+
type ConnectOptions struct {
23+
Container string
24+
EndpointConfig *EndpointSettings `json:",omitempty"`
25+
}
26+
27+
// DisconnectOptions represents the data to be used to disconnect a container
28+
// from the network.
29+
type DisconnectOptions struct {
30+
Container string
31+
Force bool
32+
}
33+
2034
// Address represents an IP address
2135
type Address struct {
2236
Addr string

api/types/types.go

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -477,18 +477,6 @@ type NetworkCreateRequest struct {
477477
Name string // Name is the requested name of the network.
478478
}
479479

480-
// NetworkConnect represents the data to be used to connect a container to the network
481-
type NetworkConnect struct {
482-
Container string
483-
EndpointConfig *network.EndpointSettings `json:",omitempty"`
484-
}
485-
486-
// NetworkDisconnect represents the data to be used to disconnect a container from the network
487-
type NetworkDisconnect struct {
488-
Container string
489-
Force bool
490-
}
491-
492480
// NetworkInspectOptions holds parameters to inspect network
493481
type NetworkInspectOptions struct {
494482
Scope string

api/types/types_deprecated.go

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,3 +39,13 @@ type ImageRemoveOptions = image.RemoveOptions
3939
//
4040
// Deprecated: use [network.CreateResponse].
4141
type NetworkCreateResponse = network.CreateResponse
42+
43+
// NetworkConnect represents the data to be used to connect a container to the network
44+
//
45+
// Deprecated: use [network.ConnectOptions].
46+
type NetworkConnect = network.ConnectOptions
47+
48+
// NetworkDisconnect represents the data to be used to disconnect a container from the network
49+
//
50+
// Deprecated: use [network.DisconnectOptions].
51+
type NetworkDisconnect = network.DisconnectOptions

client/network_connect.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,12 @@ package client // import "github.com/docker/docker/client"
33
import (
44
"context"
55

6-
"github.com/docker/docker/api/types"
76
"github.com/docker/docker/api/types/network"
87
)
98

109
// NetworkConnect connects a container to an existent network in the docker host.
1110
func (cli *Client) NetworkConnect(ctx context.Context, networkID, containerID string, config *network.EndpointSettings) error {
12-
nc := types.NetworkConnect{
11+
nc := network.ConnectOptions{
1312
Container: containerID,
1413
EndpointConfig: config,
1514
}

client/network_connect_test.go

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ import (
1010
"strings"
1111
"testing"
1212

13-
"github.com/docker/docker/api/types"
1413
"github.com/docker/docker/api/types/network"
1514
"github.com/docker/docker/errdefs"
1615
"gotest.tools/v3/assert"
@@ -39,7 +38,7 @@ func TestNetworkConnectEmptyNilEndpointSettings(t *testing.T) {
3938
return nil, fmt.Errorf("expected POST method, got %s", req.Method)
4039
}
4140

42-
var connect types.NetworkConnect
41+
var connect network.ConnectOptions
4342
if err := json.NewDecoder(req.Body).Decode(&connect); err != nil {
4443
return nil, err
4544
}
@@ -78,7 +77,7 @@ func TestNetworkConnect(t *testing.T) {
7877
return nil, fmt.Errorf("expected POST method, got %s", req.Method)
7978
}
8079

81-
var connect types.NetworkConnect
80+
var connect network.ConnectOptions
8281
if err := json.NewDecoder(req.Body).Decode(&connect); err != nil {
8382
return nil, err
8483
}

client/network_disconnect.go

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,15 @@ package client // import "github.com/docker/docker/client"
33
import (
44
"context"
55

6-
"github.com/docker/docker/api/types"
6+
"github.com/docker/docker/api/types/network"
77
)
88

99
// NetworkDisconnect disconnects a container from an existent network in the docker host.
1010
func (cli *Client) NetworkDisconnect(ctx context.Context, networkID, containerID string, force bool) error {
11-
nd := types.NetworkDisconnect{Container: containerID, Force: force}
11+
nd := network.DisconnectOptions{
12+
Container: containerID,
13+
Force: force,
14+
}
1215
resp, err := cli.post(ctx, "/networks/"+networkID+"/disconnect", nil, nd, nil)
1316
ensureReaderClosed(resp)
1417
return err

client/network_disconnect_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ import (
1010
"strings"
1111
"testing"
1212

13-
"github.com/docker/docker/api/types"
13+
"github.com/docker/docker/api/types/network"
1414
"github.com/docker/docker/errdefs"
1515
"gotest.tools/v3/assert"
1616
is "gotest.tools/v3/assert/cmp"
@@ -38,7 +38,7 @@ func TestNetworkDisconnect(t *testing.T) {
3838
return nil, fmt.Errorf("expected POST method, got %s", req.Method)
3939
}
4040

41-
var disconnect types.NetworkDisconnect
41+
var disconnect network.DisconnectOptions
4242
if err := json.NewDecoder(req.Body).Decode(&disconnect); err != nil {
4343
return nil, err
4444
}

integration-cli/docker_api_network_test.go

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -290,23 +290,21 @@ func createNetwork(c *testing.T, config types.NetworkCreateRequest, expectedStat
290290
}
291291

292292
func connectNetwork(c *testing.T, nid, cid string) {
293-
config := types.NetworkConnect{
293+
resp, _, err := request.Post(testutil.GetContext(c), "/networks/"+nid+"/connect", request.JSONBody(network.ConnectOptions{
294294
Container: cid,
295-
}
296-
297-
resp, _, err := request.Post(testutil.GetContext(c), "/networks/"+nid+"/connect", request.JSONBody(config))
298-
assert.Equal(c, resp.StatusCode, http.StatusOK)
295+
}))
299296
assert.NilError(c, err)
297+
assert.Equal(c, resp.StatusCode, http.StatusOK)
300298
}
301299

302300
func disconnectNetwork(c *testing.T, nid, cid string) {
303-
config := types.NetworkConnect{
301+
config := network.ConnectOptions{
304302
Container: cid,
305303
}
306304

307305
resp, _, err := request.Post(testutil.GetContext(c), "/networks/"+nid+"/disconnect", request.JSONBody(config))
308-
assert.Equal(c, resp.StatusCode, http.StatusOK)
309306
assert.NilError(c, err)
307+
assert.Equal(c, resp.StatusCode, http.StatusOK)
310308
}
311309

312310
func deleteNetwork(c *testing.T, id string, shouldSucceed bool) {

0 commit comments

Comments
 (0)