Ansible: Mellanox install
[csit.git] / resources / tools / testbed-setup / ansible / roles / tg / tasks / wrk.yaml
1 ---
2 # file: roles/tg/tasks/wrk.yaml
3
4 - name: WRK Install - Get Release Archive
5   get_url:
6     url: 'https://github.com/wg/wrk/archive/{{ wrk.version }}.tar.gz'
7     dest: '{{ wrk.target_dir }}/{{ wrk.version }}.tar.gz'
8     mode: 0644
9   register: wrk_downloaded
10   tags: install-wrk
11
12 - name: WRK Install - Ensure Directory Exists
13   file:
14     path: '{{ wrk.target_dir }}/wrk-{{ wrk.version }}'
15     state: 'directory'
16   register: wrk_dir_created
17   tags: install-wrk
18
19 - name: WRK Install - Extract Release Archive
20   unarchive:
21     remote_src: true
22     src: '{{ wrk.target_dir }}/{{ wrk.version }}.tar.gz'
23     dest: '{{ wrk.target_dir }}/'
24     creates: '{{ wrk.target_dir }}/wrk-{{ wrk.version }}/src'
25   when: wrk_dir_created
26   register: wrk_extracted
27   tags: install-wrk
28
29 - name: WRK Install - Compile Release
30   command: 'make'
31   args:
32     chdir: '{{ wrk.target_dir }}/wrk-{{ wrk.version }}'
33   when: wrk_extracted
34   register: wrk_compiled
35   tags: install-wrk
36
37 - name: WRK Install - Move Binary
38   command: 'mv {{ wrk.target_dir }}/wrk-{{ wrk.version }}/wrk /usr/local/bin/'
39   when: wrk_compiled
40   tags: install-wrk