예제 #1
0
class BuildCommand(Command):
    'build packages'

    log = logging.getLogger(__name__)

    def __init__(self, *args, **kwargs):
        super(BuildCommand, self).__init__(*args, **kwargs)
        self.env_builder = EnvBuilder()

    def get_parser(self, prog_name):
        parser = super(BuildCommand, self).get_parser(prog_name)
        parser.add_argument('bot', help='name of the bot to build')
        parser.add_argument('--path', help='path to the source directory')

        self.env_builder.set_arguments(parser)

        return parser

    def take_action(self, parsed_args):
        src_dir = parsed_args.path or os.getcwd()
        src = Source(src_dir)
        env = self.env_builder.parse(parsed_args)

        data = bot_settings(parsed_args.bot)
        distro_init(data['distro'], False)
        bot_init(parsed_args.bot)
        build_src(parsed_args.bot, src.name, src_dir, env)
예제 #2
0
 def __init__(self, *args, **kwargs):
     super(BuildCommand, self).__init__(*args, **kwargs)
     self.env_builder = EnvBuilder()