Content based
delivery tool

mighty and carefully crafted
A missing part of a CI/CD
system
The main idea behind Werf is to help DevOps teams organize the workflow of applications delivery. It is designed with CI/CD systems in mind and can be used to create comfortable pipelines in GitLab, Jenkins, Travis CI, CircleCI, etc. It improves ease of use of git, docker, and helm and solves their problems: image naming, distributed caching, images cleanup, deployed resources tracking, etc. We consider it a new generation of high-level CI/CD tools.
  • Comfortable deployment
    Full compatibility with Helm. Easy RBAC definition. Control of the deployment process with annotations. Control of resources readiness. Logging and error reporting. Easy debugging of problems without unnecessary kubectl invocations.
  • Image Lifecycle Management
    Build images with Dockerfile or with our syntax to take advantage of incremental rebuilds based on git history and carefully crafted tools. Pushing into a registry by specific tag strategy and cleaning a registry from unused images based on policies.
Active development & adoption
  • 4
    releases per week
    on average for the last year
  • 1200
    installations
    of large and small projects
  • 1010
    stars on GitHub
    let’s make it more ;)
Full delivery cycle
  • Easy to start
    Remain regular build process with Dockerfile. Take your project and put into werf easily right now.
  • Compact configuration file
    Build multiple images with a single configuration file, share common configuration parts using go-templates.
  • Complete application lifecycle management
    Manage image building process, deploy applications into Kubernetes and remove unused images easily.
  • Reduce image size
    Detach source data and build tools using artifacts, mounts and stapel.
  • Build images with Ansible
    Use the powerful and popular infrastructure-as-a-code tool.
  • Advanced tools for debugging the build process
    In the process of assembling, you can access a certain stage using introspection options.
  • Comfortable deployment to Kubernetes
    Deploy to Kubernetes using standard Kubernetes package manager with interactive tracking of the deployment process and real-time logs browsing.
Friendly growing community
Werf’s developers are always in contact with community
though Slack and Telegram.
Roadmap
Goals
  • Feature complete version of werf which works well in an environment with a single dedicated persistent host to run all werf operations (build, deploy and cleanup).
  • Proven approaches and recipes
    for most popular CI systems.
  • Building images completely in userspace,
    a container or Kubernetes cluster.
Steps
  • #1616 Use 3-way-merge during helm release upgrade.
  • #1184 Content addressable tagging scheme.
  • #1617 Proven approaches and recipes
    for most popular CI systems.
  • #1614 Distributed builds.
  • #1606 Helm 3 support.
  • #1618 Userspace builds without Docker daemon
    (as in kaniko).
Complete documentation
Documentation of werf comprises ~100 articles which include common use cases (getting started, deploy to Kubernetes, CI/CD integration and more), comprehensive description of its functions & architecture, as well as CLI, commands.