docs(clustertool): the first chart (#35011)
**Description** <!-- Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change. --> ⚒️ Fixes # <!--(issue)--> **⚙️ Type of change** - [ ] ⚙️ Feature/App addition - [ ] 🪛 Bugfix - [ ] ⚠️ Breaking change (fix or feature that would cause existing functionality to not work as expected) - [ ] 🔃 Refactor of current code - [x] 📜 Documentation Changes **🧪 How Has This Been Tested?** <!-- Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration --> **📃 Notes:** <!-- Please enter any other relevant information here --> **✔️ Checklist:** - [ ] ⚖️ My code follows the style guidelines of this project - [ ] 👀 I have performed a self-review of my own code - [ ] #️⃣ I have commented my code, particularly in hard-to-understand areas - [ ] 📄 I have made changes to the documentation - [ ] 🧪 I have added tests to this description that prove my fix is effective or that my feature works - [ ] ⬆️ I increased versions for any altered app according to semantic versioning - [x] I made sure the title starts with `feat(chart-name):`, `fix(chart-name):`, `chore(chart-name):`, `docs(chart-name):` or `fix(docs):` **➕ App addition** If this PR is an app addition please make sure you have done the following. - [ ] 🖼️ I have added an icon in the Chart's root directory called `icon.png` --- _Please don't blindly check all the boxes. Read them and only check those that apply. Those checkboxes are there for the reviewer to see what is this all about and the status of this PR with a quick glance._
This commit is contained in:
@@ -252,4 +252,5 @@ Otherwise it will reset your talos-vm during next restart.
|
||||
:::
|
||||
|
||||
Your talos-cluster should now be bootstrapped and you should be able to add your first charts.
|
||||
Have fun!
|
||||
|
||||
Have fun with your cluster!
|
||||
|
||||
@@ -24,6 +24,12 @@ Show all Helm-Releases:
|
||||
flux get hr -A
|
||||
```
|
||||
|
||||
Reconcile your cluster:
|
||||
|
||||
```bash
|
||||
flux reconcile source git cluster
|
||||
```
|
||||
|
||||
Show all Flux objects which are not ready:
|
||||
|
||||
```bash
|
||||
|
||||
@@ -0,0 +1,89 @@
|
||||
---
|
||||
sidebar:
|
||||
order: 3
|
||||
title: Deploy a chart with Flux on your Clustertool Cluster
|
||||
---
|
||||
|
||||
This guide will explain briefly how to deploy a chart on your brand new Clustertool Cluster using Flux.
|
||||
|
||||
## Create the files
|
||||
|
||||
- Your charts can be placed in the folder `clusters/main/kubernetes/apps/`.
|
||||
- There will make a folder for your `chart` and inside that folder an `app` folder.
|
||||
- In this guide we will use as example `librespeed`
|
||||
- So it will be like: `clusters/main/kubernetes/apps/librespeed/app/`
|
||||
- In this folder we will create two files, `helm-release.yaml` and `namespace.yaml`.
|
||||
|
||||
:::note[Folder Structure]
|
||||
|
||||
You are not limited to only use the `clusters/main/kubernetes/apps` folder. You can make any folder with subfolders in `clusters/main/kubernetes/` to organize your charts.
|
||||
|
||||
:::
|
||||
|
||||
```yaml
|
||||
// namespace.yaml
|
||||
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: librespeed
|
||||
## Add this part when you need a privileged namespace
|
||||
# labels:
|
||||
# pod-security.kubernetes.io/enforce: privileged
|
||||
|
||||
```
|
||||
:::warning[Privileged Namespace]
|
||||
|
||||
Add the label for pod-security only when it is really needed. After deploying the chart and this part will be needed you will see this in your event logs.
|
||||
|
||||
:::
|
||||
|
||||
```yaml
|
||||
// helm-release.yaml
|
||||
---
|
||||
apiVersion: helm.toolkit.fluxcd.io/v2
|
||||
kind: HelmRelease
|
||||
metadata:
|
||||
name: librespeed
|
||||
namespace: librespeed
|
||||
spec:
|
||||
interval: 15m
|
||||
chart:
|
||||
spec:
|
||||
chart: librespeed
|
||||
version: 15.6.1
|
||||
sourceRef:
|
||||
kind: HelmRepository
|
||||
name: truecharts
|
||||
namespace: flux-system
|
||||
interval: 15m
|
||||
timeout: 20m
|
||||
maxHistory: 3
|
||||
driftDetection:
|
||||
mode: warn
|
||||
install:
|
||||
createNamespace: true
|
||||
remediation:
|
||||
retries: 3
|
||||
upgrade:
|
||||
cleanupOnFail: true
|
||||
remediation:
|
||||
retries: 3
|
||||
uninstall:
|
||||
keepHistory: false
|
||||
values:
|
||||
# Add here your chart specific values
|
||||
```
|
||||
|
||||
## Generate and deploy
|
||||
|
||||
:::note[Kustomizations]
|
||||
|
||||
When not using clustertool, you need to add the kustomizations yourself.
|
||||
|
||||
:::
|
||||
|
||||
- Run `clustertool genconfig`. This will creates `kustomization.yaml` and `ks.yaml` files.
|
||||
- Also this will update the `kustomization.yaml` in the folder above.
|
||||
- Push to git
|
||||
- Wait for flux to get it deployed. This can be taken up to 30 minutes. Another option you can do is run [flux reconcile](/guides/cheatsheet) or configure a flux [webhook](/guides/fluxcd/webhook).
|
||||
@@ -1,4 +1,6 @@
|
||||
---
|
||||
sidebar:
|
||||
order: 1
|
||||
title: FluxCD Basics
|
||||
---
|
||||
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
---
|
||||
sidebar:
|
||||
order: 2
|
||||
title: FluxCD Webhook
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user