28 lines
1.1 KiB
YAML
28 lines
1.1 KiB
YAML
---
|
|
- name: Bootstrap Ubuntu System
|
|
vars:
|
|
bootstrap_ubuntu_release: >-
|
|
{{ 'plucky' if bootstrap_os_key == 'ubuntu' else 'noble' }}
|
|
bootstrap_ubuntu_base_list: "{{ lookup('vars', bootstrap_var_key).base | default([]) }}"
|
|
bootstrap_ubuntu_extra_list: "{{ lookup('vars', bootstrap_var_key).extra | default([]) }}"
|
|
bootstrap_ubuntu_base: "{{ bootstrap_ubuntu_base_list | reject('equalto', '') | join(',') }}"
|
|
bootstrap_ubuntu_extra: >-
|
|
{{
|
|
(
|
|
bootstrap_ubuntu_extra_list
|
|
)
|
|
| reject('equalto', '')
|
|
| join(' ')
|
|
}}
|
|
ansible.builtin.command: "{{ item }}"
|
|
loop:
|
|
- >-
|
|
debootstrap --include={{ bootstrap_ubuntu_base }}
|
|
{{ bootstrap_ubuntu_release }} /mnt http://archive.ubuntu.com/ubuntu/
|
|
- ln -sf /run/NetworkManager/resolv.conf /mnt/etc/resolv.conf
|
|
- arch-chroot /mnt sed -i '1s|$| universe|' /etc/apt/sources.list
|
|
- arch-chroot /mnt apt update
|
|
- "arch-chroot /mnt apt install -y {{ bootstrap_ubuntu_extra }}"
|
|
register: bootstrap_result
|
|
changed_when: bootstrap_result.rc == 0
|