Files
ansible/roles/proxmox/tasks/55_create_vm.yaml
Tuan-Dat Tran e10e449333 feat(proxmox): per-node CPU type based on hardware capabilities
Add proxmox_node_cpu map — aya01 (Celeron N5105, no AVX2) stays at
x86-64-v2-AES; inko01/lulu/mii01/naruto01 (all AVX2-capable) use x86-64-v3.
Task looks up cpu type by vm.node with x86-64-v2-AES as fallback.
2026-06-04 23:32:18 +02:00

32 lines
1.0 KiB
YAML

---
- name: Create VM
community.proxmox.proxmox_kvm:
api_user: "{{ proxmox_api_user }}@pam"
api_token_id: "{{ proxmox_api_token_id }}"
api_token_secret: "{{ proxmox_api_token_secret }}"
api_host: "{{ proxmox_api_host }}"
agent: true
name: "{{ vm.name }}"
vmid: "{{ vm.vmid }}"
node: "{{ vm.node }}"
cores: "{{ vm.cores }}"
memory: "{{ vm.memory }}"
net: "{{ vm.net }}"
hostpci: "{{ vm.hostpci | default({}) }}"
scsihw: "virtio-scsi-pci"
ostype: "l26"
tags: "{{ proxmox_tags }}"
description: "Created via Ansible with cloud-init"
boot: "order=scsi0"
cpu: "{{ proxmox_node_cpu[vm.node] | default('x86-64-v2-AES') }}"
ciuser: "{{ vm.ciuser }}"
cipassword: "{{ vm_secrets[proxmox_secrets_prefix + '_' + vm.name.replace('-', '_')] }}"
ipconfig:
ipconfig0: "ip=dhcp"
sshkeys: "{{ vm.sshkeys }}"
register: proxmox_deploy_info
- name: Provision created VM
ansible.builtin.include_tasks: 56_provision_new_vm.yaml
when: proxmox_deploy_info.changed