Files
ansible_role_package/tasks/pkgs/zfs.yml
Matthew Stobbs aff4fddfb4 fix broken packages
- standardize naming of each pkg append
- move _configured vars to end of block
2025-03-09 21:48:11 -06:00

71 lines
2.3 KiB
YAML

# vim: set filetype=yaml.ansible :
---
- name: Add zfs
when:
- zfs_configured is undefined
block:
- name: Load zfs config
ansible.builtin.include_tasks:
file: config/zfs.yml
- name: Linux based installation
when:
- ansible_system == 'Linux'
block:
- name: RedHat based configuration
when:
- ansible_os_family == 'RedHat'
block:
- name: Add openzfs gpg_key
become: "{{ sys_pkg_become }}"
ansible.builtin.rpm_key:
key: "{{ zfs.gpg_key }}"
fingerprint: "{{ zfs.gpg_fp }}"
state: present
- name: Enable openzfs repository
become: "{{ sys_pkg_become }}"
ansible.builtin.dnf:
name: "{{ zfs.repo_pkg }}"
disable_gpg_check: "{{ zfs.skip_gpg_check }}"
state: present
- name: Debian configuration
when:
- ansible_os_family == 'Debian'
block:
- name: Enable openzfs repository
become: "{{ sys_pkg_become }}"
ansible.builtin.apt_repository:
repo: |
deb http://deb.debian.org/debian {{ zfs.release }}-backports main contrib
deb-src http://deb.debian.org/debian {{ zfs.release }}-backports main contrib
filename: "{{ zfs.release }}-backports"
state: present
update_cache: false
- name: Pin zfs package to backports
become: "{{ sys_pkg_become }}"
ansible.builtin.copy:
dest: /etc/apt/preferences.d/90_zfs
state: file
mode: '0644'
content: |
Package: src:zfs-linux
Pin: release n={{ zfs.release }}-backports
Pin-Priority: 990
- name: Append zfs to pkg_sys
ansible.builtin.set_fact:
pkg_sys: "{{ pkg_sys + zfs.deps + zfs.pkgs }}"
- name: Append openzfs to pkg_cask
when:
- ansible_os_family == 'Darwin'
ansible.builtin.set_fact:
pkg_cask: "{{ pkg_cask + ['openzfs'] }}"
- name: Set zfs_configured
ansible.builtin.set_fact:
zfs_configured: true