feat(core): Adjust T-Rex for external topologies
[csit.git] / fdio.infra.ansible / roles / trex / tasks / deploy_block.yaml
index 5a7890b..9593305 100644 (file)
@@ -1,55 +1,63 @@
 ---
-# file: roles/trex/tasks/deploy_block.yaml
+# file: tasks/deploy_block.yaml
 
 - name: Get Release {{ item }}
-  get_url:
+  ansible.builtin.get_url:
     url: "{{ trex_url }}/v{{ item }}.tar.gz"
     dest: "{{ trex_target_dir }}/trex-core-{{ item }}.tar.gz"
-    validate_certs: False
+    validate_certs: false
     mode: 0644
   register: trex_downloaded
 
 - name: Create Directory {{ item }}
-  file:
+  ansible.builtin.file:
     path: "{{ trex_target_dir }}/trex-core-{{ item }}"
     state: "directory"
 
 - name: Extract Release {{ item }}
-  unarchive:
+  ansible.builtin.unarchive:
     remote_src: true
     src: "{{ trex_target_dir }}/trex-core-{{ item }}.tar.gz"
     dest: "{{ trex_target_dir }}/"
     creates: "{{ trex_target_dir }}/trex-core-{{ item }}/linux_dpdk/"
   register: trex_extracted
 
-- name: Patch Azure
-  patch:
-    src: "files/t-rex.patch"
-    basedir: "{{ trex_target_dir }}/trex-core-{{ item }}"
-    strip: 1
-  when:
-    - azure is defined and item == "2.73"
-
 - name: Compile Release {{ item }} Part I
-  command: "./b configure"
+  ansible.builtin.command: "./b configure"
   args:
-      chdir: "{{ trex_target_dir }}/trex-core-{{ item }}/linux_dpdk/"
+    chdir: "{{ trex_target_dir }}/trex-core-{{ item }}/linux_dpdk/"
   when: trex_extracted.changed
 
 - name: Compile Release {{ item }} Part II
-  command: "./b build"
+  ansible.builtin.command: "./b build"
   args:
-      chdir: "{{ trex_target_dir }}/trex-core-{{ item }}/linux_dpdk/"
+    chdir: "{{ trex_target_dir }}/trex-core-{{ item }}/linux_dpdk/"
+  async: 3000
+  poll: 0
+  register: trex_built
   when: trex_extracted.changed
 
-- name: Compile Release {{ item }} Part III
-  command: "make -j 16"
-  args:
-      chdir: "{{ trex_target_dir }}/trex-core-{{ item }}/scripts/ko/src"
+- name: Check if T-Rex is Compiled
+  async_status:
+    jid: "{{ trex_built.ansible_job_id }}"
+  register: trex_built
+  until: trex_built.finished
+  delay: 10
+  retries: 300
   when: trex_extracted.changed
 
-- name: Compile Release {{ item }} Part IV
-  command: "make install"
-  args:
-      chdir: "{{ trex_target_dir }}/trex-core-{{ item }}/scripts/ko/src"
-  when: trex_extracted.changed
\ No newline at end of file
+#- name: Compile Release {{ item }} Part III
+#  ansible.builtin.command: "make -j 16"
+#  args:
+#    chdir: "{{ trex_target_dir }}/trex-core-{{ item }}/scripts/ko/src"
+#  when: trex_extracted.changed
+
+#- name: Compile Release {{ item }} Part IV
+#  ansible.builtin.command: "make install"
+#  args:
+#    chdir: "{{ trex_target_dir }}/trex-core-{{ item }}/scripts/ko/src"
+#  when: trex_extracted.changed
+
+- name: Link libc.a to liblibc.a
+  ansible.builtin.command: "ln -s -f /usr/lib/x86_64-linux-gnu/libc.a /usr/lib/x86_64-linux-gnu/liblibc.a"
+  when: trex_extracted.changed