aboutsummaryrefslogtreecommitdiffstats
path: root/ansible/roles/install_trex
diff options
context:
space:
mode:
Diffstat (limited to 'ansible/roles/install_trex')
-rw-r--r--ansible/roles/install_trex/defaults/main.yml17
-rw-r--r--ansible/roles/install_trex/tasks/main.yml36
2 files changed, 53 insertions, 0 deletions
diff --git a/ansible/roles/install_trex/defaults/main.yml b/ansible/roles/install_trex/defaults/main.yml
new file mode 100644
index 000000000..1b2876301
--- /dev/null
+++ b/ansible/roles/install_trex/defaults/main.yml
@@ -0,0 +1,17 @@
+# Copyright (c) 2017 Intel Corporation.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+---
+#TREX_DOWNLOAD: "https://trex-tgn.cisco.com/trex/release/v2.05.tar.gz"
+TREX_VERSION: v2.20
+TREX_DOWNLOAD: "{{ nsb_mirror_url|ternary(nsb_mirror_url, 'https://trex-tgn.cisco.com/trex/release' }}/{{ TREX_VERSION }}.tar.gz"
diff --git a/ansible/roles/install_trex/tasks/main.yml b/ansible/roles/install_trex/tasks/main.yml
new file mode 100644
index 000000000..4818a8087
--- /dev/null
+++ b/ansible/roles/install_trex/tasks/main.yml
@@ -0,0 +1,36 @@
+# Copyright (c) 2017 Intel Corporation.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+---
+- set_fact:
+ trex_file: "{{ trex_url|basename|regex_replace('[.]tar.gz', '') }}"
+
+
+- file: path="{{ INSTALL_BIN_PATH }}/trex" state=absent
+- file: path="{{ INSTALL_BIN_PATH }}/trex" state=directory
+
+
+- command: mv "{{ clone_dest }}/{{ trex_unarchive }}" "{{ INSTALL_BIN_PATH }}/trex/scripts"
+
+- file: path="{{ INSTALL_BIN_PATH }}/trex/scripts/automation/trex_control_plane/stl/__init__.py" state=touch
+
+# Don't use trex/scripts/dpdk_nic_bind.py use DPDK usertools/dpdk-devbind.py
+#- command: cp "{{ INSTALL_BIN_PATH }}/trex/scripts/dpdk_nic_bind.py" "{{ INSTALL_BIN_PATH }}"
+
+- name: add scripts to PYTHONPATH
+ lineinfile:
+ dest: /etc/environment
+ regexp: "^PYTHONPATH="
+ line: "PYTHONPATH={{ INSTALL_BIN_PATH }}/trex/scripts/automation/trex_control_plane:{{ INSTALL_BIN_PATH }}/trex/scripts/automation/trex_control_plane/stl"
+ state: present
+ create: yes