X-Git-Url: https://gerrit.fd.io/r/gitweb?p=csit.git;a=blobdiff_plain;f=resources%2Ftools%2Ftestbed-setup%2Fansible%2Froles%2Ftrex%2Ftasks%2Fmain.yaml;fp=resources%2Ftools%2Ftestbed-setup%2Fansible%2Froles%2Ftrex%2Ftasks%2Fmain.yaml;h=d8f35cbc1729de11b5bfdf5a22d3462379ef76cd;hp=0000000000000000000000000000000000000000;hb=048a9ca3484a06e54f48dc80e7ab24dbfebe406f;hpb=d7aec8ee052468f55e2e9bd27de1dedd918c8a37 diff --git a/resources/tools/testbed-setup/ansible/roles/trex/tasks/main.yaml b/resources/tools/testbed-setup/ansible/roles/trex/tasks/main.yaml new file mode 100644 index 0000000000..d8f35cbc17 --- /dev/null +++ b/resources/tools/testbed-setup/ansible/roles/trex/tasks/main.yaml @@ -0,0 +1,87 @@ +--- +# file: roles/trex/tasks/main.yaml + +- name: T-Rex - Distribution - Release - Machine Prerequisites + package: + name: "{{ packages | flatten(levels=1) }}" + state: latest + update_cache: true + tags: + - install-dependencies + +- name: T-Rex - Get Release Archive + get_url: + url: "{{ trex_url }}/v{{ item }}.tar.gz" + dest: "{{ trex_target_dir }}/trex-core-{{ item }}.tar.gz" + validate_certs: False + mode: 0644 + loop: "{{ trex_version }}" + register: trex_downloaded + tags: + - install-trex + +- name: T-Rex - Ensure Directory Exists + file: + path: "{{ trex_target_dir }}/trex-core-{{ item }}" + state: "directory" + loop: "{{ trex_version }}" + tags: + - install-trex + +- name: T-Rex - Extract Release Archive + 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/" + loop: "{{ trex_version }}" + register: trex_extracted + tags: + - install-trex + +- name: T-Rex - Azure patch I + patch: + src: "files/t-rex.patch" + basedir: "{{ trex_target_dir }}/trex-core-{{ item }}" + strip: 1 + loop: "{{ trex_version }}" + when: + - azure is defined + tags: + - install-trex + +- name: T-Rex - Compile Release I + command: "./b configure" + args: + chdir: "{{ trex_target_dir }}/trex-core-{{ item }}/linux_dpdk/" + loop: "{{ trex_version }}" + when: trex_extracted + tags: + - install-trex + +- name: T-Rex - Compile Release II + command: "./b build" + args: + chdir: "{{ trex_target_dir }}/trex-core-{{ item }}/linux_dpdk/" + loop: "{{ trex_version }}" + when: trex_extracted + tags: + - install-trex + +- name: T-Rex - Compile Release III + command: "make" + args: + chdir: "{{ trex_target_dir }}/trex-core-{{ item }}/scripts/ko/src" + loop: "{{ trex_version }}" + when: trex_extracted + tags: + - install-trex + +- name: T-Rex - Compile Release IV + command: "make install" + args: + chdir: "{{ trex_target_dir }}/trex-core-{{ item }}/scripts/ko/src" + loop: "{{ trex_version }}" + when: trex_extracted + tags: + - install-trex