Beispiel #1
0
    def wrapper(*args, **kwargs):
        """
        An wrapper for cli functions. It assumes to have Namespace instance
        at 1st positional argument

        :param args: Positional argument. It assumes to have Namespace instance
            at 1st positional argument
        :param kwargs: A passthrough keyword argument
        """
        if not args:
            raise ValueError("Args should be set")
        if not isinstance(args[0], Namespace):
            raise ValueError(
                "1st positional argument should be argparse.Namespace instance,"
                f"but is {type(args[0])}")
        metrics = _build_metrics(f.__name__, args[0])
        cli_action_loggers.on_pre_execution(**metrics)
        try:
            return f(*args, **kwargs)
        except Exception as e:
            metrics['error'] = e
            raise
        finally:
            metrics['end_datetime'] = datetime.utcnow()
            cli_action_loggers.on_post_execution(**metrics)
Beispiel #2
0
        def wrapper(*args, **kwargs):
            """
            An wrapper for cli functions.

            :param args: Positional argument.
            :param kwargs: A passthrough keyword argument
            """
            if check_cli_args:
                _check_cli_args(args)
            metrics = _build_metrics(f.__name__, args, kwargs)
            cli_action_loggers.on_pre_execution(**metrics)
            try:
                # Check and run migrations if necessary
                if check_db:
                    from airflow.utils.db import check_and_run_migrations, synchronize_log_template

                    check_and_run_migrations()
                    synchronize_log_template()
                return f(*args, **kwargs)
            except Exception as e:
                metrics['error'] = e
                raise
            finally:
                metrics['end_datetime'] = datetime.utcnow()
                cli_action_loggers.on_post_execution(**metrics)
Beispiel #3
0
    def wrapper(*args, **kwargs):
        """
        An wrapper for cli functions. It assumes to have Namespace instance
        at 1st positional argument

        :param args: Positional argument. It assumes to have Namespace instance
            at 1st positional argument
        :param kwargs: A passthrough keyword argument
        """
        _check_cli_args(args)
        metrics = _build_metrics(f.__name__, args[0])
        cli_action_loggers.on_pre_execution(**metrics)
        try:
            return f(*args, **kwargs)
        except Exception as e:
            metrics['error'] = e
            raise
        finally:
            metrics['end_datetime'] = datetime.utcnow()
            cli_action_loggers.on_post_execution(**metrics)
Beispiel #4
0
 def wrapper(*args, **kwargs):
     """
     An wrapper for cli functions. It assumes to have Namespace instance
     at 1st positional argument
     :param args: Positional argument. It assumes to have Namespace instance
     at 1st positional argument
     :param kwargs: A passthrough keyword argument
     """
     assert args
     assert isinstance(args[0], Namespace), \
         "1st positional argument should be argparse.Namespace instance, " \
         "but {}".format(args[0])
     metrics = _build_metrics(f.__name__, args[0])
     cli_action_loggers.on_pre_execution(**metrics)
     try:
         return f(*args, **kwargs)
     except Exception as e:
         metrics['error'] = e
         raise
     finally:
         metrics['end_datetime'] = datetime.utcnow()
         cli_action_loggers.on_post_execution(**metrics)
Beispiel #5
0
        def wrapper(*args, **kwargs):
            """
            An wrapper for cli functions. It assumes to have Namespace instance
            at 1st positional argument

            :param args: Positional argument. It assumes to have Namespace instance
                at 1st positional argument
            :param kwargs: A passthrough keyword argument
            """
            _check_cli_args(args)
            metrics = _build_metrics(f.__name__, args[0])
            cli_action_loggers.on_pre_execution(**metrics)
            try:
                # Check and run migrations if necessary
                if check_db:
                    check_and_run_migrations()
                    synchronize_log_filename_template()
                return f(*args, **kwargs)
            except Exception as e:
                metrics['error'] = e
                raise
            finally:
                metrics['end_datetime'] = datetime.utcnow()
                cli_action_loggers.on_post_execution(**metrics)