Learn the concepts and best practices to get the most out of Kestra.

Flowable Tasks

Flowable Tasks

Flowable tasks control the orchestration logic — run tasks or subflows in parallel, create loops and conditional branching.

Runnable Tasks

Runnable Tasks

Runnable tasks are data processing tasks incl. file system operations, API calls, database queries, etc. These tasks can be compute-intensive and are processed by workers.

Revision

Revision

Flows are versioned by default. Whenever you make any changes to your flows, a new revision is created. This allows you to rollback to a previous version of your flow if needed.

Secret

Secret

Secret is a mechanism that allows you to securely store sensitive information, such as passwords and API keys, and retrieve them in your flows.

Pebble Templating Engine

Pebble Templating Engine

Pebble is a Java templating engine inspired by Twig and similar to the Python Jinja Template Engine syntax. Kestra uses it to dynamically render variables, inputs and outputs within the execution context.

Blueprints

Blueprints

Blueprints is a curated, organized, and searchable catalog of ready-to-use examples designed to help you kickstart your workflow.

Backfill

Backfill

Backfills are replays of missed schedule intervals between a defined start and end date.

Task Runner Overview

Task Runner Overview

Task Runner capabilities and supported plugins.

Task Runner Benefits

Task Runner Benefits

How Task Runners can help with resource allocation and environment management.

Task Runner Use Cases

Task Runner Use Cases

Use cases that can benefit from Task Runners.

Task Runner vs. Worker Group

Task Runner vs. Worker Group

Find out when to use task runners or worker groups.

Process Task Runner

Process Task Runner

Run tasks as local processes.

Docker Task Runner

Docker Task Runner

Run tasks as Docker containers.

Kubernetes Task Runner

Kubernetes Task Runner

Run tasks as Kubernetes pods.

AWS Batch Task Runner

AWS Batch Task Runner

Run tasks as AWS ECS Fargate or EC2 containers using AWS Batch.

Azure Batch Task Runner

Azure Batch Task Runner

Run tasks as containers on Azure Batch VMs.

Google Batch Task Runner

Google Batch Task Runner

Run tasks as containers on Google Cloud VMs.

Google Cloud Run Task Runner

Google Cloud Run Task Runner

Run tasks as containers on Google Cloud Run.

Task Runner Types

Task Runner Types

This section lists all task runners available in Kestra.

Task Runners

Task Runners

Task Runners are plugins capable of executing your tasks in remote environments.

Replay

Replay

Replay allows you to re-run a workflow execution from any chosen task run.

Expression

Expression

Kestra's expressions use Pebble Templating along with flow's execution context to render various flow and task properties.

Expression Types

Expression Types

There are many ways to use expressions in Kestra. This page will guide you through different types of expressions.

Expression Usage

Expression Usage

This page summarizes the main syntax of filters, functions, and control structures available in Pebble templating.

Filter

Filter

Filters can be used in expressions to perform some transformations on variables such as formatting a date, converting a string to uppercase, or joining a list of strings.

JSON Filters

JSON Filters

JSON filters are used to manipulate JSON objects, often API responses.

Numeric Filters

Numeric Filters

Numeric filters are used to format numbers or convert strings to numbers.

Object Filters (Maps, Arrays and More)

Object Filters (Maps, Arrays and More)

Object filters help you manipulate maps and arrays.

String Filters

String Filters

String filters are used to manipulate strings i.e. textual data.

Temporal Filters

Temporal Filters

Temporals filters are used to format dates and timestamps.

YAML Filters

YAML Filters

YAML filters are used to turn YAML strings into objects.

Function

Function

Functions can be called to generate content. Functions are called by their name followed by parentheses () and may have arguments.

Operator

Operator

Operators are used to perform logical operations within templated expressions such as comparing values and performing arithmetic operations.

Tag

Tag

Tags are used to control the flow of the template. They are enclosed in {% %}.

Test

Test

Tests are used to perform logical operations within templated expressions such as checking if a variable is defined or if a variable is empty.

Deprecated handlebars

Deprecated handlebars

Handlebars are deprecated and superseded by Pebble. These functions will be removed soon and are disabled by default.