--- # file: roles/tg/tasks/trex.yaml - name: T-Rex Install - Get Release Archive get_url: url: 'https://github.com/cisco-system-traffic-generator/trex-core/archive/v{{ trex.version }}.tar.gz' dest: '{{ trex.target_dir }}/trex-core-{{ trex.version }}.tar.gz' mode: 0644 register: trex_downloaded tags: install-trex - name: T-Rex Install - Ensure Directory Exists file: path: '{{ trex.target_dir }}/trex-core-{{ trex.version }}' state: 'directory' register: trex_dir_created tags: install-trex - name: T-Rex Install - Extract Release Archive unarchive: remote_src: true src: '{{ trex.target_dir }}/trex-core-{{ trex.version }}.tar.gz' dest: '{{ trex.target_dir }}/' creates: '{{ trex.target_dir }}/trex-core-{{ trex.version }}/linux_dpdk/' when: trex_dir_created register: trex_extracted tags: install-trex - name: T-Rex Install - Compile Release I command: './b configure; ./b build' args: chdir: '{{ trex.target_dir }}/trex-core-{{ trex.version }}/linux_dpdk/' when: trex_extracted tags: install-trex - name: T-Rex Install - Compile Release II command: 'make; make install' args: chdir: '{{ trex.target_dir }}/trex-core-{{ trex.version }}/scripts/ko/src' when: trex_extracted tags: install-trex