def validate_version(self): """Ensure this package works with the installed version of dbt.""" installed = get_installed_version() if not versions_compatible(*self.dbt_version): msg = IMPOSSIBLE_VERSION_ERROR.format( package=self.project_name, version_spec=[x.to_version_string() for x in self.dbt_version]) raise DbtProjectError(msg) if not versions_compatible(installed, *self.dbt_version): msg = INVALID_VERSION_ERROR.format( package=self.project_name, installed=installed.to_version_string(), version_spec=[x.to_version_string() for x in self.dbt_version]) raise DbtProjectError(msg)
def run(self): if self.args.config_dir: self.path_info() return version = get_installed_version().to_version_string(skip_matcher=True) print('dbt version: {}'.format(version)) print('python version: {}'.format(sys.version.split()[0])) print('python path: {}'.format(sys.executable)) print('os info: {}'.format(platform.platform())) print('Using profiles.yml file at {}'.format(self.profile_path)) print('') self.test_configuration() self.test_dependencies() self.test_connection() for message in self.messages: print(message) print('')
def validate_version(self): """Ensure this package works with the installed version of dbt.""" installed = get_installed_version() if not versions_compatible(*self.dbt_version): msg = IMPOSSIBLE_VERSION_ERROR.format( package=self.project_name, version_spec=[ x.to_version_string() for x in self.dbt_version ] ) raise DbtProjectError(msg) if not versions_compatible(installed, *self.dbt_version): msg = INVALID_VERSION_ERROR.format( package=self.project_name, installed=installed.to_version_string(), version_spec=[ x.to_version_string() for x in self.dbt_version ] ) raise DbtProjectError(msg)
def validate_version( required: List[VersionSpecifier], project_name: str, ) -> None: """Ensure this package works with the installed version of dbt.""" installed = get_installed_version() if not versions_compatible(*required): msg = IMPOSSIBLE_VERSION_ERROR.format( package=project_name, version_spec=[ x.to_version_string() for x in required ] ) raise DbtProjectError(msg) if not versions_compatible(installed, *required): msg = INVALID_VERSION_ERROR.format( package=project_name, installed=installed.to_version_string(), version_spec=[ x.to_version_string() for x in required ] ) raise DbtProjectError(msg)
def dbt_version(self): """Gets the dbt version.""" from dbt.version import get_installed_version self.dbt_version = get_installed_version().to_version_string() return self.dbt_version
from dbt import flags from jinja2 import Environment from jinja2_simple_tags import StandaloneTag from sqlfluff.core.cached_property import cached_property from sqlfluff.core.errors import SQLTemplaterError, SQLFluffSkipFile from sqlfluff.core.templaters.base import TemplatedFile, large_file_check from sqlfluff.core.templaters.jinja import JinjaTemplater # Instantiate the templater logger templater_logger = logging.getLogger("sqlfluff.templater") DBT_VERSION = get_installed_version() DBT_VERSION_STRING = DBT_VERSION.to_version_string() DBT_VERSION_TUPLE = (int(DBT_VERSION.major), int(DBT_VERSION.minor)) if DBT_VERSION_TUPLE >= (1, 0): from dbt.flags import PROFILES_DIR else: from dbt.config.profile import PROFILES_DIR if DBT_VERSION_TUPLE >= (1, 3): COMPILED_SQL_ATTRIBUTE = "compiled_code" RAW_SQL_ATTRIBUTE = "raw_code" else: COMPILED_SQL_ATTRIBUTE = "compiled_sql" RAW_SQL_ATTRIBUTE = "raw_sql"