From 74e2a59a5795de9f1b193aa52dadeb2d3e9be5c9 Mon Sep 17 00:00:00 2001 From: Paul Yuknewicz Date: Mon, 29 Jul 2024 16:45:24 -0700 Subject: [PATCH] Fix "cancelled on client" moving workflow.stop out to SIGTERM handler Signed-off-by: Paul Yuknewicz --- workflows/javascript/sdk/order-processor/app.ts | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/workflows/javascript/sdk/order-processor/app.ts b/workflows/javascript/sdk/order-processor/app.ts index c034c3f7d..b95982382 100644 --- a/workflows/javascript/sdk/order-processor/app.ts +++ b/workflows/javascript/sdk/order-processor/app.ts @@ -2,10 +2,12 @@ import { DaprWorkflowClient, WorkflowRuntime, DaprClient, CommunicationProtocolE import { InventoryItem, OrderPayload } from "./model"; import { notifyActivity, orderProcessingWorkflow, processPaymentActivity, requestApprovalActivity, reserveInventoryActivity, updateInventoryActivity } from "./orderProcessingWorkflow"; +const workflowWorker = new WorkflowRuntime(); + async function start() { // Update the gRPC client and worker to use a local address and port const workflowClient = new DaprWorkflowClient(); - const workflowWorker = new WorkflowRuntime(); + const daprHost = process.env.DAPR_HOST ?? "127.0.0.1"; const daprPort = process.env.DAPR_GRPC_PORT ?? "50001"; @@ -60,10 +62,13 @@ async function start() { throw error; } - await workflowWorker.stop(); await workflowClient.stop(); } +process.on('SIGTERM', () => { + workflowWorker.stop(); +}) + start().catch((e) => { console.error(e); process.exit(1);