aboutsummaryrefslogtreecommitdiffstats
path: root/fdio.infra.ansible/roles/trex
diff options
context:
space:
mode:
Diffstat (limited to 'fdio.infra.ansible/roles/trex')
-rw-r--r--fdio.infra.ansible/roles/trex/defaults/main.yaml15
-rw-r--r--fdio.infra.ansible/roles/trex/tasks/deploy_block.yaml32
-rw-r--r--fdio.infra.ansible/roles/trex/tasks/main.yaml4
3 files changed, 28 insertions, 23 deletions
diff --git a/fdio.infra.ansible/roles/trex/defaults/main.yaml b/fdio.infra.ansible/roles/trex/defaults/main.yaml
index 180d635def..c09f5e5f85 100644
--- a/fdio.infra.ansible/roles/trex/defaults/main.yaml
+++ b/fdio.infra.ansible/roles/trex/defaults/main.yaml
@@ -8,19 +8,10 @@ packages_base:
packages_by_distro:
ubuntu:
- focal:
- - "build-essential"
- - "libmnl-dev"
- - "libnuma-dev"
- - "libpcap-dev"
- - "librdmacm-dev"
- - "librdmacm1"
- - "libssl-dev"
- - "pciutils"
- - "python3-pip"
- - "zlib1g-dev"
jammy:
- "build-essential"
+ - "gcc-9"
+ - "g++-9"
- "libmnl-dev"
- "libnuma-dev"
- "libpcap-dev"
@@ -40,6 +31,4 @@ packages_by_arch:
trex_target_dir: "/opt"
trex_url: "https://github.com/cisco-system-traffic-generator/trex-core/archive/"
trex_version:
- # master // ubuntu 20.04
- - "2.88"
- "2.97"
diff --git a/fdio.infra.ansible/roles/trex/tasks/deploy_block.yaml b/fdio.infra.ansible/roles/trex/tasks/deploy_block.yaml
index 9aeb1be023..946206ad55 100644
--- a/fdio.infra.ansible/roles/trex/tasks/deploy_block.yaml
+++ b/fdio.infra.ansible/roles/trex/tasks/deploy_block.yaml
@@ -2,7 +2,7 @@
# file: roles/trex/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
@@ -10,12 +10,12 @@
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 }}/"
@@ -23,33 +23,49 @@
register: trex_extracted
- name: Patch Azure
- patch:
+ ansible.builtin.patch:
src: "files/t-rex.patch"
basedir: "{{ trex_target_dir }}/trex-core-{{ item }}"
strip: 1
when:
- azure is defined and item == "2.73"
+- name: Switch to gcc-9
+ ansible.builtin.command: "update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 9"
+ when: trex_extracted.changed
+
+- name: Switch to g++-9
+ ansible.builtin.command: "update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-9 9"
+ when: trex_extracted.changed
+
- name: Compile Release {{ item }} Part I
- command: "./b configure"
+ ansible.builtin.command: "./b configure"
args:
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/"
when: trex_extracted.changed
+- name: Switch to gcc-11
+ ansible.builtin.command: "update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-11 11"
+ when: trex_extracted.changed
+
+- name: Switch to g++-11
+ ansible.builtin.command: "update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-11 11"
+ when: trex_extracted.changed
+
- name: Compile Release {{ item }} Part III
- command: "make -j 16"
+ 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
- command: "make install"
+ ansible.builtin.command: "make install"
args:
chdir: "{{ trex_target_dir }}/trex-core-{{ item }}/scripts/ko/src"
when: trex_extracted.changed
diff --git a/fdio.infra.ansible/roles/trex/tasks/main.yaml b/fdio.infra.ansible/roles/trex/tasks/main.yaml
index 8f659b697c..0196b0817b 100644
--- a/fdio.infra.ansible/roles/trex/tasks/main.yaml
+++ b/fdio.infra.ansible/roles/trex/tasks/main.yaml
@@ -2,7 +2,7 @@
# file: roles/trex/tasks/main.yaml
- name: Inst - Update Package Cache (APT)
- apt:
+ ansible.builtin.apt:
update_cache: true
cache_valid_time: 3600
when:
@@ -11,7 +11,7 @@
- trex-inst-prerequisites
- name: Inst - Prerequisites
- package:
+ ansible.builtin.package:
name: "{{ packages | flatten(levels=1) }}"
state: latest
tags: