For graceful restart case it was done when the container was brought
down. But for ungraceful cases, the persistence is missing for nw
connect
Signed-off-by: Madhu Venugopal <madhu@docker.com>
(cherry picked from commit 401632c7568408ee9689adc1da855cfb1409e906)
... | ... |
@@ -959,7 +959,13 @@ func (container *Container) ConnectToNetwork(idOrName string) error { |
959 | 959 |
if !container.Running { |
960 | 960 |
return derr.ErrorCodeNotRunning.WithArgs(container.ID) |
961 | 961 |
} |
962 |
- return container.connectToNetwork(idOrName, true) |
|
962 |
+ if err := container.connectToNetwork(idOrName, true); err != nil { |
|
963 |
+ return err |
|
964 |
+ } |
|
965 |
+ if err := container.toDiskLocking(); err != nil { |
|
966 |
+ return fmt.Errorf("Error saving container to disk: %v", err) |
|
967 |
+ } |
|
968 |
+ return nil |
|
963 | 969 |
} |
964 | 970 |
|
965 | 971 |
func (container *Container) connectToNetwork(idOrName string, updateSettings bool) error { |
... | ... |
@@ -1191,7 +1197,14 @@ func (container *Container) DisconnectFromNetwork(n libnetwork.Network) error { |
1191 | 1191 |
return derr.ErrorCodeNotRunning.WithArgs(container.ID) |
1192 | 1192 |
} |
1193 | 1193 |
|
1194 |
- return container.disconnectFromNetwork(n) |
|
1194 |
+ if err := container.disconnectFromNetwork(n); err != nil { |
|
1195 |
+ return err |
|
1196 |
+ } |
|
1197 |
+ |
|
1198 |
+ if err := container.toDiskLocking(); err != nil { |
|
1199 |
+ return fmt.Errorf("Error saving container to disk: %v", err) |
|
1200 |
+ } |
|
1201 |
+ return nil |
|
1195 | 1202 |
} |
1196 | 1203 |
|
1197 | 1204 |
func (container *Container) disconnectFromNetwork(n libnetwork.Network) error { |