Understand Task Runner Capabilities and Plugin Support

For the complete documentation index, see llms.txt. For a full content snapshot, see llms-full.txt. Append .md to any kestra.io/docs/* URL for plain Markdown.

Task Runners control where and how Kestra executes script tasks — locally, on Kubernetes, or on cloud platforms like AWS, Azure, and Google Cloud.

Capabilities

The table below outlines the main capabilities of Task Runners in Kestra.

CapabilityDescription
Fine-grained resource allocationGain full control over compute resources — allocate the precise amount of CPU, memory, or GPU to individual tasks.
Flexible deployment patternsDeploy tasks across diverse environments, including AWS ECS Fargate, Azure Batch, Google Batch, Kubernetes, and more. You can even mix different runners within a single workflow.
No vendor lock-inBuilt on a modular plugin system, Task Runners let you run workloads on any cloud or on-prem infrastructure — without being tied to a specific provider.
Task isolationEach task runs in a fully isolated container environment, preventing conflicts and ensuring consistent performance.
Development-to-production consistencyDevelop locally using Docker containers and seamlessly deploy the same code to production in Kubernetes or cloud environments — just by changing one property.
Centralized configuration managementDefine and manage runner configurations globally using pluginDefaults. This allows you to govern credentials and environment settings at the namespace or organization level.
Built-in documentation and validationEach Task Runner plugin includes a schema. The Kestra code editor offers inline documentation, autocompletion, and syntax validation for every property, ensuring correctness and standardization.
No code changes requiredMove between environments — from local to cloud — without altering your business logic or code.
Fully customizableExtend functionality by developing your own Task Runner plugin tailored to your infrastructure and deployment requirements.

Supported plugins

Task Runners are primarily used in tasks from the Script Plugin and its related sub-plugins. These tasks support execution of custom scripts or command sets via the taskRunner property.

Supported script-based plugins

Whenever you see a task capable of executing a script or a series of commands, it’s a script-based task that can leverage a taskRunner to define where and how that task runs.

Was this page helpful?