dbt artifacts parser
v0.8.1
Il s'agit d'une analyse d'artefacts DBT en Python. Il nous permet de traiter avec catalog.json , manifest.json , run-results.json et sources.json en tant qu'objets python.
Ce package est principalement conçu pour DBT-core, permettant une interaction transparente avec les artefacts DBT en tant qu'objets Python. Alors que DBT Cloud fournit des types d'artefacts supplémentaires au-delà de ceux de DBT-core, ce package n'offre pas de support complet pour eux.
️ Remarque importante:
- Pydontic V1 ne sera pas pris en charge pour DBT 1.9 ou version ultérieure.
- Pour analyser DBT 1.9 ou version ultérieure, veuillez migrer votre code vers Pyndantic V2.
- Nous réévaluerons la compatibilité des versions lors de la sortie de Pyndantic V3.
| Version | Version DBT prise en charge | Version pydantique prise en charge |
|---|---|---|
| 0.8 | DBT 1,5 à 1,9 | pydante v2 |
| 0.7 | DBT 1,5 à 1,8 | pydante v2 |
| 0.6 | DBT 1,5 à 1,8 | Pydance v1 |
| 0,5 | DBT 1,5 à 1,7 | Pydance v1 |
pip install -U dbt-artifacts-parserCe sont les classes pour analyser les artefacts DBT.
import json
# parse any version of catalog.json
from dbt_artifacts_parser . parser import parse_catalog
with open ( "path/to/catalog.json" , "r" ) as fp :
catalog_dict = json . load ( fp )
catalog_obj = parse_catalog ( catalog = catalog_dict )
# parse catalog.json v1
from dbt_artifacts_parser . parser import parse_catalog_v1
with open ( "path/to/catalog.json" , "r" ) as fp :
catalog_dict = json . load ( fp )
catalog_obj = parse_catalog_v1 ( catalog = catalog_dict ) import json
# parse any version of manifest.json
from dbt_artifacts_parser . parser import parse_manifest
with open ( "path/to/manifest.json" , "r" ) as fp :
manifest_dict = json . load ( fp )
manifest_obj = parse_manifest ( manifest = manifest_dict )
# parse manifest.json v1
from dbt_artifacts_parser . parser import parse_manifest_v1
with open ( "path/to/manifest.json" , "r" ) as fp :
manifest_dict = json . load ( fp )
manifest_obj = parse_manifest_v1 ( manifest = manifest_dict )
# parse manifest.json v2
from dbt_artifacts_parser . parser import parse_manifest_v2
with open ( "path/to/manifest.json" , "r" ) as fp :
manifest_dict = json . load ( fp )
manifest_obj = parse_manifest_v2 ( manifest = manifest_dict )
# parse manifest.json v3
from dbt_artifacts_parser . parser import parse_manifest_v3
with open ( "path/to/manifest.json" , "r" ) as fp :
manifest_dict = json . load ( fp )
manifest_obj = parse_manifest_v3 ( manifest = manifest_dict )
# parse manifest.json v4
from dbt_artifacts_parser . parser import parse_manifest_v4
with open ( "path/to/manifest.json" , "r" ) as fp :
manifest_dict = json . load ( fp )
manifest_obj = parse_manifest_v4 ( manifest = manifest_dict )
# parse manifest.json v5
from dbt_artifacts_parser . parser import parse_manifest_v5
with open ( "path/to/manifest.json" , "r" ) as fp :
manifest_dict = json . load ( fp )
manifest_obj = parse_manifest_v5 ( manifest = manifest_dict )
# parse manifest.json v6
from dbt_artifacts_parser . parser import parse_manifest_v6
with open ( "path/to/manifest.json" , "r" ) as fp :
manifest_dict = json . load ( fp )
manifest_obj = parse_manifest_v6 ( manifest = manifest_dict )
# parse manifest.json v7
from dbt_artifacts_parser . parser import parse_manifest_v7
with open ( "path/to/manifest.json" , "r" ) as fp :
manifest_dict = json . load ( fp )
manifest_obj = parse_manifest_v7 ( manifest = manifest_dict )
# parse manifest.json v8
from dbt_artifacts_parser . parser import parse_manifest_v8
with open ( "path/to/manifest.json" , "r" ) as fp :
manifest_dict = json . load ( fp )
manifest_obj = parse_manifest_v8 ( manifest = manifest_dict )
# parse manifest.json v9
from dbt_artifacts_parser . parser import parse_manifest_v9
with open ( "path/to/manifest.json" , "r" ) as fp :
manifest_dict = json . load ( fp )
manifest_obj = parse_manifest_v9 ( manifest = manifest_dict )
# parse manifest.json v10
from dbt_artifacts_parser . parser import parse_manifest_v10
with open ( "path/to/manifest.json" , "r" ) as fp :
manifest_dict = json . load ( fp )
manifest_obj = parse_manifest_v10 ( manifest = manifest_dict )
# parse manifest.json v11
from dbt_artifacts_parser . parser import parse_manifest_v11
with open ( "path/to/manifest.json" , "r" ) as fp :
manifest_dict = json . load ( fp )
manifest_obj = parse_manifest_v11 ( manifest = manifest_dict )
# parse manifest.json v12
from dbt_artifacts_parser . parser import parse_manifest_v12
with open ( "path/to/manifest.json" , "r" ) as fp :
manifest_dict = json . load ( fp )
manifest_obj = parse_manifest_v12 ( manifest = manifest_dict ) import json
# parse any version of run-results.json
from dbt_artifacts_parser . parser import parse_run_results
with open ( "path/to/run-resultsjson" , "r" ) as fp :
run_results_dict = json . load ( fp )
run_results_obj = parse_run_results ( run_results = run_results_dict )
# parse run-results.json v1
from dbt_artifacts_parser . parser import parse_run_results_v1
with open ( "path/to/run-results.json" , "r" ) as fp :
run_results_dict = json . load ( fp )
run_results_obj = parse_run_results_v1 ( run_results = run_results_dict )
# parse run-results.json v2
from dbt_artifacts_parser . parser import parse_run_results_v2
with open ( "path/to/run-results.json" , "r" ) as fp :
run_results_dict = json . load ( fp )
run_results_obj = parse_run_results_v2 ( run_results = run_results_dict )
# parse run-results.json v3
from dbt_artifacts_parser . parser import parse_run_results_v3
with open ( "path/to/run-results.json" , "r" ) as fp :
run_results_dict = json . load ( fp )
run_results_obj = parse_run_results_v3 ( run_results = run_results_dict )
# parse run-results.json v4
from dbt_artifacts_parser . parser import parse_run_results_v4
with open ( "path/to/run-results.json" , "r" ) as fp :
run_results_dict = json . load ( fp )
run_results_obj = parse_run_results_v4 ( run_results = run_results_dict )
# parse run-results.json v5
from dbt_artifacts_parser . parser import parse_run_results_v5
with open ( "path/to/run-results.json" , "r" ) as fp :
run_results_dict = json . load ( fp )
run_results_obj = parse_run_results_v5 ( run_results = run_results_dict )
# parse run-results.json v6
from dbt_artifacts_parser . parser import parse_run_results_v6
with open ( "path/to/run-results.json" , "r" ) as fp :
run_results_dict = json . load ( fp )
run_results_obj = parse_run_results_v6 ( run_results = run_results_dict ) import json
# parse any version of sources.json
from dbt_artifacts_parser . parser import parse_sources
with open ( "path/to/sources.json" , "r" ) as fp :
sources_dict = json . load ( fp )
sources_obj = parse_sources ( sources = sources_dict )
# parse sources.json v1
from dbt_artifacts_parser . parser import parse_sources_v1
with open ( "path/to/sources.json" , "r" ) as fp :
sources_dict = json . load ( fp )
sources_obj = parse_sources_v1 ( sources = sources_dict )
# parse sources.json v2
from dbt_artifacts_parser . parser import parse_sources_v2
with open ( "path/to/sources.json" , "r" ) as fp :
sources_dict = json . load ( fp )
sources_obj = parse_sources_v2 ( sources = sources_dict )
# parse sources.json v3
from dbt_artifacts_parser . parser import parse_sources_v3
with open ( "path/to/sources.json" , "r" ) as fp :
sources_dict = json . load ( fp )
sources_obj = parse_sources_v3 ( sources = sources_dict )Merci pour vos contributions!
Si vous souhaitez contribuer à ce package, veuillez consulter le contribution.md.
Yu Ishikawa | Nul | Brent Brewington | Judah Rand | Mayur Singal | Mohamed Nabil Mahmoud Hafez |
Onkar Ravgan | Nul |