2 # file: tasks/main.yaml
4 - name: Update Package Cache (APT)
9 - ansible_distribution|lower == 'ubuntu'
13 - name: Install Prerequisites
14 ansible.builtin.package:
15 name: "{{ packages | flatten(levels=1) }}"
20 - name: Check Presence of Intel Ethernet 700 Series
21 ansible.builtin.shell: "lspci -d 8086:1583; lspci -d 8086:1585; lspci -d 8086:1572; lspci -d 8086:158a; lspci -d 8086:158b"
22 register: intel_700_pcis
28 - name: Check Presence of Intel Ethernet 800 Series
29 ansible.builtin.shell: "lspci -d 8086:1592; lspci -d 8086:1891"
30 register: intel_800_pcis
36 - name: Check Presence of Intel DSA
37 ansible.builtin.shell: "lspci -d 8086:0b25"
38 register: intel_dsa_pcis
44 - name: Check Presence of Intel C4XXX
45 ansible.builtin.shell: "lspci -d 8086:18a0"
46 register: intel_qat1_pcis
52 - name: Check Presence of Intel 4XXX
53 ansible.builtin.shell: "lspci -d 8086:4942"
54 register: intel_qat2_pcis
60 - name: Get Intel Ethernet 700 Series driver versions
61 ansible.builtin.set_fact:
62 i40e: "{{ intel_700_compatibility_matrix[intel_700_matrix]['i40e'] }}"
63 iavf: "{{ intel_700_compatibility_matrix[intel_700_matrix]['iavf'] }}"
64 nvm: "{{ intel_700_compatibility_matrix[intel_700_matrix]['nvm'] }}"
66 intel_700_matrix is defined
70 - name: Get Intel Ethernet 800 Series driver versions
71 ansible.builtin.set_fact:
72 ice: "{{ intel_800_compatibility_matrix[intel_800_matrix]['ice'] }}"
73 ddp: "{{ intel_800_compatibility_matrix[intel_800_matrix]['ddp'] }}"
74 iavf: "{{ intel_800_compatibility_matrix[intel_800_matrix]['iavf'] }}"
75 nvm: "{{ intel_800_compatibility_matrix[intel_800_matrix]['nvm'] }}"
77 intel_800_matrix is defined
81 - name: Get Intel DSA driver versions
82 ansible.builtin.set_fact:
83 dsa: "{{ intel_dsa_compatibility_matrix['dsa'] }}"
85 intel_dsa_matrix is defined
89 - name: Get Intel QAT driver versions
90 ansible.builtin.set_fact:
91 qat1: "{{ intel_qat_compatibility_matrix['qat1'] }}"
92 qat2: "{{ intel_qat_compatibility_matrix['qat2'] }}"
94 intel_qat_matrix is defined
98 - name: Driver Intel Ethernet 700 Series
99 import_tasks: i40e.yaml
101 intel_700_pcis.stdout_lines | length > 0 and
102 intel_700_matrix is defined
106 - name: Driver Intel Ethernet 800 Series
107 import_tasks: ice.yaml
109 intel_800_pcis.stdout_lines | length > 0 and
110 intel_800_matrix is defined
114 - name: Driver Intel iAVF
115 import_tasks: iavf.yaml
117 (intel_700_pcis.stdout_lines | length > 0 and
118 intel_700_matrix is defined) or
119 (intel_800_pcis.stdout_lines | length > 0 and
120 intel_800_matrix is defined)
124 - name: Driver Intel DSA
125 import_tasks: dsa.yaml
127 intel_dsa_pcis.stdout_lines | length > 0 and
128 intel_dsa_matrix is defined
132 - name: Driver Intel QAT 1.x
133 import_tasks: qat1.yaml
135 intel_qat1_pcis.stdout_lines | length > 0 and
136 intel_qat_matrix is defined
140 - name: Driver Intel QAT 2.x
141 import_tasks: qat2.yaml
143 intel_qat2_pcis.stdout_lines | length > 0 and
144 intel_qat_matrix is defined