diff options
| author | crupest <crupest@outlook.com> | 2024-11-11 01:12:29 +0800 | 
|---|---|---|
| committer | Yuqian Yang <crupest@crupest.life> | 2025-01-20 22:54:25 +0800 | 
| commit | f81f0a9a586574aeeeca395d345ff9780c6fde68 (patch) | |
| tree | 572b99b62ea2edd2f2f34389b7d36d091b862546 /tools/cru-py | |
| parent | 103adca3b574fddc697d9daf4a0807bf42e972b5 (diff) | |
| download | crupest-f81f0a9a586574aeeeca395d345ff9780c6fde68.tar.gz crupest-f81f0a9a586574aeeeca395d345ff9780c6fde68.tar.bz2 crupest-f81f0a9a586574aeeeca395d345ff9780c6fde68.zip | |
HALF WORK: 2024.1.20 - 3
Diffstat (limited to 'tools/cru-py')
| -rw-r--r-- | tools/cru-py/cru/service/_base.py | 23 | 
1 files changed, 21 insertions, 2 deletions
| diff --git a/tools/cru-py/cru/service/_base.py b/tools/cru-py/cru/service/_base.py index 90e1f85..6f2a61a 100644 --- a/tools/cru-py/cru/service/_base.py +++ b/tools/cru-py/cru/service/_base.py @@ -235,8 +235,25 @@ class CommandDispatcher(AppFeatureProvider):          self._parsed_args: argparse.Namespace | None = None      def setup_arg_parser(self) -> None: +        epilog = """ +==> to start, +./tools/manage init +./tools/manage config init +ln -s generated/docker-compose.yaml . +# Then edit config file. + +==> to update +git pull +./tools/manage template generate --no-dry-run +docker compose up +        """.strip() +          self._map: dict[str, AppCommandFeatureProvider] = {} -        arg_parser = argparse.ArgumentParser(description="Service management") +        arg_parser = argparse.ArgumentParser( +            description="Service management", +            formatter_class=argparse.RawDescriptionHelpFormatter, +            epilog=epilog, +        )          arg_parser.add_argument(              "--project-dir",              help="The path of the project directory.", @@ -245,7 +262,6 @@ class CommandDispatcher(AppFeatureProvider):          )          subparsers = arg_parser.add_subparsers(              dest="command", -            required=True,              help="The management command to execute.",              metavar="COMMAND",          ) @@ -275,6 +291,9 @@ class CommandDispatcher(AppFeatureProvider):      def run_command(self, args: argparse.Namespace | None = None) -> None:          real_args = args or self.get_program_parsed_args() +        if real_args.command is None: +            self.arg_parser.print_help() +            return          self.map[real_args.command].run_command(real_args) | 
