fastflowtransform.config.packages¶
PackageSpec ¶
Bases: BaseModel
One entry from packages.yml, for example:
packages: - name: fft_utils path: "../fft_utils" models_dir: "models"
Or (shorthand mapping form):
fft_utils: "../fft_utils"
For git-based packages:
- name: shared_package_git
git: "https://github.com/org/repo.git"
subdir: "path/inside/repo"
# one of the revision selectors below is optional:
# - ref: "main" (generic alias, mapped to
rev) # - rev: "abc1234" (commit SHA) # - tag: "v1.2.3" # - branch: "main" # models_dir: "models" # optional, default "models"
Source code in src/fastflowtransform/config/packages.py
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 | |
PackagesConfig ¶
Bases: BaseModel
Top-level representation of packages.yml.
We accept two shapes:
1) Explicit:
packages:
- name: fft_utils
path: "../fft_utils"
models_dir: "models"
2) Shorthand mapping:
fft_utils: "../fft_utils"
other_pkg:
path: "../other"
models_dir: "dbt_models"
Source code in src/fastflowtransform/config/packages.py
89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 | |
load_packages_config ¶
load_packages_config(project_dir)
Read packages.yml under project_dir and return a strict PackagesConfig.
If the file does not exist, we return an empty config (no packages).
Source code in src/fastflowtransform/config/packages.py
148 149 150 151 152 153 154 155 156 157 158 159 160 | |