Skip to content
Write Kubernetes manifests in JavaScript.
Branch: master
Clone or download
tommy351 Publish
 - @kosko/cli@0.8.3
 - @kosko/config@0.3.3
 - @kosko/env@0.4.4
 - @kosko/generate@0.4.4
 - kosko@0.8.3
 - @kosko/migrate@0.1.2
 - @kosko/require@0.1.9
 - @kosko/template-deployed-service@0.2.8
 - @kosko/template-environment@0.2.8
 - @kosko/template@0.3.8
Latest commit 7d071d9 Mar 9, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci ci: Remove working directory settings Jan 30, 2019
docs chore: Update kubernetes-models to 0.5.0 Mar 9, 2019
examples chore: Replace TSLInt with ESLint Mar 9, 2019
integration chore: Replace TSLInt with ESLint Mar 9, 2019
packages Publish Mar 9, 2019
scripts
.eslintignore chore: Replace TSLInt with ESLint Mar 9, 2019
.eslintrc
.gitignore chore: Update kubernetes-models to 0.5.0 Mar 9, 2019
.npmignore
.prettierignore
.prettierrc Implement basic structure Dec 19, 2018
LICENSE
README.md docs: Update docs Feb 28, 2019
appveyor.yml chore: Update CI config Jan 19, 2019
jest.config.js chore: Update deps Mar 9, 2019
lerna.json docs: Add docs to every package Jan 30, 2019
package-lock.json
package.json
tsconfig.build.json
tsconfig.json

README.md

kosko

CircleCI Build status codecov

Write Kubernetes manifests in JavaScript.

kosko is inspired by ksonnet but use JavaScript instead of jsonnet. Unlike ksonnet, kosko neither touchs Kubernetes clusters nor supports Helm. It's focus on building and organizing Kubernetes manifests in JavaScript.

Features

  • Use JavaScript or any languages compiled to JavaScript. (e.g. TypeScript)
  • Manage multiple environments.
  • Validate against Kubernetes OpenAPI definitions.
  • Reuse variables and functions across components.

Installation

Install kosko globally with npm.

npm install -g kosko

Getting Started

Setup

First, run kosko init to set up a new kosko directory and npm install to install dependencies.

kosko init example
cd example
npm install

Create a Component

Create a new component with @kosko/template-deployed-service template.

npx @kosko/template-deployed-service --name nginx --image nginx

This template creates a new file named nginx.js in components folder.

Generate Kubernetes Manifests

Run kosko generate to print Kubernetes manifests in the console.

kosko generate

Pipe the output to kubectl to apply to a cluster.

kosko generate | kubectl apply -f -

Documentation

Examples

Packages

Core

Templates

Related

License

MIT

You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.