scaffold sensor triggered html download

This commit is contained in:
2025-07-28 19:38:37 +02:00
parent 25cccdb501
commit 8329d7ed68
5 changed files with 38 additions and 0 deletions

View File

@@ -0,0 +1,12 @@
from functools import partial
from config import APP
import dagster as dg
asset = partial(dg.asset, key_prefix=APP)
@asset
def raw_html() -> None:
print("todo")

View File

@@ -0,0 +1,4 @@
import os
from pathlib import Path
APP = os.environ.get("APP", Path(__file__).parent.parent.name)

View File

@@ -1,6 +1,7 @@
import os import os
import assets import assets
import sensors
from dagster_polars import PolarsParquetIOManager from dagster_polars import PolarsParquetIOManager
from icecream import install from icecream import install
@@ -24,4 +25,5 @@ definitions = dg.Definitions(
base_dir=os.environ.get("STORAGE_DIR", "/storage") + f"/{APP}" base_dir=os.environ.get("STORAGE_DIR", "/storage") + f"/{APP}"
), ),
}, },
sensors=[sensors.check_update],
) )

5
apps/stocks/src/jobs.py Normal file
View File

@@ -0,0 +1,5 @@
import assets
import dagster as dg
raw_html_job = dg.define_asset_job("deals_job", selection=[assets.raw_html.key])

View File

@@ -0,0 +1,15 @@
from collections.abc import Iterator
from datetime import date
import jobs
import dagster as dg
@dg.sensor(job=jobs.raw_html_job)
def check_update(context: dg.SensorEvaluationContext) -> Iterator[dg.RunRequest]:
ic(context.cursor)
yield dg.RunRequest()
context.update_cursor(date.today().strftime("%Y-%m-%d"))