diff options
Diffstat (limited to 'roles')
-rw-r--r-- | roles/apt-repo/github-containers/files/repo.gpg | bin | 0 -> 723 bytes | |||
-rw-r--r-- | roles/apt-repo/github-containers/tasks/main.yml | 20 | ||||
-rw-r--r-- | roles/kubernetes/base/tasks/main.yml | 32 |
3 files changed, 40 insertions, 12 deletions
diff --git a/roles/apt-repo/github-containers/files/repo.gpg b/roles/apt-repo/github-containers/files/repo.gpg Binary files differnew file mode 100644 index 00000000..9b827ee8 --- /dev/null +++ b/roles/apt-repo/github-containers/files/repo.gpg diff --git a/roles/apt-repo/github-containers/tasks/main.yml b/roles/apt-repo/github-containers/tasks/main.yml new file mode 100644 index 00000000..fae56380 --- /dev/null +++ b/roles/apt-repo/github-containers/tasks/main.yml @@ -0,0 +1,20 @@ +--- +- name: add repository key + copy: + src: repo.gpg + dest: /etc/apt/trusted.gpg.d/github-containers.gpg + register: apt_repo_github_containers_key + +- name: add repository entry + copy: + content: | + deb http://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/{{ (ansible_distribution == 'Ubuntu') | ternary('xUbuntu', ansible_distribution) }}_{{ ansible_distribution_version }}/ / + dest: /etc/apt/sources.list.d/github-containers.list + register: apt_repo_github_containers_sources + +- name: update apt cache + when: apt_repo_github_containers_key is changed or + apt_repo_github_containers_sources is changed + command: apt-get update + args: + warn: false diff --git a/roles/kubernetes/base/tasks/main.yml b/roles/kubernetes/base/tasks/main.yml index a104b660..a13f04fa 100644 --- a/roles/kubernetes/base/tasks/main.yml +++ b/roles/kubernetes/base/tasks/main.yml @@ -9,24 +9,39 @@ include_role: name: "storage/{{ kubelet_storage.type }}/volume" -- name: add apt repository +- name: add apt repository for kubernetes packages include_role: name: apt-repo/kubernetes +- name: add apt repository for cri-tools + include_role: + name: apt-repo/github-containers + - name: install kubelet and common packages apt: name: - bridge-utils - - cri-tools + - "cri-tools={{ ([0, 1] | map('extract', kubernetes_version.split('.'))) | join('.') }}.0~1" - "kubelet={{ kubernetes_version }}-00" state: present force: yes -- name: disable automatic upgrades for kubelet +- name: disable automatic upgrades for kubelet and cri-tools + loop: + - kubelet + - cri-tools dpkg_selections: - name: kubelet + name: "{{ item }}" selection: hold +- name: configure endpoints for crictl + when: kubernetes_cri_socket + copy: + dest: /etc/crictl.yaml + content: | + runtime-endpoint: "{{ kubernetes_cri_socket }}" + image-endpoint: "{{ kubernetes_cri_socket }}" + - name: add crictl config for shells loop: - zsh @@ -36,14 +51,7 @@ create: yes marker: "### {mark} ANSIBLE MANAGED BLOCK for crictl ###" content: | - {% if kubernetes_cri_socket %} - alias crictl="crictl --runtime-endpoint {{ kubernetes_cri_socket }}" - {% endif %} - {% if item == 'zsh' %} - ## TODO: see https://github.com/kubernetes-sigs/cri-tools/issues/435 - autoload -U +X bashcompinit && bashcompinit - {% endif %} - source <(crictl completion) + source <(crictl completion {{ item }}) - name: add dummy group with gid 990 group: |