Skip to content

Commit bfb151c

Browse files
committed
Fix for leaking CA while deleting network. Even if deleting endpoint failed, CNI should invoke ipam release call.
1 parent 9e768ff commit bfb151c

File tree

1 file changed

+3
-4
lines changed

1 file changed

+3
-4
lines changed

cni/network/network.go

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -320,8 +320,8 @@ func (plugin *netPlugin) Delete(args *cniSkel.CmdArgs) error {
320320
// Delete the endpoint.
321321
err = plugin.nm.DeleteEndpoint(networkId, endpointId)
322322
if err != nil {
323-
err = plugin.Errorf("Failed to delete endpoint: %v", err)
324-
return err
323+
// Log the error but don't return before releasing address
324+
log.Printf("Container Namespace might have been removed. Failed to delete endpoint: %v", err)
325325
}
326326

327327
// Call into IPAM plugin to release the endpoint's addresses.
@@ -330,8 +330,7 @@ func (plugin *netPlugin) Delete(args *cniSkel.CmdArgs) error {
330330
nwCfg.Ipam.Address = address.IP.String()
331331
err = plugin.DelegateDel(nwCfg.Ipam.Type, nwCfg)
332332
if err != nil {
333-
err = plugin.Errorf("Failed to release address: %v", err)
334-
return err
333+
log.Printf("Failed to release address: %v", err)
335334
}
336335
}
337336

0 commit comments

Comments
 (0)