aboutsummaryrefslogtreecommitdiffstats
path: root/resources/tools/testbed-setup/ansible/roles/trex
diff options
context:
space:
mode:
Diffstat (limited to 'resources/tools/testbed-setup/ansible/roles/trex')
-rw-r--r--resources/tools/testbed-setup/ansible/roles/trex/defaults/main.yaml45
-rw-r--r--resources/tools/testbed-setup/ansible/roles/trex/tasks/deploy_block.yaml14
-rw-r--r--resources/tools/testbed-setup/ansible/roles/trex/tasks/main.yaml18
3 files changed, 45 insertions, 32 deletions
diff --git a/resources/tools/testbed-setup/ansible/roles/trex/defaults/main.yaml b/resources/tools/testbed-setup/ansible/roles/trex/defaults/main.yaml
index c3caf52d76..19bb15e9d3 100644
--- a/resources/tools/testbed-setup/ansible/roles/trex/defaults/main.yaml
+++ b/resources/tools/testbed-setup/ansible/roles/trex/defaults/main.yaml
@@ -1,23 +1,35 @@
---
# file: roles/trex/defaults/main.yaml
-packages: "{{ packages_base + packages_by_distro[ansible_distribution | lower] + packages_by_arch[ansible_machine] }}"
+packages: "{{ packages_base + packages_by_distro[ansible_distribution|lower][ansible_distribution_release] + packages_by_arch[ansible_machine] }}"
packages_base:
- []
packages_by_distro:
ubuntu:
- - "build-essential"
- - "libmnl-dev"
- - "libnuma-dev"
- - "libpcap-dev"
- - "librdmacm-dev"
- - "librdmacm1"
- - "libssl-dev"
- - "pciutils"
- - "python3-pip"
- - "zlib1g-dev"
+ bionic:
+ - "build-essential"
+ - "libmnl-dev"
+ - "libnuma-dev"
+ - "libpcap-dev"
+ - "librdmacm-dev"
+ - "librdmacm1"
+ - "libssl-dev"
+ - "pciutils"
+ - "python3-pip"
+ - "zlib1g-dev"
+ focal:
+ - "build-essential"
+ - "libmnl-dev"
+ - "libnuma-dev"
+ - "libpcap-dev"
+ - "librdmacm-dev"
+ - "librdmacm1"
+ - "libssl-dev"
+ - "pciutils"
+ - "python3-pip"
+ - "zlib1g-dev"
packages_by_arch:
aarch64:
@@ -28,12 +40,5 @@ packages_by_arch:
trex_target_dir: "/opt"
trex_url: "https://github.com/cisco-system-traffic-generator/trex-core/archive/"
trex_version:
- # rls1908
- - "2.54"
- # rls2001
- # rls2005
- - "2.73"
- # rls2009
- - "2.82"
- # rls2101
- - "2.86"
+ # master // ubuntu 20.04
+ - "2.88" \ No newline at end of file
diff --git a/resources/tools/testbed-setup/ansible/roles/trex/tasks/deploy_block.yaml b/resources/tools/testbed-setup/ansible/roles/trex/tasks/deploy_block.yaml
index 1513a0a617..5a7890b071 100644
--- a/resources/tools/testbed-setup/ansible/roles/trex/tasks/deploy_block.yaml
+++ b/resources/tools/testbed-setup/ansible/roles/trex/tasks/deploy_block.yaml
@@ -1,7 +1,7 @@
---
# file: roles/trex/tasks/deploy_block.yaml
-- name: "Get Release {{ item }}"
+- name: Get Release {{ item }}
get_url:
url: "{{ trex_url }}/v{{ item }}.tar.gz"
dest: "{{ trex_target_dir }}/trex-core-{{ item }}.tar.gz"
@@ -9,12 +9,12 @@
mode: 0644
register: trex_downloaded
-- name: "Create Directory {{ item }}"
+- name: Create Directory {{ item }}
file:
path: "{{ trex_target_dir }}/trex-core-{{ item }}"
state: "directory"
-- name: "Extract Release {{ item }}"
+- name: Extract Release {{ item }}
unarchive:
remote_src: true
src: "{{ trex_target_dir }}/trex-core-{{ item }}.tar.gz"
@@ -30,25 +30,25 @@
when:
- azure is defined and item == "2.73"
-- name: "Compile Release {{ item }} Part I"
+- name: Compile Release {{ item }} Part I
command: "./b configure"
args:
chdir: "{{ trex_target_dir }}/trex-core-{{ item }}/linux_dpdk/"
when: trex_extracted.changed
-- name: "Compile Release {{ item }} Part II"
+- name: Compile Release {{ item }} Part II
command: "./b build"
args:
chdir: "{{ trex_target_dir }}/trex-core-{{ item }}/linux_dpdk/"
when: trex_extracted.changed
-- name: "Compile Release {{ item }} Part III"
+- name: Compile Release {{ item }} Part III
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"
+- name: Compile Release {{ item }} Part IV
command: "make install"
args:
chdir: "{{ trex_target_dir }}/trex-core-{{ item }}/scripts/ko/src"
diff --git a/resources/tools/testbed-setup/ansible/roles/trex/tasks/main.yaml b/resources/tools/testbed-setup/ansible/roles/trex/tasks/main.yaml
index 019a27f79d..d43baf909b 100644
--- a/resources/tools/testbed-setup/ansible/roles/trex/tasks/main.yaml
+++ b/resources/tools/testbed-setup/ansible/roles/trex/tasks/main.yaml
@@ -1,16 +1,24 @@
---
# file: roles/trex/tasks/main.yaml
-- name: Install Distribution - Release - Machine Prerequisites
+- name: Inst - Update Package Cache (APT)
+ apt:
+ update_cache: yes
+ cache_valid_time: 3600
+ when:
+ - ansible_distribution|lower == 'ubuntu'
+ tags:
+ - trex-inst-prerequisites
+
+- name: Inst - Prerequisites
package:
name: "{{ packages | flatten(levels=1) }}"
state: latest
- update_cache: true
tags:
- - install-dependencies
+ - trex-inst-prerequisites
-- name: Deploy Multiple T-Rex Versions
+- name: Inst - Multiple T-Rex Versions
include_tasks: deploy_block.yaml
loop: "{{ trex_version }}"
tags:
- - install-trex \ No newline at end of file
+ - trex-inst \ No newline at end of file