52 lines
1.8 KiB
YAML
52 lines
1.8 KiB
YAML
---
|
|
- name: Bootstrap Debian System
|
|
vars:
|
|
bootstrap_debian_release: >-
|
|
{{
|
|
'buster' if (os_version | string) == '10'
|
|
else 'bullseye' if (os_version | string) == '11'
|
|
else 'bookworm' if (os_version | string) == '12'
|
|
else 'trixie' if (os_version | string) == '13'
|
|
else 'sid' if (os_version | string) == 'unstable'
|
|
else 'trixie'
|
|
}}
|
|
bootstrap_debian_version_packages: >-
|
|
{{
|
|
lookup('vars', bootstrap_var_key)
|
|
| reject('equalto', '')
|
|
| list
|
|
}}
|
|
bootstrap_debian_base_list: >-
|
|
{{
|
|
bootstrap_debian_base
|
|
| reject('equalto', '')
|
|
| list
|
|
}}
|
|
bootstrap_debian_extra_list: "{{ bootstrap_debian_version_packages | difference(bootstrap_debian_base_list) }}"
|
|
bootstrap_debian_base: "{{ bootstrap_debian_base_list | join(',') }}"
|
|
bootstrap_debian_extra: >-
|
|
{{
|
|
(
|
|
bootstrap_debian_extra_list
|
|
)
|
|
| reject('equalto', '')
|
|
| join(' ')
|
|
}}
|
|
block:
|
|
- name: Install Debian base system
|
|
ansible.builtin.command: >-
|
|
debootstrap --include={{ bootstrap_debian_base }}
|
|
{{ bootstrap_debian_release }} /mnt http://deb.debian.org/debian/
|
|
register: bootstrap_debian_base_result
|
|
changed_when: bootstrap_debian_base_result.rc == 0
|
|
|
|
- name: Install extra packages
|
|
ansible.builtin.command: "{{ chroot_command }} apt install -y {{ bootstrap_debian_extra }}"
|
|
register: bootstrap_debian_extra_result
|
|
changed_when: bootstrap_debian_extra_result.rc == 0
|
|
|
|
- name: Remove unnecessary packages
|
|
ansible.builtin.command: "{{ chroot_command }} apt remove -y libcups2 libavahi-common3 libavahi-common-data"
|
|
register: bootstrap_debian_remove_result
|
|
changed_when: bootstrap_debian_remove_result.rc == 0
|