Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/yokecd/yoke
https://github.com/yokecd/yoke
Last synced: about 1 month ago
JSON representation
- Host: GitHub
- URL: https://github.com/yokecd/yoke
- Owner: yokecd
- License: mit
- Created: 2024-02-14T18:32:16.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2024-10-24T03:01:10.000Z (about 2 months ago)
- Last Synced: 2024-10-24T13:10:57.089Z (about 2 months ago)
- Language: Go
- Size: 7.21 MB
- Stars: 71
- Watchers: 4
- Forks: 4
- Open Issues: 1
-
Metadata Files:
- Readme: readme.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
- awesome-repositories - yokecd/yoke - (Go)
README
# yoke - Infrastructure-as-Code (IaC) Package Deployer for Kubernetes
## Overview
yoke is a Helm-inspired infrastructure-as-code (IaC) package deployer.
The philosophy behind yoke is that Kubernetes packages should be described via code. Programming environments have control flow, test frameworks, static typing, documentation, error management, and versioning. They are ideal for building contracts and enforcing them.
yoke deploys "flights" to Kubernetes (think helm charts or packages). A flight is a wasm executable that outputs the Kubernetes resources making up the package as JSON/YAML to stdout.
yoke embeds a pure-Go wasm runtime (wazero) and deploys your flight to Kubernetes. It keeps track of the different revisions for any given release and provides capabilities such as rollbacks and inspection.
## Theme
Every Kubernetes related project needs a theme. Although K8 has historically inspired nautical themes, yoke is a slight departure from the norm as it tries to move away from the YAML centric world-view of Kubernetes. Therefore yoke has an aviation related theme. Core commands, for example, are named `takeoff`, `descent`, `blackbox` and `mayday`. However their less whimsical aliases exist as well: `up / apply`, and `down / rollback`.
## Installation
From source:
```bash
go install github.com/yokecd/yoke/cmd/yoke@latest
```## Documentation
Official documentation can be found [here](https://davidmdm.github.io/yoke-website)
## Versioning
This project is still pre version 1.0.0
The project uses semantic versioning but due to is pre 1.0.0 state, breaking changes are represented as minor bumps and all other changes patches until the release of yoke v1.0.0
## Contributions
Contributions are welcome! If you encounter any issues or have suggestions, please open an issue on the yoke GitHub repository.
## License
This project is licensed under the MIT License.