Add toolkit components docs
This commit is contained in:
2
.github/workflows/docs.yaml
vendored
2
.github/workflows/docs.yaml
vendored
@@ -15,6 +15,8 @@ jobs:
|
|||||||
- name: Copy assets
|
- name: Copy assets
|
||||||
run: |
|
run: |
|
||||||
cp install/tk.sh docs/install.sh
|
cp install/tk.sh docs/install.sh
|
||||||
|
curl https://raw.githubusercontent.com/fluxcd/source-controller/master/docs/api/source.md > docs/components/source/api.md
|
||||||
|
curl https://raw.githubusercontent.com/fluxcd/kustomize-controller/master/docs/api/kustomize.md > docs/components/kustomize/api.md
|
||||||
- name: Deploy docs
|
- name: Deploy docs
|
||||||
uses: mhausenblas/mkdocs-deploy-gh-pages@master
|
uses: mhausenblas/mkdocs-deploy-gh-pages@master
|
||||||
env:
|
env:
|
||||||
|
|||||||
BIN
docs/_files/kustomize-controller.png
Normal file
BIN
docs/_files/kustomize-controller.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 52 KiB |
BIN
docs/_files/source-controller.png
Normal file
BIN
docs/_files/source-controller.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 33 KiB |
23
docs/components/kustomize/controller.md
Normal file
23
docs/components/kustomize/controller.md
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
# Kustomize Controller
|
||||||
|
|
||||||
|
The kustomize-controller is a Kubernetes operator,
|
||||||
|
specialized in running continuous delivery pipelines for infrastructure and
|
||||||
|
workloads defined with Kubernetes manifests and assembled with Kustomize.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
Features:
|
||||||
|
|
||||||
|
- Reconciles the cluster state from multiple sources (provided by source-controller)
|
||||||
|
- Generates manifests with Kustomize (from plain Kubernetes yamls or Kustomize overlays)
|
||||||
|
- Validates manifests against Kubernetes API
|
||||||
|
- Impersonates service accounts (multi-tenancy RBAC)
|
||||||
|
- Health assessment of the deployed workloads
|
||||||
|
- Runs pipelines in a specific order (depends-on relationship)
|
||||||
|
- Prunes objects removed from source (garbage collection)
|
||||||
|
- Reports cluster state changes (Slack/Discord)
|
||||||
|
|
||||||
|
Links:
|
||||||
|
|
||||||
|
- Source code [fluxcd/kustomize-controller](https://github.com/fluxcd/kustomize-controller)
|
||||||
|
- Specification [docs](https://github.com/fluxcd/kustomize-controller/tree/master/docs/spec)
|
||||||
24
docs/components/source/controller.md
Normal file
24
docs/components/source/controller.md
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
# Source Controller
|
||||||
|
|
||||||
|
The main role of the source management component is to provide a common interface for artifacts acquisition.
|
||||||
|
The source API defines a set of Kubernetes objects that cluster admins and various automated operators can
|
||||||
|
interact with to offload the Git and Helm repositories operations to a dedicated controller.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
Features:
|
||||||
|
|
||||||
|
- Validate source definitions
|
||||||
|
- Authenticate to sources (SSH, user/password, API token)
|
||||||
|
- Validate source authenticity (PGP)
|
||||||
|
- Detect source changes based on update policies (semver)
|
||||||
|
- Fetch resources on-demand and on-a-schedule
|
||||||
|
- Package the fetched resources into a well-known format (tar.gz, yaml)
|
||||||
|
- Make the artifacts addressable by their source identifier (sha, version, ts)
|
||||||
|
- Make the artifacts available in-cluster to interested 3rd parties
|
||||||
|
- Notify interested 3rd parties of source changes and availability (status conditions, events, hooks)
|
||||||
|
|
||||||
|
Links:
|
||||||
|
|
||||||
|
- Source code [fluxcd/source-controller](https://github.com/fluxcd/source-controller)
|
||||||
|
- Specification [docs](https://github.com/fluxcd/source-controller/tree/master/docs/spec)
|
||||||
@@ -9,12 +9,17 @@ cluster admins or by other automated tools.
|
|||||||
The GitOps Toolkit components interact with each other via Kubernetes
|
The GitOps Toolkit components interact with each other via Kubernetes
|
||||||
events and are responsible for the reconciliation of their designated API objects.
|
events and are responsible for the reconciliation of their designated API objects.
|
||||||
|
|
||||||

|
!!! hint "Work in Progress"
|
||||||
|
We envision a feature where **Flux v2** and **Helm Operator v2** will be assembled from
|
||||||
|
the GitOps Toolkit components. The Flux CD team is looking for feedback and help as
|
||||||
|
the toolkit is in an active experimentation phase.
|
||||||
|
If you wish to take part in this quest please reach out to us on Slack and GitHub.
|
||||||
|
|
||||||
Components:
|
Components:
|
||||||
|
|
||||||
- [Toolkit CLI](https://github.com/fluxcd/toolkit)
|
- [Toolkit CLI](https://github.com/fluxcd/toolkit)
|
||||||
- [Source Controller](https://github.com/fluxcd/source-controller)
|
- [Source Controller](components/source/controller.md)
|
||||||
- [Kustomize Controller](https://github.com/fluxcd/kustomize-controller)
|
- [Kustomize Controller](components/kustomize/controller.md)
|
||||||
|
|
||||||
To get started with the toolkit please follow this [guide](get-started/index.md).
|
To get started with the toolkit please follow this [guide](get-started/index.md).
|
||||||
|
|
||||||
|
|||||||
@@ -37,6 +37,11 @@ markdown_extensions:
|
|||||||
nav:
|
nav:
|
||||||
- Introduction: index.md
|
- Introduction: index.md
|
||||||
- Get Started: get-started/index.md
|
- Get Started: get-started/index.md
|
||||||
|
- Toolkit Components:
|
||||||
|
- Source Controller: components/source/controller.md
|
||||||
|
- Source API: components/source/api.md
|
||||||
|
- Kustomize Controller: components/kustomize/controller.md
|
||||||
|
- Kustomize API: components/kustomize/api.md
|
||||||
- Toolkit CLI:
|
- Toolkit CLI:
|
||||||
- Bootstrap: cmd/tk_bootstrap.md
|
- Bootstrap: cmd/tk_bootstrap.md
|
||||||
- Check: cmd/tk_check.md
|
- Check: cmd/tk_check.md
|
||||||
|
|||||||
Reference in New Issue
Block a user