Kedge


Simple Declarative
Kubernetes Definitions

Get Started GitHub

Familiarity

Use pre-existing Kubernetes definitions such as Pod or Container within your YAML file.

Reduce

Reduce your file-size and definitions by using intuitive (and easy to use) Kedge shortcuts.

Automatic

Kedge will automatically analyze and determine the best defaults for your application to run on Kubernetes.

Avoid typing long artifact files. Reduce your file size dramatically.

Kedge will convert the defined definitions to their Kubernetes equivalent. Utilize intuitive Kedge shortcuts and look through our file reference.

Web server Kedge example

name: httpd
deployments:
- containers:
  - image: centos/httpd
services:
- name: httpd
  type: LoadBalancer
  portMappings: 
    - 8080:80
  

Converted Kubernetes artifact file(s)

---
apiVersion: v1
kind: Service
metadata:
  creationTimestamp: null
  labels:
    app: httpd
  name: httpd
spec:
  ports:
  - name: httpd-8080
    port: 8080
    protocol: TCP
    targetPort: 80
  selector:
    app: httpd
  type: LoadBalancer
status:
  loadBalancer: {}
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  creationTimestamp: null
  labels:
    app: httpd
  name: httpd
spec:
  strategy: {}
  template:
    metadata:
      creationTimestamp: null
      labels:
        app: httpd
      name: httpd
    spec:
      containers:
      - image: centos/httpd
        name: httpd
        resources: {}
status: {}
  

Just run kedge apply -f httpd.yaml and it's directly deployed to your cluster.

Examples

Pick an example and see what Kedge is all about.

Name Kedge LOC Kubernetes LOC Decrease %
httpd 8 41 80.49%
guestbook-demo 66 203 67.49%
wordpress 68 181 62.43%
gitlab 226 396 40.93%