Skaffold is a command line tool that facilitates continuous development for Kubernetes applications. You can iterate on your application source code locally then deploy to local or remote Kubernetes clusters. Skaffold handles the workflow for building, pushing and deploying your application. It also provides building blocks and describe customizations for a CI/CD pipeline.

Features

  • Fast local Kubernetes Development
  • optimized source-to-k8s - Skaffold detects changes in your source code and handles the pipeline to build, push, and deploy your application automatically with policy based image tagging and highly optimized, fast local workflows
  • continuous feedback - Skaffold automatically manages logging and port-forwarding
  • Skaffold projects work everywhere
  • share with other developers - Skaffold is the easiest way to share your project with the world: git clone and skaffold run
  • context aware - use Skaffold profiles, user level config, environment variables and flags to describe differences in environments
  • CI/CD building blocks - use skaffold run end-to-end or just part of skaffold stages from build to deployment in your CI/CD system
  • skaffold.yaml - a single pluggable, declarative configuration for your project
  • skaffold init - Skaffold discovers your files and generates its own config file
  • multi-component apps - Skaffold supports applications consisting of multiple components
  • bring your own tools - Skaffold has a pluggable architecture to allow for different implementations of the stages
  • Lightweight
  • client-side only - Skaffold does not require maintaining a cluster-side component, so there is no overhead or maintenance burden to your cluster.
  • minimal pipeline - Skaffold provides an opinionated, minimal pipeline to keep things simple

Source: https://github.com/GoogleContainerTools/skaffold