package finalize import ( "github.rackspace.com/DCM/gomigrate/core" "github.rackspace.com/DCM/gomigrate/shared" ) const ( argC = "csv" argD = "devices" argM = "move-groups" argP = "post-finalize" argR = "routines" ) var args = map[string]interface{}{ argC: nil, argD: nil, argM: nil, argP: nil, argR: nil, } // Plugin function will return a argparse.Command type back to the parent parser // nolint:typecheck func Plugin(p *core.Parser) core.Plugin { // Create a argument for the DCX Translations logic cmd := p.NewCommand("finalize", "Finalize migration ports for devices.") args[argD] = shared.ArgDevices(cmd) args[argM] = shared.ArgMoveGroups(cmd) args[argR] = shared.ArgRoutines(cmd, 5) args[argC] = shared.ArgFlag(cmd, argC, "Create an XLSX results file") args[argP] = shared.ArgFlag(cmd, argP, "Run post-finalize only for device(s)") return core.Plugin{CMD: cmd, Func: pluginFunc} }