Ansible: i40e driver install 16/33216/3
authorpmikus <pmikus@cisco.com>
Wed, 21 Jul 2021 06:11:02 +0000 (06:11 +0000)
committerPeter Mikus <pmikus@cisco.com>
Wed, 21 Jul 2021 12:49:12 +0000 (12:49 +0000)
Signed-off-by: pmikus <pmikus@cisco.com>
Change-Id: Ib0e1b37e3d920f8d9a9e88896b6898fe13e4acba

fdio.infra.ansible/roles/intel/defaults/main.yaml
fdio.infra.ansible/roles/intel/tasks/i40e.yaml [new file with mode: 0644]
fdio.infra.ansible/roles/intel/tasks/ice.yaml [new file with mode: 0644]
fdio.infra.ansible/roles/intel/tasks/main.yaml

index df86d65..7789704 100644 (file)
@@ -17,6 +17,11 @@ packages_by_arch:
     - []
 
 intel_download_url: "https://downloadmirror.intel.com"
     - []
 
 intel_download_url: "https://downloadmirror.intel.com"
+
+intel_i40e_version: "2.15.9"
+intel_i40e_driver_url: "{{ intel_download_url }}/24411/eng/i40e-{{ intel_i40e_version }}.tar.gz"
+intel_i40e_driver_dir: "/opt"
+
 intel_ice_version: "1.4.11"
 intel_ice_driver_url: "{{ intel_download_url }}/29746/eng/ice-{{ intel_ice_version }}.tar.gz"
 intel_ice_driver_dir: "/opt"
 intel_ice_version: "1.4.11"
 intel_ice_driver_url: "{{ intel_download_url }}/29746/eng/ice-{{ intel_ice_version }}.tar.gz"
 intel_ice_driver_dir: "/opt"
diff --git a/fdio.infra.ansible/roles/intel/tasks/i40e.yaml b/fdio.infra.ansible/roles/intel/tasks/i40e.yaml
new file mode 100644 (file)
index 0000000..cf42f32
--- /dev/null
@@ -0,0 +1,30 @@
+---
+# file: roles/intel/tasks/i40e.yaml
+
+- name: Inst - Get Network Adapter Driver
+  get_url:
+    url: "{{ intel_i40e_driver_url }}"
+    dest: "{{ intel_i40e_driver_dir }}/i40e-{{ intel_i40e_version }}.tar.gz"
+    mode: 0644
+  tags:
+    - intel-inst
+
+- name: Inst - Extract Network Adapter Driver
+  unarchive:
+    remote_src: true
+    src: "{{ intel_i40e_driver_dir }}/i40e-{{ intel_i40e_version }}.tar.gz"
+    dest: "{{ intel_i40e_driver_dir }}/"
+    creates: "{{ intel_i40e_driver_dir }}/i40e-{{ intel_i40e_version }}"
+  register: intel_driver_extracted
+  tags:
+    - intel-inst
+
+- name: Inst - Network Adapter Driver
+  command: "make install; modprobe -r i40e; modprobe i40e"
+  args:
+    chdir: "{{ intel_i40e_driver_dir }}/i40e-{{ intel_i40e_version }}/src"
+  failed_when: no
+  when:
+    - intel_driver_extracted
+  tags:
+    - intel-inst
diff --git a/fdio.infra.ansible/roles/intel/tasks/ice.yaml b/fdio.infra.ansible/roles/intel/tasks/ice.yaml
new file mode 100644 (file)
index 0000000..92a0eb4
--- /dev/null
@@ -0,0 +1,84 @@
+---
+# file: roles/intel/tasks/ice.yaml
+
+- name: Inst - Get Network Adapter Driver
+  get_url:
+    url: "{{ intel_ice_driver_url }}"
+    dest: "{{ intel_ice_driver_dir }}/ice-{{ intel_ice_version }}.tar.gz"
+    mode: 0644
+  tags:
+    - intel-inst
+
+- name: Inst - Extract Network Adapter Driver
+  unarchive:
+    remote_src: true
+    src: "{{ intel_ice_driver_dir }}/ice-{{ intel_ice_version }}.tar.gz"
+    dest: "{{ intel_ice_driver_dir }}/"
+    creates: "{{ intel_ice_driver_dir }}/ice-{{ intel_ice_version }}"
+  register: intel_driver_extracted
+  tags:
+    - intel-inst
+
+- name: Inst - Network Adapter Driver
+  command: "make install; modprobe -r ice; modprobe ice"
+  args:
+    chdir: "{{ intel_ice_driver_dir }}/ice-{{ intel_ice_version }}/src"
+  failed_when: no
+  when:
+    - intel_driver_extracted
+  tags:
+    - intel-inst
+
+- name: Inst - Get Dynamic Device Personalization (DDP) Package
+  get_url:
+    url: "{{ intel_ddp_profile_url }}"
+    dest: "{{ intel_ddp_profile_dir }}/800-Series-Comms-Binary-Package-{{ intel_ddp_version }}.zip"
+    mode: 0644
+  tags:
+    - intel-inst
+
+- name: Inst - Extract Dynamic Device Personalization (DDP) Package
+  unarchive:
+    remote_src: true
+    src: "{{ intel_ddp_profile_dir }}/800-Series-Comms-Binary-Package-{{ intel_ddp_version }}.zip"
+    dest: "{{ intel_ddp_profile_dir }}/"
+    creates: "{{ intel_ddp_profile_dir }}/ice_comms-{{ intel_ddp_version }}.zip"
+  register: intel_driver_extracted
+  tags:
+    - intel-inst
+
+- name: Inst - Extract Dynamic Device Personalization (DDP) Package
+  unarchive:
+    remote_src: true
+    src: "{{ intel_ddp_profile_dir }}/ice_comms-{{ intel_ddp_version }}.zip"
+    dest: "{{ intel_ddp_profile_dir }}/"
+  register: intel_driver_extracted
+  tags:
+    - intel-inst
+
+- name: Inst - Copy Dynamic Device Personalization (DDP) Package
+  copy:
+    src: "{{ intel_ddp_profile_dir }}/ice_comms-{{ intel_ddp_version }}.pkg"
+    dest: "/lib/firmware/updates/intel/ice/ddp/ice-{{ intel_ddp_version }}.pkg"
+    remote_src: yes
+    follow: yes
+  tags:
+    - intel-inst
+
+- name: Inst - Link Dynamic Device Personalization (DDP) Package
+  file:
+    src: "ice-{{ intel_ddp_version }}.pkg"
+    dest: "/lib/firmware/updates/intel/ice/ddp/ice.pkg"
+    state: link
+  tags:
+    - intel-inst
+
+- name: Inst - Extract Dynamic Device Personalization (DDP) Package (cleanup)
+  file:
+    path: "{{ item }}"
+    state: absent
+  with_items:
+    - "{{ intel_ddp_profile_dir }}/E810 DDP for Comms TechGuide_Rev2.3.pdf"
+    - "{{ intel_ddp_profile_dir }}/Intel_800_series_market_segment_DDP_license.txt"
+  tags:
+    - intel-inst
index 63ab5e0..0d6134d 100644 (file)
@@ -1,13 +1,5 @@
 ---
 ---
-# file: roles/intel/tasks/main.yaml
-
-- name: Inst - Check Presence of Intel E810 Hardware
-  shell: "lspci -d 8086:1592"
-  register: intel_e810_pcis
-  failed_when: no
-  changed_when: no
-  tags:
-    - intel-inst
+# file: roles/performance_tuning/tasks/main.yaml
 
 - name: Inst - Update Package Cache (APT)
   apt:
 
 - name: Inst - Update Package Cache (APT)
   apt:
     cache_valid_time: 3600
   when:
     - ansible_distribution|lower == 'ubuntu'
     cache_valid_time: 3600
   when:
     - ansible_distribution|lower == 'ubuntu'
-    - intel_e810_pcis.stdout_lines | length > 0
   tags:
   tags:
-    - intel-inst-prerequisites
+    - intel-inst-drivers
 
 
-- name: Inst - Prerequisites
+- name: Inst - Machine Prerequisites
   package:
     name: "{{ packages | flatten(levels=1) }}"
     state: latest
   package:
     name: "{{ packages | flatten(levels=1) }}"
     state: latest
-  when:
-    - intel_e810_pcis.stdout_lines | length > 0
   tags:
   tags:
-    - intel-inst-prerequisites
+    - intel-inst-drivers
 
 
-- name: Inst - Get Network Adapter Driver
-  get_url:
-    url: "{{ intel_ice_driver_url }}"
-    dest: "{{ intel_ice_driver_dir }}/ice-{{ intel_ice_version }}.tar.gz"
-    mode: 0644
-  when:
-    - intel_e810_pcis.stdout_lines | length > 0
-  tags:
-    - intel-inst
-
-- name: Inst - Extract Network Adapter Driver
-  unarchive:
-    remote_src: true
-    src: "{{ intel_ice_driver_dir }}/ice-{{ intel_ice_version }}.tar.gz"
-    dest: "{{ intel_ice_driver_dir }}/"
-    creates: "{{ intel_ice_driver_dir }}/ice-{{ intel_ice_version }}"
-  register: intel_driver_extracted
-  when:
-    - intel_e810_pcis.stdout_lines | length > 0
-  tags:
-    - intel-inst
-
-- name: Inst - Network Adapter Driver
-  command: "make install; modprobe -r ice; modprobe ice"
-  args:
-    chdir: "{{ intel_ice_driver_dir }}/ice-{{ intel_ice_version }}/src"
+- name: Inst - Check Presence of Intel Ethernet 810 Series
+  shell: "lspci -d 8086:1592"
+  register: intel_e810_pcis
   failed_when: no
   failed_when: no
-  when:
-    - intel_e810_pcis.stdout_lines | length > 0
-    - intel_driver_extracted
-  tags:
-    - intel-inst
-
-- name: Inst - Get Dynamic Device Personalization (DDP) Package
-  get_url:
-    url: "{{ intel_ddp_profile_url }}"
-    dest: "{{ intel_ddp_profile_dir }}/800-Series-Comms-Binary-Package-{{ intel_ddp_version }}.zip"
-    mode: 0644
-  when:
-    - intel_e810_pcis.stdout_lines | length > 0
-  tags:
-    - intel-inst
-
-- name: Inst - Extract Dynamic Device Personalization (DDP) Package
-  unarchive:
-    remote_src: true
-    src: "{{ intel_ddp_profile_dir }}/800-Series-Comms-Binary-Package-{{ intel_ddp_version }}.zip"
-    dest: "{{ intel_ddp_profile_dir }}/"
-    creates: "{{ intel_ddp_profile_dir }}/ice_comms-{{ intel_ddp_version }}.zip"
-  register: intel_driver_extracted
-  when:
-    - intel_e810_pcis.stdout_lines | length > 0
-  tags:
-    - intel-inst
-
-- name: Inst - Extract Dynamic Device Personalization (DDP) Package
-  unarchive:
-    remote_src: true
-    src: "{{ intel_ddp_profile_dir }}/ice_comms-{{ intel_ddp_version }}.zip"
-    dest: "{{ intel_ddp_profile_dir }}/"
-  register: intel_driver_extracted
-  when:
-    - intel_e810_pcis.stdout_lines | length > 0
+  changed_when: no
   tags:
   tags:
-    - intel-inst
+    - intel-inst-drivers
 
 
-- name: Inst - Copy Dynamic Device Personalization (DDP) Package
-  copy:
-    src: "{{ intel_ddp_profile_dir }}/ice_comms-{{ intel_ddp_version }}.pkg"
-    dest: "/lib/firmware/updates/intel/ice/ddp/ice-{{ intel_ddp_version }}.pkg"
-    remote_src: yes
-    follow: yes
-  when:
-    - intel_e810_pcis.stdout_lines | length > 0
+- name: Inst - Check Presence of Intel Ethernet 700 Series
+  shell: "lspci -d 8086:1585; lspci -d 8086:1572"
+  register: intel_700_pcis
+  failed_when: no
+  changed_when: no
   tags:
   tags:
-    - intel-inst
+    - intel-inst-drivers
 
 
-- name: Inst - Link Dynamic Device Personalization (DDP) Package
-  file:
-    src: "ice-{{ intel_ddp_version }}.pkg"
-    dest: "/lib/firmware/updates/intel/ice/ddp/ice.pkg"
-    state: link
+- name: Inst - Driver Intel Ethernet 810 Series
+  import_tasks: ice.yaml
   when:
     - intel_e810_pcis.stdout_lines | length > 0
   tags:
   when:
     - intel_e810_pcis.stdout_lines | length > 0
   tags:
-    - intel-inst
+    - intel-inst-drivers
 
 
-- name: Inst - Extract Dynamic Device Personalization (DDP) Package (cleanup)
-  file:
-    path: "{{ item }}"
-    state: absent
-  with_items:
-    - "{{ intel_ddp_profile_dir }}/E810 DDP for Comms TechGuide_Rev2.3.pdf"
-    - "{{ intel_ddp_profile_dir }}/Intel_800_series_market_segment_DDP_license.txt"
-  when:
-    - intel_e810_pcis.stdout_lines | length > 0
-  tags:
-    - intel-inst
+#- name: Inst - Driver Intel Ethernet 700 Series
+#  import_tasks: i40e.yaml
+#  when:
+#    - intel_700_pcis.stdout_lines | length > 0
+#  tags:
+#    - intel-inst-drivers