packages.yml 컨텍스트

packages.yml 컨텍스트

packages.yml 파일을 구성할 때 다음 컨텍스트 메서드와 변수를 사용할 수 있어요.

출처: 문서

본문

사용 가능한 컨텍스트 메서드:

  • env_var
    • Jinja를 지원하는 어떤 dbt YAML 파일에서든 env_var()을 쓸 수 있어요. 보안 값을 위한 환경 변수(예: DBT_ENV_SECRET_ 접두사 사용)를 지원하는 건 packages.ymlprofiles.yml뿐이에요.
  • var (참고: --vars로 정의한 변수만 사용할 수 있어요. 자세한 내용은 YAML tips를 참고해요)

사용 가능한 컨텍스트 변수:

사용 예시

다음 예시들은 packages.yml에서 여러 컨텍스트 메서드와 변수를 어떻게 쓰는지 보여줘요.

packages.yml에서 builtins 사용:

packages:
  - package: dbt-labs/dbt_utils
    version: "{% if builtins is defined %}0.14.0{% else %}0.13.1{% endif %}"

packages.yml에서 env_var 사용:

packages:
  - package: dbt-labs/dbt_utils
    version: "{{ env_var('DBT_UTILS_VERSION') }}"

packages.yml에서 dbt_version 사용:

packages:
  - package: dbt-labs/dbt_utils
    version: "{% if dbt_version is defined %}0.14.0{% else %}0.13.1{% endif %}"

packages.yml에서 target 사용:


packages:
  - package: dbt-labs/dbt_utils
    version: "{% if target.name == 'prod' %}0.14.0{% else %}0.13.1{% endif %}"

더 알아보기 (Learn more)

  • packages.yml에서는 env_var, var, builtins, dbt_version, target 정도만 쓸 수 있어요.
  • 관련 개념: Packages.