31 lines
1.1 KiB
YAML
31 lines
1.1 KiB
YAML
---
|
|
- name: Bootstrap Alpine Linux
|
|
vars:
|
|
_config: "{{ lookup('vars', bootstrap_var_key) }}"
|
|
_base_packages: "{{ _config.base | join(' ') }}"
|
|
_extra_packages: >-
|
|
{{
|
|
((_config.extra | default([])) + (_config.conditional | default([])))
|
|
| reject('equalto', '')
|
|
| join(' ')
|
|
}}
|
|
block:
|
|
- name: Install Alpine Linux base
|
|
ansible.builtin.command: >
|
|
apk --root /mnt --no-cache add {{ _base_packages }}
|
|
register: bootstrap_alpine_bootstrap_result
|
|
changed_when: bootstrap_alpine_bootstrap_result.rc == 0
|
|
|
|
- name: Install extra packages
|
|
when: _extra_packages | trim | length > 0
|
|
ansible.builtin.command: >
|
|
apk --root /mnt add {{ _extra_packages }}
|
|
register: bootstrap_alpine_extra_result
|
|
changed_when: bootstrap_alpine_extra_result.rc == 0
|
|
|
|
- name: Install bootloader
|
|
ansible.builtin.command: >
|
|
apk --root /mnt add grub grub-efi efibootmgr
|
|
register: bootstrap_alpine_bootloader_result
|
|
changed_when: bootstrap_alpine_bootloader_result.rc == 0
|