Question

I am currently building a pipeline in Azure Durable Functions. My issue is that Activity functions must be within the same Function project. Due to the amount of code / logic which will be included in the pipeline it has left me no choice but to extract the logic from the Activity functions and move it to external Function apps which use HttpTriggers. I then call these using Http within the Durable function.

This means my Durable function looks something like:

public static async Task RunOrchestrator([OrchestrationTrigger] IDurableOrchestrationContext context, ILogger log)
{
    var orchestratorPayload = context.GetInput<OrchestratorPayload>();
    
    var externalFunctionOne = await context.CallHttpAsync(new FunctionOneRequest());

    var externalFunctionTwo = await context.CallHttpAsync(new FunctionTwoRequest());

    ...
}

This approach feels like I am pushing against the best practise by not using Activity functions.

Is there a better approach here? Would there be a benefit in wrapping my external function calls in Activity functions for example?

No correct solution

Licensed under: CC-BY-SA with attribution
scroll top