aboutsummaryrefslogtreecommitdiffstats
path: root/fdio.infra.ansible/roles/dpdk/tasks/deploy_block.yaml
blob: b3de2f8136259d0c250e2670e32cba2212bebb16 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
---
# file: tasks/deploy_block.yaml

- name: Download Release {{ item }}
  ansible.builtin.get_url:
    url: "{{ dpdk_url }}/dpdk-{{ item }}.tar.xz"
    dest: "{{ dpdk_target_dir }}/dpdk-{{ item }}.tar.xz"
    mode: 0644
  register: dpdk_downloaded

- name: Extract Release {{ item }}
  ansible.builtin.unarchive:
    remote_src: true
    src: "{{ dpdk_target_dir }}/dpdk-{{ item }}.tar.xz"
    dest: "{{ dpdk_target_dir }}/"
    creates: "{{ dpdk_target_dir }}/dpdk-{{ item }}"
  when: dpdk_downloaded
  register: dpdk_extracted

- name: Compile Release I
  ansible.builtin.command: "meson -Dexamples=l3fwd build"
  args:
    chdir: "{{ dpdk_target_dir }}/dpdk-{{ item }}"
  environment:
    CFLAGS: "-DRTE_LIBRTE_I40E_16BYTE_RX_DESC=y"
  register: dpdk_compiled

- name: Compile Release II
  ansible.builtin.command: "ninja -C build"
  args:
    chdir: "{{ dpdk_target_dir }}/dpdk-{{ item }}"
  environment:
    CFLAGS: "-DRTE_LIBRTE_I40E_16BYTE_RX_DESC=y"
  async: 3000
  poll: 0
  register: dpdk_built

- name: Check if DPDK is Built
  ansible.builtin.async_status:
    jid: "{{ dpdk_built.ansible_job_id }}"
  until: dpdk_built.finished
  delay: 10
  retries: 300