Nivel 119: demo_level119.py
Este es el nivel 119 del tour de aprendizaje.
Código Fuente
"""
DEMO LEVEL 119: timeout + depends_on
----------------------------------
Adds: Combinar timeout con depends_on.
Continues: L118.
DIAGRAM:
@step(timeout=5, depends_on=["anterior"])
"""
import time
from wpipe import Pipeline, step
@step(name="primero")
def primero(data: dict) -> None:
"""Primero step.
Args:
data: Input data for the step.
Returns:
dict: Result of the step.
"""
print("✅ Primero")
return {"ok": True}
@step(name="segundo", depends_on=["primero"], timeout=2)
def segundo(data: dict) -> None:
"""Segundo step.
Args:
data: Input data for the step.
Returns:
dict: Result of the step.
"""
print("⏱️ Segundo (con timeout)")
time.sleep(0.1)
return {"ok": True}
if __name__ == "__main__":
print(">>> Timeout + depends_on...")
pipe = Pipeline(pipeline_name="viaje_l119", verbose=True)
pipe.set_steps([segundo])
pipe.run({})
Resultado de Ejecución
>>> Timeout + depends_on...
⏱️ Segundo (con timeout)
viaje_l119 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00