Proxmox lancelot : compte API dédié, VLAN 200 LAB en DHCP
Clonage par l'API (community.proxmox) avec bwpoc@pve limité au pool bwpoc ; modèle créé une fois en root avec l'agent QEMU, qui sert à lire les IP DHCP écrites dans inventory/host_vars/<vm>/dhcp.yml. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
1 parent
099584c95c
commit
5846487f07
15 files changed
+502
-348
No files matched your search
@@ -1,13 +1,24 @@
|
||||
---
|
||||
# Clone et configure les VM du PoC à partir du modèle (exécuté sur le nœud Proxmox).
|
||||
- name: Déposer la clé SSH publique pour cloud-init
|
||||
ansible.builtin.copy:
|
||||
content: "{{ lookup('ansible.builtin.file', poc_ssh_pubkey_file) }}\n"
|
||||
dest: /root/bwpoc_authorized_keys
|
||||
mode: "0600"
|
||||
# Clone et configure les VM du PoC par l'API Proxmox (compte dédié, voir README).
|
||||
# Exécuté sur le contrôleur Ansible : connection local dans le playbook.
|
||||
- name: Contrôler la présence du jeton API
|
||||
ansible.builtin.assert:
|
||||
that: pve_api_token_secret | length > 0
|
||||
fail_msg: "Exportez PVE_TOKEN_SECRET (secret du jeton {{ pve_api_user }}!{{ pve_api_token_id }})"
|
||||
quiet: true
|
||||
|
||||
- name: Créer le répertoire des host_vars par VM
|
||||
ansible.builtin.file:
|
||||
path: "{{ inventory_dir }}/host_vars/{{ item }}"
|
||||
state: directory
|
||||
mode: "0755"
|
||||
loop: "{{ groups['poc_vms'] | unique }}"
|
||||
|
||||
- name: Créer chaque VM
|
||||
ansible.builtin.include_tasks: vm.yml
|
||||
loop: "{{ groups['poc_vms'] | unique }}"
|
||||
loop_control:
|
||||
loop_var: vm_name
|
||||
|
||||
- name: Recharger l'inventaire avec les IP DHCP
|
||||
ansible.builtin.meta: refresh_inventory
|
||||
Reference in new issue
Block a user