From 80083ff0cc6be04350b420f08f9506633941bff5 Mon Sep 17 00:00:00 2001 From: Tom Alexander Date: Thu, 1 Dec 2022 23:38:21 -0500 Subject: [PATCH] Add the kubernetes role. --- ansible/playbook.yaml | 1 + .../roles/kubernetes/files/decrypt_k8s_secret | 7 +++ ansible/roles/kubernetes/files/k | 7 +++ ansible/roles/kubernetes/files/ka | 7 +++ ansible/roles/kubernetes/files/kd | 8 +++ ansible/roles/kubernetes/files/kdel | 7 +++ ansible/roles/kubernetes/files/klog | 7 +++ ansible/roles/kubernetes/files/ks | 7 +++ ansible/roles/kubernetes/files/kshell | 30 +++++++++++ ansible/roles/kubernetes/files/kx | 7 +++ ansible/roles/kubernetes/meta/main.yaml | 2 + ansible/roles/kubernetes/tasks/common.yaml | 53 +++++++++++++++++++ ansible/roles/kubernetes/tasks/freebsd.yaml | 5 ++ ansible/roles/kubernetes/tasks/linux.yaml | 24 +++++++++ ansible/roles/kubernetes/tasks/main.yaml | 1 + ansible/roles/kubernetes/tasks/peruser.yaml | 29 ++++++++++ .../kubernetes/tasks/peruser_freebsd.yaml | 0 .../roles/kubernetes/tasks/peruser_linux.yaml | 0 18 files changed, 202 insertions(+) create mode 100644 ansible/roles/kubernetes/files/decrypt_k8s_secret create mode 100644 ansible/roles/kubernetes/files/k create mode 100644 ansible/roles/kubernetes/files/ka create mode 100644 ansible/roles/kubernetes/files/kd create mode 100644 ansible/roles/kubernetes/files/kdel create mode 100644 ansible/roles/kubernetes/files/klog create mode 100644 ansible/roles/kubernetes/files/ks create mode 100644 ansible/roles/kubernetes/files/kshell create mode 100644 ansible/roles/kubernetes/files/kx create mode 100644 ansible/roles/kubernetes/meta/main.yaml create mode 100644 ansible/roles/kubernetes/tasks/common.yaml create mode 100644 ansible/roles/kubernetes/tasks/freebsd.yaml create mode 100644 ansible/roles/kubernetes/tasks/linux.yaml create mode 100644 ansible/roles/kubernetes/tasks/main.yaml create mode 100644 ansible/roles/kubernetes/tasks/peruser.yaml create mode 100644 ansible/roles/kubernetes/tasks/peruser_freebsd.yaml create mode 100644 ansible/roles/kubernetes/tasks/peruser_linux.yaml diff --git a/ansible/playbook.yaml b/ansible/playbook.yaml index dab11b0..148ef8f 100644 --- a/ansible/playbook.yaml +++ b/ansible/playbook.yaml @@ -29,3 +29,4 @@ - exfat - bhyve - media + - kubernetes diff --git a/ansible/roles/kubernetes/files/decrypt_k8s_secret b/ansible/roles/kubernetes/files/decrypt_k8s_secret new file mode 100644 index 0000000..6f4ee87 --- /dev/null +++ b/ansible/roles/kubernetes/files/decrypt_k8s_secret @@ -0,0 +1,7 @@ +#!/usr/bin/env bash +# +set -euo pipefail +IFS=$'\n\t' +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" + +kubectl get secret -o json "${@}" | jq '.data[] |= @base64d | .data' diff --git a/ansible/roles/kubernetes/files/k b/ansible/roles/kubernetes/files/k new file mode 100644 index 0000000..aad189d --- /dev/null +++ b/ansible/roles/kubernetes/files/k @@ -0,0 +1,7 @@ +#!/usr/bin/env bash +# +set -euo pipefail +IFS=$'\n\t' +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" + +exec kubectl "$@" diff --git a/ansible/roles/kubernetes/files/ka b/ansible/roles/kubernetes/files/ka new file mode 100644 index 0000000..4ba9c83 --- /dev/null +++ b/ansible/roles/kubernetes/files/ka @@ -0,0 +1,7 @@ +#!/usr/bin/env bash +# +set -euo pipefail +IFS=$'\n\t' +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" + +exec kubectl "$@" --all-namespaces diff --git a/ansible/roles/kubernetes/files/kd b/ansible/roles/kubernetes/files/kd new file mode 100644 index 0000000..255a8df --- /dev/null +++ b/ansible/roles/kubernetes/files/kd @@ -0,0 +1,8 @@ +#!/usr/bin/env bash +# +set -euo pipefail +IFS=$'\n\t' +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" + +export KUBECTL_EXTERNAL_DIFF="colordiff -N -u" +exec kubectl diff "$@" diff --git a/ansible/roles/kubernetes/files/kdel b/ansible/roles/kubernetes/files/kdel new file mode 100644 index 0000000..df81a13 --- /dev/null +++ b/ansible/roles/kubernetes/files/kdel @@ -0,0 +1,7 @@ +#!/usr/bin/env bash +# +set -euo pipefail +IFS=$'\n\t' +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" + +exec kubectl delete --all "$@" diff --git a/ansible/roles/kubernetes/files/klog b/ansible/roles/kubernetes/files/klog new file mode 100644 index 0000000..6a7225c --- /dev/null +++ b/ansible/roles/kubernetes/files/klog @@ -0,0 +1,7 @@ +#!/usr/bin/env bash +# +set -euo pipefail +IFS=$'\n\t' +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" + +exec kubectl logs --all-containers "$@" diff --git a/ansible/roles/kubernetes/files/ks b/ansible/roles/kubernetes/files/ks new file mode 100644 index 0000000..d612667 --- /dev/null +++ b/ansible/roles/kubernetes/files/ks @@ -0,0 +1,7 @@ +#!/usr/bin/env bash +# +set -euo pipefail +IFS=$'\n\t' +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" + +exec kubens "$@" diff --git a/ansible/roles/kubernetes/files/kshell b/ansible/roles/kubernetes/files/kshell new file mode 100644 index 0000000..3326de5 --- /dev/null +++ b/ansible/roles/kubernetes/files/kshell @@ -0,0 +1,30 @@ +#!/usr/bin/env bash +# +set -euo pipefail +IFS=$'\n\t' +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" + +: ${cpu:="500m"} +: ${memory:="2Gi"} + +overrides="" +if [ ! -z "${highmem:-}" ]; then + overrides=$(jq --compact-output '.' <