예제 #1
0
파일: base.py 프로젝트: zimagi/zimagi
    def bootstrap(self, options):
        Cipher.initialize()

        if options.get('debug', False):
            Runtime.debug(True)

        if options.get('no_parallel', False):
            Runtime.parallel(False)

        if options.get('no_color', False):
            Runtime.color(False)

        if options.get('display_width', False):
            Runtime.width(options.get('display_width'))

        self.init_environment()

        if self.bootstrap_ensure() and settings.CLI_EXEC:
            self._user._ensure(self)

        self.set_options(options, True)

        if self.bootstrap_ensure() and settings.CLI_EXEC:
            self.ensure_resources()

        if self.initialize_services():
            self.manager.initialize_services(settings.STARTUP_SERVICES)
        return self
예제 #2
0
파일: base.py 프로젝트: mbeacom/zimagi
    def bootstrap(self, options, primary = False):
        if primary:
            if options.get('debug', False):
                Runtime.debug(True)

            if options.get('no_parallel', False):
                Runtime.parallel(False)

            if options.get('no_color', False):
                Runtime.color(False)

            if options.get('display_width', False):
                Runtime.width(options.get('display_width'))

        self._environment._ensure(self)
        self._user._ensure(self)

        self.set_options(options)
        if primary and self.bootstrap_ensure():
            self.ensure_resources()
예제 #3
0
파일: cli.py 프로젝트: mbeacom/zimagi
    def initialize(self):
        django.setup()

        parser = CommandParser(add_help=False, allow_abbrev=False)
        parser.add_argument('args', nargs='*')
        namespace, extra = parser.parse_known_args(self.argv[1:])
        args = namespace.args

        if not args:
            args = ['help']

        if '--debug' in extra:
            Runtime.debug(True)

        if '--no-color' in extra:
            Runtime.color(False)

        if not settings.NO_MIGRATE and args and args[0] not in (
                'check', 'migrate', 'makemigrations'):
            verbosity = 3 if Runtime.debug() else 0
            start_time = time.time()
            current_time = start_time

            while (current_time - start_time) <= settings.AUTO_MIGRATE_TIMEOUT:
                try:
                    call_command('migrate',
                                 interactive=False,
                                 verbosity=verbosity)
                    break

                except Exception:
                    pass

                time.sleep(settings.AUTO_MIGRATE_INTERVAL)
                current_time = time.time()

        return args
예제 #4
0
파일: base.py 프로젝트: mbeacom/zimagi
 def no_color(self):
     return self.options.get('no_color', not Runtime.color())