summaryrefslogtreecommitdiff
path: root/playbooks.d/k3s-master/playbook.bash
diff options
context:
space:
mode:
authorPatrick Spek <p.spek@tyil.nl>2022-07-25 17:12:12 +0200
committerPatrick Spek <p.spek@tyil.nl>2022-07-25 17:12:12 +0200
commitd66723f1ae84c7b7ee9de12ce708c529331bf8db (patch)
tree5277d3e2660bad7a046b18ddea15c36e1552f706 /playbooks.d/k3s-master/playbook.bash
parent2f4812255c4cd2b7879a70803c93de108f0d8c7f (diff)
Rename k3s to k3s-master
Diffstat (limited to 'playbooks.d/k3s-master/playbook.bash')
-rw-r--r--playbooks.d/k3s-master/playbook.bash46
1 files changed, 46 insertions, 0 deletions
diff --git a/playbooks.d/k3s-master/playbook.bash b/playbooks.d/k3s-master/playbook.bash
new file mode 100644
index 0000000..b0b39ad
--- /dev/null
+++ b/playbooks.d/k3s-master/playbook.bash
@@ -0,0 +1,46 @@
+#!/usr/bin/env bash
+
+playbook_add() {
+ pkg install helm k3s
+
+ info "$BASHTARD_PLAYBOOK" "Writing config.yaml for k3s"
+ mkdir -pv -- /etc/rancher/k3s
+ cat <<-EOF > /etc/rancher/k3s/config.yaml
+ node-name: ${BASHTARD_PLATFORM[fqdn]}
+ node-ip: $(config "k3s.network.ip" "$(config "vpn.ipv4" "127.0.0.1")")
+ bind-address: $(config "k3s.network.bind" "$(config "vpn.ipv4" "0.0.0.0")")
+ cluster-cidr: $(config "k3s.network.cidr.pods")
+ service-cidr: $(config "k3s.network.cidr.svcs")
+ cluster-dns: $(config "k3s.network.service.dns")
+ cluster-domain: $(config "k3s.domain")
+ disable:
+ - traefik
+ EOF
+
+ info "$BASHTARD_PLAYBOOK" "Installing k3s"
+ curl -sfL https://get.k3s.io | sh - # I hate this
+
+ export KUBECONFIG=/etc/rancher/k3s/k3s.yaml
+ export HELM_KUBECONTEXT=default
+
+ info "$BASHTARD_PLAYBOOK" "Setting up Helm repositories"
+ helm repo add nginx-stable https://helm.nginx.com/stable
+ helm repo update
+
+ info "$BASHTARD_PLAYBOOK" "Installing ArgoCD on k3s"
+ k3s kubectl create namespace argocd
+ k3s kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml
+
+ info "$BASHTARD_PLAYBOOK" "Installing Nginx Ingress Controller to k3s"
+ k3s kubectl create namespace ingress
+ helm install ingress-nginx -n ingress nginx-stable/nginx-ingress
+}
+
+playbook_sync() {
+ #k3s kubectl apply -Rf "$BASHTARD_ETCDIR/playbooks.d/$BASHTARD_PLAYBOOK/share"
+ :
+}
+
+playbook_del() {
+ /usr/local/bin/k3s-uninstall.sh
+}