MCPcopy Create free account
hub / github.com/apache/mesos / main

Method main

src/python/cli_new/lib/cli/plugins/base.py:132–180  ·  view source on GitHub ↗

Main method takes argument from top level mesos and parses them to call the appropriate method.

(self, argv)

Source from the content-addressed store, hash-verified

130 return (option, comp_words)
131
132 def main(self, argv):
133 """
134 Main method takes argument from top level mesos and parses them
135 to call the appropriate method.
136 """
137 command_strings = cli.util.format_commands_help(self.COMMANDS)
138
139 usage = self.USAGE.format(
140 plugin=self.PLUGIN_NAME,
141 short_help=self.SHORT_HELP,
142 commands=command_strings)
143
144 arguments = docopt(
145 usage,
146 argv=argv,
147 version=self.VERSION,
148 program="mesos " + self.PLUGIN_NAME,
149 options_first=True)
150
151 cmd = arguments["<command>"]
152 argv = arguments["<args>"]
153
154 if cmd in self.COMMANDS.keys():
155 if "external" not in self.COMMANDS[cmd]:
156 argument_format, short_help, long_help, flag_format = \
157 cli.util.format_subcommands_help(self.COMMANDS[cmd])
158
159 usage = SUBCOMMAND_USAGE.format(
160 plugin=self.PLUGIN_NAME,
161 command=cmd,
162 arguments=argument_format,
163 flags=flag_format,
164 short_help=short_help,
165 long_help=long_help)
166
167 arguments = docopt(
168 usage,
169 argv=argv,
170 program="mesos " + self.PLUGIN_NAME + " " + cmd,
171 version=self.VERSION,
172 options_first=True)
173
174 if "alias" in self.COMMANDS[cmd]:
175 cmd = self.COMMANDS[cmd]["alias"]
176
177 self.__setup__(cmd, argv)
178 return getattr(self, cmd.replace("-", "_"))(arguments)
179
180 return self.main(["--help"])

Callers 2

main.pyFile · 0.45
mainFunction · 0.45

Calls 3

__setup__Method · 0.95
docoptFunction · 0.90
keysMethod · 0.45

Tested by

no test coverage detected