Merge pull request #438 from tnqn/vlan-multi-del
Fix vlan plugin returning error when device is already removed
This commit is contained in:
commit
1f33fb729a
@ -207,7 +207,7 @@ func cmdDel(args *skel.CmdArgs) error {
|
|||||||
|
|
||||||
err = ns.WithNetNSPath(args.Netns, func(_ ns.NetNS) error {
|
err = ns.WithNetNSPath(args.Netns, func(_ ns.NetNS) error {
|
||||||
err = ip.DelLinkByName(args.IfName)
|
err = ip.DelLinkByName(args.IfName)
|
||||||
if err != nil && err != ip.ErrLinkNotFound {
|
if err != nil && err == ip.ErrLinkNotFound {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
return err
|
return err
|
||||||
|
@ -292,6 +292,19 @@ var _ = Describe("vlan Operations", func() {
|
|||||||
return nil
|
return nil
|
||||||
})
|
})
|
||||||
Expect(err).NotTo(HaveOccurred())
|
Expect(err).NotTo(HaveOccurred())
|
||||||
|
|
||||||
|
// DEL can be called multiple times, make sure no error is returned
|
||||||
|
// if the device is already removed.
|
||||||
|
err = originalNS.Do(func(ns.NetNS) error {
|
||||||
|
defer GinkgoRecover()
|
||||||
|
|
||||||
|
err = testutils.CmdDelWithArgs(args, func() error {
|
||||||
|
return cmdDel(args)
|
||||||
|
})
|
||||||
|
Expect(err).NotTo(HaveOccurred())
|
||||||
|
return nil
|
||||||
|
})
|
||||||
|
Expect(err).NotTo(HaveOccurred())
|
||||||
})
|
})
|
||||||
|
|
||||||
It("configures and deconfigures an CNI V4 vlan link with ADD/CHECK/DEL", func() {
|
It("configures and deconfigures an CNI V4 vlan link with ADD/CHECK/DEL", func() {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user