self.parser = argparse.ArgumentParser(
description = _("Pakfire command line interface."),
)
-
- self.parse_common_arguments()
+ self._add_common_arguments(self.parser)
self.parser.add_argument("--root", metavar="PATH",
default="/",
return p
- def parse_common_arguments(self, offline_switch=True):
- self.parser.add_argument("--version", action="version",
+ def _add_common_arguments(self, parser, offline_switch=True):
+ parser.add_argument("--version", action="version",
version="%(prog)s " + PAKFIRE_VERSION)
- self.parser.add_argument("-v", "--verbose", action="store_true",
+ parser.add_argument("-v", "--verbose", action="store_true",
help=_("Enable verbose output."))
- self.parser.add_argument("-c", "--config", nargs="?",
+ parser.add_argument("-c", "--config", nargs="?",
help=_("Path to a configuration file to load."))
- self.parser.add_argument("--disable-repo", nargs="*", metavar="REPO",
+ parser.add_argument("--disable-repo", nargs="*", metavar="REPO",
help=_("Disable a repository temporarily."), default=[])
- self.parser.add_argument("--enable-repo", nargs="*", metavar="REPO",
+ parser.add_argument("--enable-repo", nargs="*", metavar="REPO",
help=_("Enable a repository temporarily."), default=[])
if offline_switch:
- self.parser.add_argument("--offline", action="store_true",
+ parser.add_argument("--offline", action="store_true",
help=_("Run pakfire in offline mode."))
def parse_command_install(self):
sub_extract.add_argument("action", action="store_const", const="extract")
def run(self):
- args = self.parser.parse_args()
+ args = self.parse_cli()
assert args.func, "Argument function not defined"
return args.func(args)
self.parser = argparse.ArgumentParser(
description = _("Pakfire builder command line interface."),
)
-
- self.parse_common_arguments()
+ self._add_common_arguments(self.parser)
# Add sub-commands.
self.sub_commands = self.parser.add_subparsers()
return ret
- def parse_common_arguments(self, *args, **kwargs):
+ def _add_common_arguments(self, *args, **kwargs):
Cli.parse_common_arguments(self, *args, **kwargs)
self.parser.add_argument("--distro", nargs="?",
self.parser = argparse.ArgumentParser(
description = _("Pakfire server command line interface."),
)
-
- self.parse_common_arguments()
+ self._add_common_arguments(self.parser)
# Add sub-commands.
self.sub_commands = self.parser.add_subparsers()
self.parser = argparse.ArgumentParser(
description = _("Pakfire builder command line interface."),
)
-
- self.parse_common_arguments()
+ self._add_common_arguments(self.parser)
# Add sub-commands.
self.sub_commands = self.parser.add_subparsers()
class CliClient(Cli):
def __init__(self):
- self.parser = argparse.ArgumentParser(
+ # Create connection to pakfire hub
+ self.client = client.Client()
+
+ def parse_cli(self):
+ parser = argparse.ArgumentParser(
description = _("Pakfire client command line interface"),
)
+ subparsers = parser.add_subparsers(help=_("sub-command help"))
- self.parse_common_arguments(offline_switch=True)
-
- # Add sub-commands.
- self.sub_commands = self.parser.add_subparsers()
-
- self.parse_command_build()
- self.parse_command_connection_check()
+ # Add common arguments
+ self._add_common_arguments(parser, offline_switch=False)
- # Create connection to pakfire hub
- self.client = client.Client()
+ # build
+ build = subparsers.add_parser("build", help=_("Build a package remote"))
+ build.add_argument("packages", nargs="+", help=_("Package(s) to build"))
+ build.set_defaults(func=self.handle_build)
- def parse_command_build(self):
- # Parse "build" command.
- sub_build = self.sub_commands.add_parser("build",
- help=_("Build a package remote"))
- sub_build.add_argument("packages", nargs="+",
- help=_("Package(s) to build"))
- sub_build.set_defaults(func=self.handle_build)
-
- sub_build.add_argument("-a", "--arch",
+ build.add_argument("-a", "--arch",
help=_("Build the package(s) for the given architecture only"))
- def parse_command_connection_check(self):
- # Implement the "conn-check" command.
- sub_conn_check = self.sub_commands.add_parser("check-connection",
+ # check-connection
+ check_connection = subparsers.add_parser("check-connection",
help=_("Check the connection to the hub"))
- sub_conn_check.set_defaults(func=self.handle_check_connection)
+ check_connection.set_defaults(func=self.handle_check_connection)
+
+ return parser.parse_args()
def handle_build(self, ns):
# Create a temporary directory.
self.parser = argparse.ArgumentParser(
description = _("Pakfire daemon command line interface."),
)
-
- self.parse_common_arguments(offline_switch=True)
+ self._add_common_arguments(self.parser, offline_switch=True)
# Finally parse all arguments from the command line and save them.
self.args = self.parser.parse_args()
self.parser = argparse.ArgumentParser(
description = _("Pakfire key command line interface."),
)
-
- self.parse_common_arguments(offline_switch=True)
+ self._add_common_arguments(self.parser, offline_switch=True)
# Add sub-commands.
self.sub_commands = self.parser.add_subparsers()