Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix: allow commas in kubelet arg values #135

Merged
merged 17 commits into from
Jan 12, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
17 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1,108 changes: 1,108 additions & 0 deletions .github/smol_k8s_lab_config_k3s.yaml

Large diffs are not rendered by default.

19 changes: 11 additions & 8 deletions .github/workflows/test-smol-k8s-lab.yml
Original file line number Diff line number Diff line change
@@ -1,20 +1,18 @@
---
name: Test smol-k8s-lab
on:
push:
branches-ignore:
- "main"
pull_request:
paths-ignore:
- ".github/**"
- "README.md"
- "docs/**"
jobs:
smol_k8s_lab_kind:
smol_k8s_lab_test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3

- name: Set up python
- name: Set up Python
id: setup-python
uses: actions/setup-python@v4
with:
Expand All @@ -30,13 +28,18 @@ jobs:
- name: Install smol-k8s-lab via poetry
run: poetry install

- name: Install Argo CD
- name: Install Argo CD cli
run: |
curl -sSL -o argocd-linux-amd64 https://github.com/argoproj/argo-cd/releases/latest/download/argocd-linux-amd64
sudo install -m 555 argocd-linux-amd64 /usr/local/bin/argocd
rm argocd-linux-amd64

- name: source virtual env and test smol-k8s-lab
- name: test smol-k8s-lab with kind
run: |
source .venv/bin/activate
smol-k8s-lab -c .github/smol_k8s_lab_config.yaml
smol-k8s-lab -c .github/smol_k8s_lab_config_kind.yaml

- name: test smol-k8s-lab with k3s
run: |
source .venv/bin/activate
smol-k8s-lab -c .github/smol_k8s_lab_config_k3s.yaml
316 changes: 157 additions & 159 deletions docs/assets/images/screenshots/add_k3s_option_screen.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
293 changes: 145 additions & 148 deletions docs/assets/images/screenshots/apps_screen.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
292 changes: 147 additions & 145 deletions docs/assets/images/screenshots/distro_config_screen.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
152 changes: 76 additions & 76 deletions docs/assets/images/screenshots/help_text.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
290 changes: 144 additions & 146 deletions docs/assets/images/screenshots/kind_config_screen.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
286 changes: 142 additions & 144 deletions docs/assets/images/screenshots/kind_config_screen2.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
317 changes: 158 additions & 159 deletions docs/assets/images/screenshots/new_app_modal_screen.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
232 changes: 117 additions & 115 deletions docs/assets/images/screenshots/start_screen.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
234 changes: 118 additions & 116 deletions docs/assets/images/screenshots/tui_config_screen.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
228 changes: 115 additions & 113 deletions docs/assets/images/screenshots/tui_help_screen.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
12 changes: 6 additions & 6 deletions docs/config_file.md
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,7 @@ k8s_distros:
node-label:
- "ingress-ready=true"
kubelet-arg:
- "max_pods=150"
- "max-pods=150"
# not yet adjustable on k3s at this time
nodes:
control_plane: 1
Expand All @@ -123,7 +123,7 @@ k8s_distros:
disable:
- "traefik"
kubelet-arg:
- "max_pods=150"
- "max-pods=150"
node-label:
- "ingress-ready=true"
# how many dockerized k3s nodes to deploy
Expand All @@ -143,9 +143,9 @@ k8s_distros:
kubelet_extra_args:
# all these options are defaults
node-labels: "ingress-ready=true"
maxPods: 110
podsPerCore: 0
resolvConf: "/etc/resolv.conf"
max-pods: 110
pods-per-core: 0
resolv-conf: "/etc/resolv.conf"
networking_args:
# all these options are defaults
ipFamily: "ipv4"
Expand Down Expand Up @@ -229,6 +229,6 @@ apps_global_config:
cluster_issuer: "letsencrypt-staging"
# change to your tz: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List
time_zone: "Europe/Amsterdam"
# always deploy external secrets. *Must be a string of "" (don't use external secrets) or "bitwarden" to use bitwarden for external secrets*
# always deploy external secrets. *Must be a string of "none" (don't use external secrets) or "bitwarden" to use bitwarden for external secrets*
external_secrets: "bitwarden"
```
2 changes: 1 addition & 1 deletion docs/tui/distro_screen.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
The "k8s distro config" screen is the first screen you will see in the TUI when creating a new cluster:

[<img src="../../assets/images/screenshots/distro_config_screen.svg" alt="terminal screenshot of smol-k8s-lab k8s distro configuration screen . Features three vertically stacked boxes. Box 1: title: 🌱 Select a k8s distro. Contains a drop down menu on the left hand side that defaults to k3d on macOS and k3s on Linux. On the right hand side there is a description of the distro, which in this case is k3d is a lightweight wrapper to run k3s (Rancher Lab's minimal Kubernetes distro) in Docker containers. Subtitle: Inputs below are optional. Box 2: Title: Adjust how many of each node type to deploy. Contains two input fields: input 1: control plane is set to 1. input 2: workers is set to 0. Box 3: Title: Add extra options for the k3s install script. Contains text: Add extra k3s options to pass to the k3s install script via a config file stored in $XDG_CACHE_HOME/smol-k8s-lab/k3s.yml. Box 3 also contains input fields for: secrets encryption: true, disable: traefik, kubelet arg: max_pods=150, node label: ingress-ready=true. Each input field has a 🚮 button next to it. Box 3 subtitle: ➕ k3s option">](../../assets/images/screenshots/distro_config_screen.svg)
[<img src="../../assets/images/screenshots/distro_config_screen.svg" alt="terminal screenshot of smol-k8s-lab k8s distro configuration screen . Features three vertically stacked boxes. Box 1: title: 🌱 Select a k8s distro. Contains a drop down menu on the left hand side that defaults to k3d on macOS and k3s on Linux. On the right hand side there is a description of the distro, which in this case is k3d is a lightweight wrapper to run k3s (Rancher Lab's minimal Kubernetes distro) in Docker containers. Subtitle: Inputs below are optional. Box 2: Title: Adjust how many of each node type to deploy. Contains two input fields: input 1: control plane is set to 1. input 2: workers is set to 0. Box 3: There are two tabs: k3s.yaml and Kubelet config Options. k3s.yaml is selected and the help text reads Add extra options for the k3s install script. Contains text: Add extra k3s options to pass to the k3s install script via a config file stored in $XDG_CACHE_HOME/smol-k8s-lab/k3s.yaml. Please use the second tab for extra kubelet args. Box 3 also contains input fields for: secrets encryption: true, disable: traefik, kubelet arg: max_pods=150, node label: ingress-ready=true. Each input field has a 🚮 button next to it. Box 3 subtitle: ➕ k3s option">](../../assets/images/screenshots/distro_config_screen.svg)

![type:video](../../assets/videos/tour_of_distros.mov)

Expand Down
Loading
Loading