Execute your runs in a reproducible containerized environment. Restart them from start or from the failed tasks. Implement every kind of workflow you want from simple builds to complex deployments. GitHub, GitLab, Gitea, custom Git repositories (and more to come). Execute your tasks inside a Kubernetes cluster, local docker, etc. Keep the same Runs definition but use different variables values based on rules to test your runs on multiple environments. Runs definitions are committed inside your git repositories and triggered upon push/tag/pull request. Scalable and High Available: go from a single instance (single process) deployment to a distributed deployment. Deploy anywhere: Kubernetes, IaaS, bare metal and execute the "tasks" anywhere (currently containers executors like docker or orchestrators and Kubernetes, but easily extensible to future technologies or VMs instead of containers). Support any language, deployment system etc. (just use the right image).
Features
- Easy to install and manage
- Use it to manage the full development lifecycle
- Design it with the ability to achieve at most once runs
- Don't try to extend YAML to be a templating language
- An advanced permissions system (work in progress)
- Dependency Caching to speed up tasks