Description
Author: Dominik Tornow
Summary of the feature being proposed
1. Admission Controllers
Provide Temporal Admission Controllers, similar to Kubernetes Admission Controllers, that intercept requests to Temporal before they get processed
Admission Controllers come in two flavors:
- Validating Admission Controller
- Mutating Admission Controller
Validating Admission Controllers may not alter a request, Mutating Admission Controller may alter a request.
2. Admission Workflows & Activities
Enable developers to implement Admission Controllers as Temporal Workflows and Temporal Activities, therefore enabling the developer to extend Temporal with Temporal.
What value does this feature bring to Temporal?
Admission Controllers have proven to be a surprisingly simple yet surprisingly powerful extension mechanism for Kubernetes, they may prove to be a simple yet powerful extension mechanism for Temporal
- Example, Validating Admission Controller
The user may define a Validating Admission Controller that rejects a StartWorkflowExecutionRequest
if the workflow_id does not match some regex
- Example, Mutating Admission Controller
The user may define a Mutating Admission Controller that implements a simple versioning strategy:
- Initially, the Admission Controller modifies every
StartWorkflowExecutionRequest
of typeFoo
toFoo-v1
- Later, the Admission Controller modifies every
StartWorkflowExecutionRequest
of typeFoo
toFoo-v2
Are you willing to implement this feature yourself?
The temporal team