/kedge

Kedge : Simple, Concise & Declarative Kubernetes Applications

Primary LanguageGoApache License 2.0Apache-2.0

Kedge : Simple, Concise & Declarative Kubernetes Applications

Semaphore Build Status Widget Travis Build Status Widget Coverage Status Widget GoDoc Widget GoReportCard Widget

logo


Kedge is a simple, easy and declarative way to define and deploy applications to Kubernetes by writing very concise application definitions.

Why do people love Kedge?

  • An extension of Kubernetes definitions: Use pre-existing definitions such as Pod or Container within your artifact file.
  • Shortcuts: Reduce your file-size and definitions by using intuitive Kedge shortcuts.
  • Concise: Define just the necessary bits, Kedge will interpolate and pick the best defaults for your application to run on Kubernetes.
  • Define all your containers in one place: Define your containers, services and applications in one simple file, or split them into multiple files.

To start using Kedge

Installing

Kedge is released via GitHub on a three-week cycle, you can see all current releases on the GitHub release page.

Linux and macOS:

# Linux
curl -L https://github.com/kedgeproject/kedge/releases/download/v0.12.0/kedge-linux-amd64 -o kedge

# macOS
curl -L https://github.com/kedgeproject/kedge/releases/download/v0.12.0/kedge-darwin-amd64 -o kedge

chmod +x kedge
sudo mv ./kedge /usr/local/bin/kedge

Windows:

Download from GitHub and add the binary to your PATH.

A more thorough installation guide is also available.

Using Kedge

Try our quick start guide.

Go through our file reference.

Then go further with our pre-existing examples.

Community, Discussion, Contribution, and Support

Contributing: Kedge is an evolving project and contributions are happily welcome. Feel free to open up an issue or even a PR. Read our contributing guide for more details. A thorough development guide is available if you're interested in contributing to Kedge.

Chat (Slack): We're fairly active on Slack. You can invite yourself at slack.kedgeproject.org.

License

Unless otherwise stated (ex. /vendor files), all code is licensed under the Apache 2.0 License. Portions of the project use libraries and code from other projects, the appropriate license can be found within the code (header of the file) or root directory within the vendor folder.