-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat: docs information architecture (#496)
## Description Updating content and information architecture of the docs. ## Related Issue Fixes # <!-- or --> Relates to #460 ## Type of change - [ ] Bug fix (non-breaking change which fixes an issue) - [ ] New feature (non-breaking change which adds functionality) - [x] Other (security config, docs update, etc) ## Checklist before merging - [x] Test, docs, adr added or updated as needed - [x] [Contributor Guide Steps](https://github.com/defenseunicorns/pepr/blob/main/CONTRIBUTING.md#submitting-a-pull-request) followed --------- Co-authored-by: Case Wylie <[email protected]>
- Loading branch information
1 parent
5c2f8c9
commit 58f79c3
Showing
27 changed files
with
600 additions
and
85 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
# Pepr Overview | ||
|
||
## What is Pepr? | ||
|
||
#### **_Type safe Kubernetes middleware for humans_** | ||
|
||
<img align="right" width="40%" src="../_images/pepr.png" /> | ||
|
||
Pepr is on a mission to save Kubernetes from the tyranny of YAML, intimidating glue code, bash scripts, and other makeshift solutions. As a Kubernetes controller, Pepr empowers you to define Kubernetes transformations using TypeScript, without software development expertise thanks to plain-english configurations. Pepr transforms a patchwork of forks, scripts, overlays, and other chaos into a cohesive, well-structured, and maintainable system. With Pepr, you can seamlessly transition IT ops tribal knowledge into code, simplifying documentation, testing, validation, and coordination of changes for a more predictable outcome. | ||
|
||
***Note: Pepr is still in active development so breaking changes may occur, but will be documented in release notes.*** | ||
|
||
## How Pepr Works | ||
|
||
Pepr is a Kubernetes controller that watches for changes to the cluster and executes Pepr Modules in response to those changes. Pepr Modules are written in TypeScript and are compiled to WebAssembly (WASM) for execution in the Pepr Controller. Pepr Modules are written using the Pepr SDK which provides a fluent API for interacting with the Kubernetes API and other Pepr Modules. Pepr Modules are deployed to the Pepr Controller as Docker images and are executed in a sandboxed environment. Pepr Modules can be deployed to the Pepr Controller using the Pepr CLI or any other tool that can build and push Docker images. | ||
|
||
## Features | ||
|
||
### Out of the Box Features | ||
|
||
- Zero-config K8s webhook mutations and validations | ||
- Automatic leader-elected K8s resource watching | ||
- Lightweight async key-value store backed by K8s for stateful operations with the Pepr Store | ||
- Human-readable fluent API for generating Pepr Capabilities | ||
- A fluent API for creating/modifying/watching and server-side applying K8s resources via Kubernetes Fluent Client | ||
- Generate new K8s resources based off of cluster resource changes | ||
- Perform other exec/API calls based off of cluster resources changes or any other arbitrary schedule | ||
- Out of the box airgap support with Zarf | ||
- Entire NPM ecosystem available for advanced operations | ||
- Realtime K8s debugging system for testing/reacting to cluster changes | ||
- Controller network isolation and tamper-resistent module execution | ||
- Least-privilege RBAC generation | ||
- AMD64 and ARM64 support | ||
|
||
### Configurable Features |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
# Pepr Modules | ||
|
||
## What is a Pepr Module? | ||
|
||
A Pepr Module is a collection of files that can be used to create a new Pepr Project. A Pepr Module can be used to create a new Pepr Project by using the `pepr init` command. A Pepr Module can also be used to create a new Pepr Module by using the `pepr create-module` command. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
11 changes: 5 additions & 6 deletions
11
docs/capabilities.md → docs/030_user-guide/040_capabilities.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.