Azure Functions Platform (Development)
This page is the canonical The Pipeline Framework (TPF) guide for FUNCTION platform builds that target Azure Functions. For the broader provider matrix, pair it with the Multi-Cloud Function Providers Guide.
What TPF Supports Today
- Platform mode:
FUNCTION(default platform remainsCOMPUTE) - Transport mode:
REST(required in Function mode) - Azure-specific handlers: generated HTTP-trigger handlers using Azure Functions bindings
- Local verification: Azure Functions Core Tools and the Search example in
examples/search
FUNCTION does not currently support gRPC transport. If you select FUNCTION, the generated runtime must use REST.
What this path covers
TPF keeps the typed Java business flow unchanged while generating Azure-specific entry points around it.
This path is for:
- generated Azure Functions handlers,
- local/provider verification of the function runtime,
- deploying the same flow through Azure’s function platform.
This path is not:
- a replacement for
COMPUTE+QUEUE_ASYNC, - a checkpoint-handoff runtime,
- a separate TPF runtime model just because Azure also offers Durable Functions.
Azure Durable Functions do not change TPF runtime semantics. If you need queue-backed HA, checkpoint handoff, or orchestrator-managed crash recovery, use the COMPUTE + QUEUE_ASYNC path.
Example verification surface
The current repo verification surface for Azure is located in examples/search.
Build:
./examples/search/build-azure.sh -DskipTestsBootstrap smoke:
./scripts/ci/bootstrap-local-repo-prereqs.sh framework
./mvnw -f examples/search/orchestrator-svc/pom.xml \
-Dtpf.build.platform=FUNCTION \
-Dtpf.build.transport=REST \
-Dtpf.build.rest.naming.strategy=RESOURCEFUL \
-Dtpf.build.azure.scope=compile \
-Dquarkus.profile=azure-functions \
-Dsurefire.failIfNoSpecifiedTests=false \
-Dtest=AzureFunctionsBootstrapSmokeTest \
testFor deeper Azure-specific setup and local runtime testing with Core Tools, use the dedicated Search guide.