61 lines
1.6 KiB
Python
61 lines
1.6 KiB
Python
import random
|
|
from prefect import flow, task, get_run_logger
|
|
from prefect.filesystems import LocalFileSystem
|
|
from pathlib import Path
|
|
|
|
|
|
@task
|
|
def generar_mensaje_random():
|
|
lista_mensajes = ["Hola", "Adios", "Buenos días", "Buenas noches"]
|
|
return random.choice(lista_mensajes)
|
|
|
|
@flow
|
|
def otro_flow():
|
|
return (324 * 2 + 1) / 2
|
|
|
|
@flow
|
|
def my_flow():
|
|
otro_flow()
|
|
mensaje1 = generar_mensaje_random()
|
|
mensaje2 = generar_mensaje_random()
|
|
mensaje3 = generar_mensaje_random()
|
|
|
|
logger = get_run_logger()
|
|
|
|
logger.info(f"Mensaje 1: {mensaje1}")
|
|
logger.info(f"Mensaje 2: {mensaje2}")
|
|
logger.info(f"Mensaje 3: {mensaje3}")
|
|
|
|
|
|
|
|
# Configura el almacenamiento local
|
|
local_storage = LocalFileSystem(basepath="E:\Proyects\Workers_data\prueba_prefect")
|
|
|
|
|
|
# Codigo para usar con Git
|
|
|
|
# # Configura y despliega el flujo
|
|
# if __name__ == "__main__":
|
|
# my_flow.from_source(
|
|
# source="http://localhost:3123/egutierrez/prefect_automatizations.git",
|
|
# entrypoint="ejemplo_automatizacion_prefect.py:my_flow"
|
|
# ).deploy(
|
|
# name="Deployment_ejemplo",
|
|
# work_pool_name="Workers_pc_torre_Lucas",
|
|
# cron="*/1 * * * *"
|
|
# )
|
|
|
|
|
|
|
|
# Codigo para usar con almacenamiento local
|
|
|
|
# Configura y despliega el flujo
|
|
if __name__ == "__main__":
|
|
my_flow.from_source(
|
|
source=str(Path(__file__).parent), # code stored in local directory
|
|
entrypoint="E:\Proyects\Workers_data\prueba_prefect\primera_prueba.py:my_flow",
|
|
|
|
).deploy(
|
|
name="Deployment_ejemplo",
|
|
work_pool_name="Worker_lucas"
|
|
) |