def run_from_args(parsed): log_cache_events(getattr(parsed, 'log_cache_events', False)) flags.set_from_args(parsed) parsed.cls.pre_init_hook(parsed) # we can now use the logger for stdout logger.info("Running with dbt{}".format(dbt.version.installed)) # this will convert DbtConfigErrors into RuntimeExceptions task = parsed.cls.from_args(args=parsed) logger.debug("running dbt with arguments {parsed}", parsed=str(parsed)) log_path = None if task.config is not None: log_path = getattr(task.config, 'log_path', None) # we can finally set the file logger up log_manager.set_path(log_path) if dbt.tracking.active_user is not None: # mypy appeasement, always true logger.debug("Tracking: {}".format(dbt.tracking.active_user.state())) results = None with track_run(task): results = task.run() return task, results
import string import yaml from dbt.config import RuntimeConfig from dbt.logger import GLOBAL_LOGGER as logger from dbt.logger import log_manager from dbt.task.compile import CompileTask from dbt.task.generate import _coerce_decimal, get_adapter from .app import App from .queries import COLUMN_NAME_FILTER, GET_RELATIONS_BY_SCHEMA_AND_START_LETTER_SQL, GET_RELATIONS_BY_SCHEMA_SQL from .relation import Relation from .schema import InvalidConfigurationException, Schema # Set up the dbt logger log_manager.set_path(None) # log_manager.set_debug() # Uncomment for dbt's debug level logging DEFAULT_DESCRIPTION = "TODO: Replace me" SQL_ESCAPE_CHAR = "^" LOCAL_PATH = os.path.abspath(os.path.dirname(__file__)) class GetCatalogTask(CompileTask): """ A dbt task to load the information schema to dict in the form of: { 'SCHEMA_NAME': { 'TABLE_NAME_1': [ 'COLUMN_1_NAME', 'COLUMN_2_NAME',