diff --git a/platform-infra/ansible/group_vars/all.yml b/platform-infra/ansible/group_vars/all.yml index 21551ec..d41f899 100644 --- a/platform-infra/ansible/group_vars/all.yml +++ b/platform-infra/ansible/group_vars/all.yml @@ -35,7 +35,7 @@ zfs_child_datasets: # APT codename for Docker's repo. Defaults to the VM's release. Docker only # publishes repos for LTS + recent codenames — on a non-LTS Ubuntu (e.g. # oracular/plucky) set this to the nearest LTS, e.g. "noble". -docker_apt_codename: "{{ ansible_distribution_release }}" +docker_apt_codename: "noble" # Native ZFS storage driver keeps image layers as ZFS datasets under the pool # (data-root sits on tank/platform/docker). Switch to overlay2 only if you have # a specific reason. diff --git a/platform-infra/ansible/roles/backup/tasks/main.yml b/platform-infra/ansible/roles/backup/tasks/main.yml index 406f5d6..a24fb6d 100644 --- a/platform-infra/ansible/roles/backup/tasks/main.yml +++ b/platform-infra/ansible/roles/backup/tasks/main.yml @@ -6,6 +6,36 @@ state: present when: backup_snapshots_enabled +- name: Ensure the sanoid config directory exists + ansible.builtin.file: + path: /etc/sanoid + state: directory + owner: root + group: root + mode: "0755" + when: backup_snapshots_enabled + +- name: Locate the packaged sanoid.defaults.conf + ansible.builtin.shell: "dpkg -L sanoid | grep -m1 sanoid.defaults.conf" + register: sanoid_defaults_src + changed_when: false + failed_when: false + when: backup_snapshots_enabled + +- name: Install sanoid.defaults.conf (sanoid needs it next to sanoid.conf) + ansible.builtin.copy: + remote_src: true + src: "{{ sanoid_defaults_src.stdout }}" + dest: /etc/sanoid/sanoid.defaults.conf + force: false + owner: root + group: root + mode: "0644" + when: + - backup_snapshots_enabled + - sanoid_defaults_src.stdout | default('') | length > 0 + - sanoid_defaults_src.stdout != '/etc/sanoid/sanoid.defaults.conf' + - name: Configure sanoid snapshot policy ansible.builtin.template: src: sanoid.conf.j2 diff --git a/platform-infra/ansible/roles/docker/tasks/main.yml b/platform-infra/ansible/roles/docker/tasks/main.yml index 6adb311..289ca1d 100644 --- a/platform-infra/ansible/roles/docker/tasks/main.yml +++ b/platform-infra/ansible/roles/docker/tasks/main.yml @@ -53,11 +53,8 @@ - name: Install Docker Engine + Compose plugin ansible.builtin.apt: name: - - docker-ce - - docker-ce-cli - - containerd.io - - docker-buildx-plugin - - docker-compose-plugin + - docker.io + - docker-compose-v2 state: present update_cache: true