Task Runner Overview​Task ​Runner ​Overview

Available on: Open Source EditionEnterprise Edition>= 0.18.0

Understand the capabilities of Task Runners and the plugins that support them.

Overview

Task Runners provide a flexible and efficient way to execute compute-intensive workloads across different environments. Whether you’re running scripts locally, on Kubernetes, or on cloud platforms like AWS, Azure, or Google Cloud, Task Runners ensure consistent, isolated, and configurable task execution.

Key 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?