A component is a collection of Kubernetes manifests including all resources needed for an application such as deployments, services, secrets, etc.


Environments are variables specific to different clusters. For example, you may have dev and prod environments for different clusters.

There are two types of variables:

  • Global Variables - Shared across all components.
  • Component Variables - Only used within a component.


A template helps you generate code easily so you don't have to build from scratch every time.

Folder Structure

The following is a basic folder structure of a kosko directory.

โ”œโ”€โ”€ components
โ”œโ”€โ”€ environments
โ”œโ”€โ”€ kosko.toml
โ””โ”€โ”€ templates
  • components - Components folder.
  • environments - Environments folder.
  • kosko.toml - Configuration file.
  • templates - Templates folder.