Ansible role to install and configure the Kubernetes CLI.
Building and improving this Ansible role have been sponsored by my current and previous employers like Cloudpunks GmbH and Proact Deutschland GmbH.
- Requirements
- Default Variables
- kubectl_arch
- kubectl_checksum
- kubectl_ctx_checksum
- kubectl_ctx_download
- kubectl_ctx_install
- kubectl_ctx_version
- kubectl_download
- kubectl_extra_configs
- kubectl_fixed_version
- kubectl_from_repository
- kubectl_general_configs
- kubectl_keyring
- kubectl_legacy_keyring
- kubectl_legacy_repo
- kubectl_minor_version
- kubectl_ns_checksum
- kubectl_ns_download
- kubectl_ns_install
- kubectl_ns_version
- kubectl_version
- Discovered Tags
- Dependencies
- License
- Author
- Minimum Ansible version:
2.10
Architecture for the kubectl release
kubectl_arch: "{{ 'arm64' if ansible_architecture in ['aarch64', 'arm64'] else 'amd64' }}"Checksum for the kubectl release
kubectl_checksum:Checksum for the kubectl ctx plugin release
kubectl_ctx_checksum:Download URL for the kubectl ctx plugin release
kubectl_ctx_download: https://github.com/ahmetb/kubectx/releases/download/v{{ kubectl_ctx_version }}/kubectxInstall the kubectl ctx plugin
kubectl_ctx_install: trueVersion of the kubectl ctx plugin release to install
kubectl_ctx_version: 0.11.0Download URL for the kubectl release
kubectl_download: https://dl.k8s.io/release/v{{ kubectl_version }}/bin/{{ ansible_system | lower }}/{{ kubectl_arch }}/kubectlList of extra configs
kubectl_extra_configs: []kubectl_extra_configs:
- name: global
path: /etc/kubernetes/config
owner: root
group: root
mode: u=rwX,g=rX,o=rX
current: foobar
clusters:
- name: foobar
ca: ...
server: https://10.13.37.1:6443
users:
- name: admin
cert: ...
key: ...
contexts:
- name: foobar
cluster: foobar
user: adminPin version if installed from repository
kubectl_fixed_version: falsekubectl_from_repository: falseList of general configs
kubectl_general_configs: []kubectl_general_configs:
- name: global
path: /etc/kubernetes/config
owner: root
group: root
mode: u=rwX,g=rX,o=rX
current: foobar
clusters:
- name: foobar
ca: ...
server: https://10.13.37.1:6443
users:
- name: admin
cert: ...
key: ...
contexts:
- name: foobar
cluster: foobar
user: adminPath to legacy keyring which got to be removed
kubectl_keyring: /usr/share/keyrings/kubernetes-v{{ kubectl_minor_version }}-archive-keyring.gpgkubectl_legacy_keyring: /usr/share/keyrings/kubernetes-archive-keyring.gpgLegacy repository that got to be removed
kubectl_legacy_repo: deb [signed-by={{ kubectl_legacy_keyring }}] http://apt.kubernetes.io/ kubernetes-xenial mainMinor version used for repo selection
kubectl_minor_version: "{{ (kubectl_version | string).split('.')[0] }}.{{ (kubectl_version | string).split('.')[1] }}"Checksum for the kubectl ns plugin release
kubectl_ns_checksum:Download URL for the kubectl ns plugin release
kubectl_ns_download: https://github.com/ahmetb/kubectx/releases/download/v{{ kubectl_ns_version }}/kubensInstall the kubectl ns plugin
kubectl_ns_install: trueVersion of the kubectl ns plugin release to install
kubectl_ns_version: 0.11.0Version of the kubectl release to install
kubectl_version: 1.36.3kubectl
- None
Apache-2.0