# src/scripts/run_migration.py import asyncio from temporalio.client import Client from temporalio.worker import Worker from workflows.historical_migration import DataMigrationWorkflow, fetch_data_activity, transform_data_activity, validate_data_activity, load_data_activity async def main(): # Create Temporal client client = await Client.connect("192.168.1.82:7233") # Create worker worker = Worker( client, task_queue="migration-queue", workflows=[DataMigrationWorkflow], activities=[ fetch_data_activity, transform_data_activity, validate_data_activity, load_data_activity ] ) # Start worker await worker.run() # # Start workflow # handle = await client.start_workflow( # DataMigrationWorkflow.run, # id="data-migration", # task_queue="migration-queue" # ) # result = await handle.result() # print(f"Migration completed: {result}") if __name__ == "__main__": asyncio.run(main())