// 2020 Rackspace, Inc. // // Licensed under the Apache License, Version 2.0 (the "License"): you may // not use this file except in compliance with the License. You may obtain // a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, WITHOUT // WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the // License for the specific language governing permissions and limitations // under the License. package portaudit import ( "github.com/jokelyo/argparse" "github.rackspace.com/DCM/gomigrate/core" ) var ( argCage *int argRack *int argDC *string ) // 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("portaudit", "Run a port-audit on legacy Datapipe device IDs") argCage = cmd.Int("", "cage", &argparse.Options{Help: "Datapipe Cage ID"}) argRack = cmd.Int("", "rack", &argparse.Options{Help: "Datapipe Rack ID"}) argDC = cmd.String("", "dc", &argparse.Options{Help: "Rackspace DC Name (i.e. IAD4, ORD1, etc..)"}) return core.Plugin{CMD: cmd, Func: pluginFunc} }