summaryrefslogtreecommitdiff
path: root/roles/containerd/tasks/main.yml
diff options
context:
space:
mode:
Diffstat (limited to 'roles/containerd/tasks/main.yml')
-rw-r--r--roles/containerd/tasks/main.yml34
1 files changed, 28 insertions, 6 deletions
diff --git a/roles/containerd/tasks/main.yml b/roles/containerd/tasks/main.yml
index f0d29a4a..ab23bd96 100644
--- a/roles/containerd/tasks/main.yml
+++ b/roles/containerd/tasks/main.yml
@@ -1,15 +1,37 @@
---
-- name: check for supported platform
- when: ansible_distribution != "Ubuntu"
- fail:
- msg: "currenty this only works with ubuntu"
+- name: install containerd config
+ when: containerd_config is defined
+ copy:
+ content: "{{ containerd_config | to_toml }}\n"
+ dest: /etc/containerd/config.toml
+ notify: restart containerd
- name: prepare storage volume for /var/lib/containerd
when: containerd_storage is defined
- import_tasks: "{{ containerd_storage.type }}.yml"
+ vars:
+ storage_volume: "{{ containerd_storage | combine({'dest': '/var/lib/containerd'}) }}"
+ include_role:
+ name: "storage/{{ containerd_storage.type }}/volume"
+
+- name: prepare package provider
+ when: containerd_pkg_provider != 'distro'
+ include_role:
+ name: "apt-repo/{{ containerd_pkg_provider }}"
- name: install containerd
apt:
- name: containerd
+ name: "{{ containerd_pkg_name }}{% if containerd_pkg_version is defined %}={{ containerd_pkg_version }}{% endif %}"
state: present
force: yes
+
+- name: disable automatic upgrades for containerd package
+ when: containerd_pkg_version is defined
+ dpkg_selections:
+ name: "{{ containerd_pkg_name }}"
+ selection: hold
+
+- name: start and enable containerd
+ service:
+ name: containerd
+ enabled: true
+ state: started