|
|
|
@ -5,8 +5,67 @@
|
|
|
|
|
[![license](https://img.shields.io/github/license/fluxcd/toolkit.svg)](https://github.com/fluxcd/toolkit/blob/master/LICENSE)
|
|
|
|
|
[![release](https://img.shields.io/github/release/fluxcd/toolkit/all.svg)](https://github.com/fluxcd/toolkit/releases)
|
|
|
|
|
|
|
|
|
|
Experimental toolkit for assembling CD pipelines the GitOps way.
|
|
|
|
|
|
|
|
|
|
![overview](docs/diagrams/gotk-feature.png)
|
|
|
|
|
|
|
|
|
|
To get started with the toolkit please read the [docs](https://toolkit.fluxcd.io/).
|
|
|
|
|
The GitOps Toolkit is a set of composable APIs and specialized tools
|
|
|
|
|
that can be used to build a Continuous Delivery platform on top of Kubernetes.
|
|
|
|
|
|
|
|
|
|
These tools are build with Kubernetes controller-runtime libraries, and they
|
|
|
|
|
can be dynamically configured with Kubernetes custom resources either by
|
|
|
|
|
cluster admins or by other automated tools.
|
|
|
|
|
The GitOps Toolkit components interact with each other via Kubernetes
|
|
|
|
|
events and are responsible for the reconciliation of their designated API objects.
|
|
|
|
|
|
|
|
|
|
## `gotk` installation
|
|
|
|
|
|
|
|
|
|
With Homebrew:
|
|
|
|
|
|
|
|
|
|
```sh
|
|
|
|
|
brew tap fluxcd/tap
|
|
|
|
|
brew install gotk
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
With Bash:
|
|
|
|
|
|
|
|
|
|
```sh
|
|
|
|
|
curl -s https://toolkit.fluxcd.io/install.sh | sudo bash
|
|
|
|
|
|
|
|
|
|
# enable completions in ~/.bash_profile
|
|
|
|
|
. <(gotk completion)
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
Binaries for macOS and Linux AMD64/ARM64 are available to download on the
|
|
|
|
|
[release page](https://github.com/fluxcd/toolkit/releases).
|
|
|
|
|
|
|
|
|
|
Verify that your cluster satisfies the prerequisites with:
|
|
|
|
|
|
|
|
|
|
```sh
|
|
|
|
|
gotk check --pre
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
## Get started
|
|
|
|
|
|
|
|
|
|
To get started with the GitOps Toolkit, start [browsing the documentation](https://toolkit.fluxcd.io)
|
|
|
|
|
or get started with one of the following guides:
|
|
|
|
|
|
|
|
|
|
- [Get started with GitOps Toolkit (deep dive)](https://toolkit.fluxcd.io/get-started/)
|
|
|
|
|
- [Installation](https://toolkit.fluxcd.io/guides/installation/)
|
|
|
|
|
- [Manage Helm Releases](https://toolkit.fluxcd.io/guides/helmreleases/)
|
|
|
|
|
- [Setup Notifications](https://toolkit.fluxcd.io/guides/notifications/)
|
|
|
|
|
- [Setup Webhook Receivers](https://toolkit.fluxcd.io/guides/webhook-receivers/)
|
|
|
|
|
|
|
|
|
|
## Components
|
|
|
|
|
|
|
|
|
|
- [Toolkit CLI](https://toolkit.fluxcd.io/cmd/gotk/)
|
|
|
|
|
- [Source Controller](https://toolkit.fluxcd.io/components/source/controller/)
|
|
|
|
|
- [GitRepository CRD](https://toolkit.fluxcd.io/components/source/gitrepositories/)
|
|
|
|
|
- [HelmRepository CRD](https://toolkit.fluxcd.io/components/source/helmrepositories/)
|
|
|
|
|
- [HelmChart CRD](https://toolkit.fluxcd.io/components/source/helmcharts/)
|
|
|
|
|
- [Kustomize Controller](https://toolkit.fluxcd.io/components/kustomize/controller/)
|
|
|
|
|
- [Kustomization CRD](https://toolkit.fluxcd.io/components/kustomize/kustomization/)
|
|
|
|
|
- [Helm Controller](https://toolkit.fluxcd.io/components/helm/controller/)
|
|
|
|
|
- [HelmRelease CRD](https://toolkit.fluxcd.io/components/helm/helmreleases/)
|
|
|
|
|
- [Notification Controller](https://toolkit.fluxcd.io/components/notification/controller/)
|
|
|
|
|
- [Provider CRD](https://toolkit.fluxcd.io/components/notification/provider/)
|
|
|
|
|
- [Alert CRD](https://toolkit.fluxcd.io/components/notification/alert/)
|
|
|
|
|
- [Receiver CRD](https://toolkit.fluxcd.io/components/notification/receiver/)
|
|
|
|
|