import assets import sensors from dagster_polars import PolarsParquetIOManager from icecream import install from shared.config import APP, STORAGE_DIR from shared.io_manager import JsonIOManager import dagster as dg install() definitions = dg.Definitions( assets=[ asset.with_attributes( group_names_by_key={asset.key: APP}, tags_by_key={asset.key: {"app": APP}}, ) for asset in dg.load_assets_from_modules([assets]) ], resources={ "json_io_manager": JsonIOManager(base_dir=STORAGE_DIR), "polars_parquet_io_manager": PolarsParquetIOManager(base_dir=STORAGE_DIR), }, sensors=[ sensors.list_locations, sensors.list_latitudes, sensors.list_longitudes, sensors.retrieve_weather, sensors.retrieve_weather, ], )