43 lines
1.5 KiB
YAML
Executable File
43 lines
1.5 KiB
YAML
Executable File
---
|
|
|
|
- name: Remove all existing ID mappings
|
|
lineinfile:
|
|
path: "/etc/pve/lxc/{{ container_vmid }}.conf"
|
|
regexp: '^lxc\.idmap:'
|
|
state: absent
|
|
when: container_id_mappings is defined
|
|
|
|
- name: Add ID mappings
|
|
blockinfile:
|
|
path: "/etc/pve/lxc/{{ container_vmid }}.conf"
|
|
block: "{{ container_id_mappings }}"
|
|
insertafter: EOF
|
|
when: container_id_mappings is defined
|
|
|
|
- name: Remove existing GPU configuration
|
|
lineinfile:
|
|
path: "/etc/pve/lxc/{{ container_vmid }}.conf"
|
|
regexp: "{{ item }}"
|
|
state: absent
|
|
loop:
|
|
- '^lxc\.cgroup2\.devices\.allow: c {{ gpu_device_id }}:\* rwm'
|
|
- '^lxc\.cgroup2\.devices\.allow: c {{ uvm_device_id }}:\* rwm'
|
|
- '^lxc\.mount\.entry: /dev/nvidia0'
|
|
- '^lxc\.mount\.entry: /dev/nvidiactl'
|
|
- '^lxc\.mount\.entry: /dev/nvidia-uvm '
|
|
- '^lxc\.mount\.entry: /dev/nvidia-uvm-tools'
|
|
when: container_nvidia_gpu_mount
|
|
|
|
- name: Add GPU device for passthrough
|
|
blockinfile:
|
|
path: /etc/pve/lxc/{{ container_vmid }}.conf
|
|
block: |
|
|
lxc.cgroup2.devices.allow: c {{ gpu_device_id }}:* rwm
|
|
lxc.cgroup2.devices.allow: c {{ uvm_device_id }}:* rwm
|
|
lxc.mount.entry: /dev/nvidia0 dev/nvidia0 none bind,optional,create=file
|
|
lxc.mount.entry: /dev/nvidiactl dev/nvidiactl none bind,optional,create=file
|
|
lxc.mount.entry: /dev/nvidia-uvm dev/nvidia-uvm none bind,optional,create=file
|
|
lxc.mount.entry: /dev/nvidia-uvm-tools dev/nvidia-uvm-tools none bind,optional,create=file
|
|
when: container_nvidia_gpu_mount
|
|
|
|
|