
Git
CertifiedEnterprise EditionTasks that clone, sync, commit, and push Kestra apps and unit tests with Git repositories.
Use these tasks to fetch resources from a branch, reconcile them with Kestra (or preview changes with dryRun), and push updates back to Git. Provide the repository url, credentials, target branch, and Git subdirectories (e.g., _apps, _unit_tests), and control cleanup with delete or submodule cloning when required.
Git
Tasks that clone, sync, commit, and push Kestra apps and unit tests with Git repositories.
Use these tasks to fetch resources from a branch, reconcile them with Kestra (or preview changes with dryRun), and push updates back to Git. Provide the repository url, credentials, target branch, and Git subdirectories (e.g., _apps, _unit_tests), and control cleanup with delete or submodule cloning when required.
tasks
How to use the Git EE plugin
Clone repositories and sync or push Kestra resources (flows, apps, blueprints, unit tests) to and from Git from Kestra flows.
Authentication
All tasks require url (the Git repository URL, required). Authenticate with username + password (or personal access token as password), or with privateKey + optional passphrase for SSH. Optionally set gitConfig for additional Git configuration. Store secrets in secrets and apply connection properties globally with plugin defaults.
Tasks
Clone clones a repository — set url (required). Optionally set branch, directory (local target path), depth (default 1), and cloneSubmodules. Output includes directory (the cloned path).
SyncApps syncs apps from a Git repository into Kestra — set url (required). Optionally set branch (default main), gitDirectory (default _apps), delete (remove apps not in Git, default false), dryRun (default false), and failOnMissingDirectory (default true). Output includes apps (ION file of changes).
PushApps pushes apps from Kestra to a Git repository — set url (required). Optionally set branch (default main), gitDirectory (default _apps), apps (filter by name), commitMessage, authorEmail, authorName, dryRun (default false), and delete (default true). Outputs commitId, commitURL, and apps.
SyncBlueprints syncs custom blueprints from Git into Kestra — same options as SyncApps with gitDirectory default _blueprints. Output includes blueprints.
PushBlueprints pushes blueprints from Kestra to Git — same options as PushApps with gitDirectory default _blueprints. Outputs commitId, commitURL, and blueprints.
SyncUnitTests syncs unit tests from Git into Kestra — same options as SyncApps with gitDirectory default _unit_tests. Output includes unitTests.
PushUnitTests pushes unit tests from Kestra to Git — same options as PushApps with gitDirectory default _unit_tests. Outputs commitId, commitURL, and unitTests.
NamespaceSync bidirectionally syncs all Kestra resources (flows, namespace files, secrets, variables) for a namespace — set url, branch, and namespace (all required). Optionally set gitDirectory, sourceOfTruth (GIT or KESTRA, default KESTRA), whenMissingInSource (DELETE, KEEP, or FAIL, default DELETE), protectedNamespaces (default ["system"]), onInvalidSyntax (SKIP, WARN, or FAIL, default FAIL), dryRun (default false), commitMessage, authorEmail, and authorName. Outputs diff, commitId, and commitURL.
TenantSync syncs all Kestra resources across all namespaces in a tenant — set url, branch, and kestraUrl (all required). Supports the same sync options as NamespaceSync. Outputs diff, commitId, and commitURL.