fix(cloud-init): handle missing keys and make sudo conditional

This commit is contained in:
2026-03-20 02:01:35 +01:00
committed by MORAWSKI Norbert
parent 17c55c7c5c
commit 321fc79467

View File

@@ -8,13 +8,14 @@ users:
- name: "{{ user.name }}"
primary_group: "{{ user.name }}"
groups: users
{% if user.sudo | default(false) | bool %}
sudo: "ALL=(ALL) NOPASSWD:ALL"
{% endif %}
passwd: "{{ user.password | password_hash('sha512') }}"
lock_passwd: false
{% set ssh_keys = user['keys'] | default([]) %}
{% if ssh_keys | length > 0 %}
{% if 'keys' in user and user['keys'] is iterable and user['keys'] is not string and user['keys'] | length > 0 %}
ssh_authorized_keys:
{% for key in ssh_keys %}
{% for key in user['keys'] %}
- "{{ key }}"
{% endfor %}
{% endif %}