Skip to content

Commit d0fe3ef

Browse files
committed
Add support for .deb
1 parent 2c761b7 commit d0fe3ef

File tree

3 files changed

+55
-30
lines changed

3 files changed

+55
-30
lines changed

roles/vgpu/tasks/install-deb.yml

+17
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
---
2+
- name: Copy driver to remote host
3+
ansible.builtin.copy:
4+
src: "{{ vgpu_driver_url_components.path }}"
5+
dest: "{{ dir_path }}"
6+
mode: "0660"
7+
vars:
8+
is_file: "{{ 'file' in vgpu_driver_url_components.scheme }}"
9+
when: is_file
10+
11+
- name: Install using apt
12+
ansible.builtin.apt:
13+
deb: "{{ dir_path if is_file else vgpu_driver_url }}"
14+
state: present
15+
register: install_result
16+
vars:
17+
is_file: "{{ 'file' in vgpu_driver_url_components.scheme }}"

roles/vgpu/tasks/install-zip.yml

+32
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
---
2+
- name: Extract driver
3+
ansible.builtin.unarchive:
4+
src: "{{ vgpu_driver_url_components.path if is_file else vgpu_driver_url }}"
5+
dest: "{{ dir_path }}"
6+
owner: root
7+
group: root
8+
creates: "{{ dir_path }}/Host_Drivers"
9+
remote_src: "{{ omit if is_file else true }}"
10+
vars:
11+
is_file: "{{ 'file' in vgpu_driver_url_components.scheme }}"
12+
13+
- name: Find .run script
14+
ansible.builtin.find:
15+
paths: "{{ dir_path }}/Host_Drivers"
16+
patterns: "*.run"
17+
register: find_result
18+
19+
- name: Set execute bit
20+
ansible.builtin.file:
21+
path: "{{ install_script }}"
22+
mode: u+x
23+
24+
- name: Run the install script
25+
# NOTE: This compiles for currently running kernel, can force with --kernel-name
26+
ansible.builtin.shell: |-
27+
{{ install_script }} -q {% if vgpu_driver_dkms %}--dkms{% endif %} --tmpdir {{ tmp_path }} --ui none --disable-nouveau --no-nouveau-check && touch {{ install_script }}.complete
28+
args:
29+
creates: "{{ omit if vgpu_driver_force_install else install_script ~ '.complete' }}"
30+
environment:
31+
TMPDIR: "{{ tmp_path }}"
32+
register: install_result

roles/vgpu/tasks/install.yml

+6-30
Original file line numberDiff line numberDiff line change
@@ -31,37 +31,13 @@
3131
group: root
3232
mode: "770"
3333

34-
- name: Extract driver
35-
ansible.builtin.unarchive:
36-
src: "{{ vgpu_driver_url_components.path if is_file else vgpu_driver_url }}"
37-
dest: "{{ dir_path }}"
38-
owner: root
39-
group: root
40-
creates: "{{ dir_path }}/Host_Drivers"
41-
remote_src: "{{ omit if is_file else true }}"
42-
vars:
43-
is_file: "{{ 'file' in vgpu_driver_url_components.scheme }}"
44-
45-
- name: Find .run script
46-
ansible.builtin.find:
47-
paths: "{{ dir_path }}/Host_Drivers"
48-
patterns: "*.run"
49-
register: find_result
50-
51-
- name: Set execute bit
52-
ansible.builtin.file:
53-
path: "{{ install_script }}"
54-
mode: u+x
34+
- name: Intall a zip
35+
ansible.builtin.include_tasks: install-zip.yml
36+
when: vgpu_driver_url[-3:] == "zip"
5537

56-
- name: Run the install script
57-
# NOTE: This compiles for currently running kernel, can force with --kernel-name
58-
ansible.builtin.shell: |-
59-
{{ install_script }} -q {% if vgpu_driver_dkms %}--dkms{% endif %} --tmpdir {{ tmp_path }} --ui none --disable-nouveau --no-nouveau-check && touch {{ install_script }}.complete
60-
args:
61-
creates: "{{ omit if vgpu_driver_force_install else install_script ~ '.complete' }}"
62-
environment:
63-
TMPDIR: "{{ tmp_path }}"
64-
register: install_result
38+
- name: Intall a .deb
39+
ansible.builtin.include_tasks: install-deb.yml
40+
when: vgpu_driver_url[-3:] == "deb"
6541

6642
- name: Reboot after driver install # noqa: no-handler
6743
ansible.builtin.reboot:

0 commit comments

Comments
 (0)