You've already forked deploy-vm
refine disk size validation and update Proxmox API format for extra disks
This commit is contained in:
+3
-3
@@ -41,11 +41,11 @@
|
|||||||
- _disk.disk is defined
|
- _disk.disk is defined
|
||||||
- _disk.disk | length > 0
|
- _disk.disk | length > 0
|
||||||
- _disk.size is defined
|
- _disk.size is defined
|
||||||
- _disk.size is match('^[0-9]+[KMGT]$')
|
- _disk.size | string is match('^[0-9]+[GT]?$')
|
||||||
fail_msg: >-
|
fail_msg: >-
|
||||||
Disque supplémentaire invalide : {{ _disk }}.
|
Disque supplémentaire invalide : {{ _disk }}.
|
||||||
'disk' (ex: scsi1) et 'size' (ex: 100G) sont obligatoires.
|
'disk' (ex: scsi1) et 'size' (ex: '100G' ou 100) sont obligatoires.
|
||||||
La taille doit être absolue (pas de préfixe +).
|
Formats acceptés : entier en GB (ex: 20) ou chaîne avec unité G/T (ex: '20G', '2T').
|
||||||
loop: "{{ vm_extra_disks }}"
|
loop: "{{ vm_extra_disks }}"
|
||||||
loop_control:
|
loop_control:
|
||||||
loop_var: _disk
|
loop_var: _disk
|
||||||
|
|||||||
+8
-1
@@ -64,7 +64,14 @@
|
|||||||
|
|
||||||
- name: "deploy-vm | add extra disk '{{ _disk.disk }}' ({{ _disk.size }})"
|
- name: "deploy-vm | add extra disk '{{ _disk.disk }}' ({{ _disk.size }})"
|
||||||
vars:
|
vars:
|
||||||
_opts: "{{ _disk.storage | default(proxmox_storage) }}:0,size={{ _disk.size\
|
# Proxmox API format : storage:SIZE_GB[,options]
|
||||||
|
# SIZE_GB doit être un entier en GB (sans unité).
|
||||||
|
# Formats acceptés : entier brut (20 → 20 GB), chaîne avec unité G ("20G") ou T ("2T").
|
||||||
|
_size_gb: >-
|
||||||
|
{{ (_disk.size | string)[:-1] | int * 1024 if (_disk.size | string)[-1] | upper == 'T'
|
||||||
|
else (_disk.size | string)[:-1] | int if (_disk.size | string)[-1] | upper == 'G'
|
||||||
|
else _disk.size | int }}
|
||||||
|
_opts: "{{ _disk.storage | default(proxmox_storage) }}:{{ _size_gb\
|
||||||
}}{{ ',ssd=1' if _disk.ssd | default(false) | bool else ''\
|
}}{{ ',ssd=1' if _disk.ssd | default(false) | bool else ''\
|
||||||
}}{{ ',iothread=1' if _disk.iothread | default(false) | bool else ''\
|
}}{{ ',iothread=1' if _disk.iothread | default(false) | bool else ''\
|
||||||
}}{{ ',backup=0' if not (_disk.backup | default(true) | bool) else ''\
|
}}{{ ',backup=0' if not (_disk.backup | default(true) | bool) else ''\
|
||||||
|
|||||||
Reference in New Issue
Block a user