codekingpro/portable-devtools
114k
1from __future__ import annotations2 3from .base import ComponentBuilder4 5 6class SeederSelector(ComponentBuilder):7 def __init__(self, interpreter, parser) -> None:8 possible = self.options("virtualenv.seed")9 super().__init__(interpreter, parser, "seeder", possible)10 11 def add_selector_arg_parse(self, name, choices):12 self.parser.add_argument(13 f"--{name}",14 choices=choices,15 default=self._get_default(),16 required=False,17 help="seed packages install method",18 )19 self.parser.add_argument(20 "--no-seed",21 "--without-pip",22 help="do not install seed packages",23 action="store_true",24 dest="no_seed",25 )26 27 @staticmethod28 def _get_default():29 return "app-data"30 31 def handle_selected_arg_parse(self, options):32 return super().handle_selected_arg_parse(options)33 34 def create(self, options):35 return self._impl_class(options)36 37 38__all__ = [39 "SeederSelector",40]41 