diff options
author | Peter Mikus <pmikus@cisco.com> | 2019-09-10 08:09:43 +0000 |
---|---|---|
committer | Peter Mikus <pmikus@cisco.com> | 2019-09-11 10:54:32 +0000 |
commit | 891f932d2c0928038c7cb77f96ecad6e12c0e81f (patch) | |
tree | 706a3867e582b0a1f0b1436c94a6da4e1eb7f315 /resources/tools/testbed-setup/ansible/roles/tg | |
parent | 27cff25483728d50e0215b895c680fb88f6ffe99 (diff) |
Ansible: Trex installation
Signed-off-by: Peter Mikus <pmikus@cisco.com>
Change-Id: I5ab8fe05074a842301a511bbd3ab5e67f8d1a9f0
Diffstat (limited to 'resources/tools/testbed-setup/ansible/roles/tg')
4 files changed, 56 insertions, 2 deletions
diff --git a/resources/tools/testbed-setup/ansible/roles/tg/tasks/main.yaml b/resources/tools/testbed-setup/ansible/roles/tg/tasks/main.yaml index 24f433f9b9..0b32002545 100644 --- a/resources/tools/testbed-setup/ansible/roles/tg/tasks/main.yaml +++ b/resources/tools/testbed-setup/ansible/roles/tg/tasks/main.yaml @@ -3,7 +3,12 @@ - name: Install distribution - release - machine prerequisites include_tasks: '{{ ansible_distribution|lower }}_{{ ansible_distribution_release }}.yaml' + tags: install-csit-dependencies - name: Install WRK include_tasks: 'wrk.yaml' tags: install-wrk + +- name: Install TRex + include_tasks: 'trex.yaml' + tags: install-trex diff --git a/resources/tools/testbed-setup/ansible/roles/tg/tasks/trex.yaml b/resources/tools/testbed-setup/ansible/roles/tg/tasks/trex.yaml new file mode 100644 index 0000000000..3cfcbea825 --- /dev/null +++ b/resources/tools/testbed-setup/ansible/roles/tg/tasks/trex.yaml @@ -0,0 +1,40 @@ +--- +# file: roles/tg/tasks/trex.yaml + +- name: Download TRex release archive + get_url: + url: '{{ trex.url }}/v{{ trex.version }}.tar.gz' + dest: '{{ trex.target_dir }}/trex-core-{{ trex.version }}.tar.gz' + mode: 0644 + register: 'linux__trex_downloaded' + tags: install-trex + +- name: Ensure TRex directory exists + file: + path: '{{ trex.target_dir }}/trex-core-{{ trex.version }}' + state: 'directory' + register: 'linux__trex_dir_created' + tags: install-trex + +- name: Extract TRex release archive + become: yes + unarchive: + src: '{{ trex.target_dir }}/trex-core-{{ trex.version }}.tar.gz' + dest: '{{ trex.target_dir }}/' + creates: '{{ trex.target_dir }}/trex-core-{{ trex.version }}/linux_dpdk' + remote_src: yes + when: 'linux__trex_dir_created' + register: 'linux__trex_extracted' + tags: install-trex + +- name: Compile TRex release I + become: yes + shell: 'cd {{ trex.target_dir }}/trex-core-{{ trex.version }}/linux_dpdk/; ./b configure; ./b build' + when: 'linux__trex_extracted' + tags: install-trex + +- name: Compile TRex release II + become: yes + shell: 'cd {{ trex.target_dir }}/trex-core-{{ trex.version }}/scripts/ko/src; make; make install' + when: 'linux__trex_extracted' + tags: install-trex diff --git a/resources/tools/testbed-setup/ansible/roles/tg/tasks/ubuntu_bionic.yaml b/resources/tools/testbed-setup/ansible/roles/tg/tasks/ubuntu_bionic.yaml index 95a47b0917..d56c843158 100644 --- a/resources/tools/testbed-setup/ansible/roles/tg/tasks/ubuntu_bionic.yaml +++ b/resources/tools/testbed-setup/ansible/roles/tg/tasks/ubuntu_bionic.yaml @@ -5,6 +5,7 @@ apt: name: - 'unzip' + - 'zlib1g-dev' - 'libssl-dev' state: 'present' install_recommends: False diff --git a/resources/tools/testbed-setup/ansible/roles/tg/tasks/wrk.yaml b/resources/tools/testbed-setup/ansible/roles/tg/tasks/wrk.yaml index 1da45fb4b4..e7d22e1aa1 100644 --- a/resources/tools/testbed-setup/ansible/roles/tg/tasks/wrk.yaml +++ b/resources/tools/testbed-setup/ansible/roles/tg/tasks/wrk.yaml @@ -9,13 +9,21 @@ register: 'linux__wrk_downloaded' tags: install-wrk +- name: Ensure WRK directory exists + file: + path: '{{ wrk.target_dir }}/wrk-{{ wrk.version }}' + state: 'directory' + register: 'linux__wrk_dir_created' + tags: install-wrk + - name: Extract WRK release archive become: yes unarchive: src: '{{ wrk.target_dir }}/{{ wrk.version }}.tar.gz' - dest: '{{ wrk.target_dir }}/wrk-{{ wrk.version }}' + dest: '{{ wrk.target_dir }}/' + creates: '{{ wrk.target_dir }}/wrk-{{ wrk.version }}/src' remote_src: yes - when: 'linux__wrk_downloaded' + when: 'linux__wrk_dir_created' register: 'linux__wrk_extracted' tags: install-wrk |