Pass status along ipam update
Signed-off-by: Lionel Jouin <lionel.jouin@est.tech>
This commit is contained in:
committed by
Casey Callendrello
parent
a4fc6f93c7
commit
fec2d62676
@@ -429,11 +429,11 @@ func cmdDel(args *skel.CmdArgs) error {
|
||||
|
||||
func main() {
|
||||
skel.PluginMainFuncs(skel.CNIFuncs{
|
||||
Add: cmdAdd,
|
||||
Check: cmdCheck,
|
||||
Del: cmdDel,
|
||||
Add: cmdAdd,
|
||||
Check: cmdCheck,
|
||||
Del: cmdDel,
|
||||
Status: cmdStatus,
|
||||
/* FIXME GC */
|
||||
/* FIXME Status */
|
||||
}, version.All, bv.BuildString("macvlan"))
|
||||
}
|
||||
|
||||
@@ -570,3 +570,20 @@ func validateCniContainerInterface(intf current.Interface, modeExpected string)
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func cmdStatus(args *skel.CmdArgs) error {
|
||||
conf := NetConf{}
|
||||
if err := json.Unmarshal(args.StdinData, &conf); err != nil {
|
||||
return fmt.Errorf("failed to load netconf: %w", err)
|
||||
}
|
||||
|
||||
if conf.IPAM.Type != "" {
|
||||
if err := ipam.ExecStatus(conf.IPAM.Type, args.StdinData); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
// TODO: Check if master interface exists.
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
@@ -117,7 +117,7 @@ type (
|
||||
|
||||
func newTesterByVersion(version string) tester {
|
||||
switch {
|
||||
case strings.HasPrefix(version, "1.0."):
|
||||
case strings.HasPrefix(version, "1."):
|
||||
return &testerV10x{}
|
||||
case strings.HasPrefix(version, "0.4."):
|
||||
return &testerV04x{}
|
||||
@@ -322,6 +322,13 @@ var _ = Describe("macvlan Operations", func() {
|
||||
err := originalNS.Do(func(ns.NetNS) error {
|
||||
defer GinkgoRecover()
|
||||
|
||||
if testutils.SpecVersionHasSTATUS(ver) {
|
||||
err := testutils.CmdStatus(func() error {
|
||||
return cmdStatus(args)
|
||||
})
|
||||
Expect(err).NotTo(HaveOccurred())
|
||||
}
|
||||
|
||||
result, _, err := testutils.CmdAddWithArgs(args, func() error {
|
||||
return cmdAdd(args)
|
||||
})
|
||||
@@ -434,6 +441,13 @@ var _ = Describe("macvlan Operations", func() {
|
||||
err := originalNS.Do(func(ns.NetNS) error {
|
||||
defer GinkgoRecover()
|
||||
|
||||
if testutils.SpecVersionHasSTATUS(ver) {
|
||||
err := testutils.CmdStatus(func() error {
|
||||
return cmdStatus(args)
|
||||
})
|
||||
Expect(err).NotTo(HaveOccurred())
|
||||
}
|
||||
|
||||
result, _, err := testutils.CmdAddWithArgs(args, func() error {
|
||||
return cmdAdd(args)
|
||||
})
|
||||
@@ -520,6 +534,13 @@ var _ = Describe("macvlan Operations", func() {
|
||||
defer GinkgoRecover()
|
||||
|
||||
var err error
|
||||
if testutils.SpecVersionHasSTATUS(ver) {
|
||||
err := testutils.CmdStatus(func() error {
|
||||
return cmdStatus(args)
|
||||
})
|
||||
Expect(err).NotTo(HaveOccurred())
|
||||
}
|
||||
|
||||
result, _, err = testutils.CmdAddWithArgs(args, func() error {
|
||||
return cmdAdd(args)
|
||||
})
|
||||
@@ -660,6 +681,13 @@ var _ = Describe("macvlan Operations", func() {
|
||||
err = originalNS.Do(func(ns.NetNS) error {
|
||||
defer GinkgoRecover()
|
||||
|
||||
if testutils.SpecVersionHasSTATUS(ver) {
|
||||
err := testutils.CmdStatus(func() error {
|
||||
return cmdStatus(args)
|
||||
})
|
||||
Expect(err).NotTo(HaveOccurred())
|
||||
}
|
||||
|
||||
result, _, err := testutils.CmdAddWithArgs(args, func() error {
|
||||
return cmdAdd(args)
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user