better fedora setup
This commit is contained in:
@@ -1,32 +1,75 @@
|
||||
- name: Proxmox VM provisioning
|
||||
community.general.proxmox_kvm:
|
||||
api_host: "{{ ansible_host }}"
|
||||
api_user: "{{ proxmox_user }}"
|
||||
api_token_id: "{{ proxmox_token_id }}"
|
||||
api_token_secret: "{{ proxmox_token }}"
|
||||
node: "{{ proxmox_node }}"
|
||||
|
||||
# source:
|
||||
clone: fedora-server-template
|
||||
# created manually already installed
|
||||
vmid: 100
|
||||
# newid: "{{ 110 + loop_index }}"
|
||||
name: "{{ item.name }}"
|
||||
storage: VM_storage
|
||||
agent: true
|
||||
timeout: 60
|
||||
# - name: Download fedora qcow2 template
|
||||
# get_url:
|
||||
# url: "https://download.fedoraproject.org/pub/fedora/linux/releases/39/Cloud/x86_64/images/Fedora-Cloud-Base-39-1.5.x86_64.qcow2"
|
||||
# dest: "/var/lib/vz/template/fedora-cloud-39-template.qcow2"
|
||||
# mode: 0644
|
||||
|
||||
loop: "{{ vms }}"
|
||||
# # export the path:
|
||||
# register: fedora_dowload
|
||||
# run_once: true
|
||||
|
||||
|
||||
- name: Ensure VMs are booted
|
||||
community.general.proxmox_kvm:
|
||||
api_host: "{{ ansible_host }}"
|
||||
api_user: "{{ proxmox_user }}"
|
||||
api_token_id: "{{ proxmox_token_id }}"
|
||||
api_token_secret: "{{ proxmox_token }}"
|
||||
node: "{{ proxmox_node }}"
|
||||
# set manually:
|
||||
name: "{{ item.name }}"
|
||||
state: started
|
||||
loop: "{{ vms }}"
|
||||
# - name: Provision a new VM (empty for now)
|
||||
# community.general.proxmox_kvm:
|
||||
# api_host: "{{ ansible_host }}"
|
||||
# api_user: "{{ proxmox_user }}"
|
||||
# api_token_id: "{{ proxmox_token_id }}"
|
||||
# api_token_secret: "{{ proxmox_token }}"
|
||||
# node: "{{ proxmox_node }}"
|
||||
|
||||
# storage: VM_storage
|
||||
# ostype: l26
|
||||
# cores: 4
|
||||
# memory: 500
|
||||
# net:
|
||||
# net0: 'virtio,bridge=vmbr0'
|
||||
# vmid: "{{ vm_id }}"
|
||||
# name: "{{ name }}"
|
||||
# onboot: true
|
||||
# agent: true
|
||||
|
||||
# # graphics
|
||||
# vga: serial0
|
||||
# serial:
|
||||
# serial0: socket
|
||||
|
||||
# # required for cloud-init
|
||||
# scsihw: virtio-scsi-pci
|
||||
# bootdisk: scsi0
|
||||
# boot: "order=scsi0"
|
||||
|
||||
# # cloud init config
|
||||
# ide:
|
||||
# ide2: VM_storage:cloudinit
|
||||
# sshkeys: "{{ lookup('file', '~/.ssh/id_ed25519.pub') }}"
|
||||
# ipconfig:
|
||||
# ipconfig0: 'ip={{ vm_ip }}/24,gw=192.168.1.1'
|
||||
# ciuser: ansible
|
||||
|
||||
# timeout: 60
|
||||
|
||||
|
||||
# - name: Import fedora qcow2 template
|
||||
# shell: |
|
||||
# qm disk import "{{ vm_id }}" "{{ fedora_dowload.dest }}" VM_storage --format qcow2
|
||||
# qm set "{{ vm_id }}" --scsi0 VM_storage:vm-{{ vm_id }}-disk-0,discard=on
|
||||
# qm resize "{{ vm_id }}" scsi0 50G
|
||||
|
||||
|
||||
# - name: Boot VM
|
||||
# community.general.proxmox_kvm:
|
||||
# api_host: "{{ ansible_host }}"
|
||||
# api_user: "{{ proxmox_user }}"
|
||||
# api_token_id: "{{ proxmox_token_id }}"
|
||||
# api_token_secret: "{{ proxmox_token }}"
|
||||
# node: "{{ proxmox_node }}"
|
||||
# vmid: "{{ vm_id }}"
|
||||
# state: started
|
||||
|
||||
|
||||
- name: Add host to group 'kvm_fedora' with variable
|
||||
ansible.builtin.add_host:
|
||||
groups: kvm_fedora
|
||||
name: "{{ name }}"
|
||||
ansible_host: "{{ vm_ip }}"
|
||||
ansible_user: ansible
|
||||
|
Reference in New Issue
Block a user