2026-04-03 09:19:18 +02:00

71 lines
1.8 KiB
YAML

---
- name: Install prerequisites
apt:
name:
- apt-transport-https
- ca-certificates
- gnupg
- lsb-release
- dkms
- build-essential
state: present
update_cache: yes
- name: Disable KVM modules if present
block:
- name: Check if kvm modules are loaded
shell: |
lsmod | grep -E 'kvm_intel|kvm_amd|kvm' || true
register: kvm_modules
changed_when: false
- name: Blacklist KVM modules
copy:
dest: /etc/modprobe.d/disable-kvm.conf
content: |
# Disabled for VirtualBox compatibility
blacklist kvm
blacklist kvm_intel
blacklist kvm_amd
when: kvm_modules.stdout != ""
- name: Remove loaded KVM modules immediately
shell: |
rmmod kvm_intel || true
rmmod kvm_amd || true
rmmod kvm || true
when: kvm_modules.stdout != ""
ignore_errors: yes
- name: Télécharger et convertir la clé GPG de VirtualBox
ansible.builtin.shell:
cmd: curl -fsSL {{ virtualbox_repo_key_url }} | gpg --dearmor -o /usr/share/keyrings/virtualbox.gpg
creates: /usr/share/keyrings/virtualbox.gpg
- name: Add VirtualBox apt repository
ansible.builtin.apt_repository:
repo: "deb [arch=amd64 signed-by=/usr/share/keyrings/virtualbox.gpg] {{ virtualbox_repo_url }}"
state: present
filename: virtualbox
update_cache: no
- name: Update apt cache
apt:
update_cache: yes
- name: Install VirtualBox
apt:
name: "{{ virtualbox_package }}"
state: present
- name: Ensure vboxdrv is loaded
command: /sbin/vboxconfig
register: vboxconfig
changed_when: "'done' in vboxconfig.stdout"
- name: Add user to vboxusers group
user:
name: "{{ ansible_user }}"
groups: vboxusers
append: yes