diff options
17 files changed, 78 insertions, 79 deletions
diff --git a/qtip/ansible_library/plugins/action/collect.py b/qtip/ansible_library/plugins/action/collect.py index 8c825317..17439710 100644 --- a/qtip/ansible_library/plugins/action/collect.py +++ b/qtip/ansible_library/plugins/action/collect.py @@ -29,7 +29,7 @@ class ActionModule(ActionBase): dump = self._task.args.get('dump') if dump is not None: - dump_facts(task_vars['inventory_hostname'], [{'name': dump, 'content': string}]) + dump_facts(task_vars['inventory_hostname'], [{'name': dump, 'content': string}], task_vars['qtip_results']) return collect(patterns, string) @@ -50,8 +50,8 @@ def collect(patterns, string): return captured -def dump_facts(hostname, facts): - dump_root = os.path.join('dump', hostname) +def dump_facts(hostname, facts, root='results'): + dump_root = os.path.join(root, hostname) if not os.path.exists(dump_root): os.mkdir(dump_root) return [{'name': fact['name'], 'result': open(os.path.join(dump_root, fact['name']), 'w+').write(fact['content'])} diff --git a/resources/roles/inxi/tasks/main.yml b/resources/roles/inxi/tasks/main.yml index 47eb2e73..66c83f9d 100644 --- a/resources/roles/inxi/tasks/main.yml +++ b/resources/roles/inxi/tasks/main.yml @@ -42,3 +42,10 @@ - '.+\sproduct:\s+(?P<product>.+)\sv' dump: 'inix.log' register: system_info + +- name: create system information report + template: + src: system-info.j2 + dest: "{{ qtip_results }}/{{ inventory_hostname }}/system-info" + delegate_to: localhost + tags: [report] diff --git a/resources/template/system-info.j2 b/resources/roles/inxi/templates/system-info.j2 index 305a2af2..305a2af2 100644 --- a/resources/template/system-info.j2 +++ b/resources/roles/inxi/templates/system-info.j2 diff --git a/resources/roles/nDPI/tasks/main.yml b/resources/roles/nDPI/tasks/main.yml index b3e7259f..c53a22fc 100644 --- a/resources/roles/nDPI/tasks/main.yml +++ b/resources/roles/nDPI/tasks/main.yml @@ -58,3 +58,10 @@ - 'nDPI throughput:\s+?(?P<dpi_pps>\d+.\d+.*) \/ (?P<dpi_bps>\d+.\d+.*)$' dump: 'nDPI.log' register: dpi_metrics + +- name: create dpi report + template: + src: dpi-metrics.j2 + dest: "{{ qtip_results }}/{{ inventory_hostname }}/dpi-metrics" + delegate_to: localhost + tags: [report] diff --git a/resources/roles/nDPI/templates/dpi-metrics.j2 b/resources/roles/nDPI/templates/dpi-metrics.j2 new file mode 100644 index 00000000..4d6e0b69 --- /dev/null +++ b/resources/roles/nDPI/templates/dpi-metrics.j2 @@ -0,0 +1,4 @@ +nDPI throughput +=============== + +{{ ('Result:', "{} / {}".format(dpi_metrics.dpi_pps[0], dpi_metrics.dpi_bps[0]))|justify }} diff --git a/resources/roles/openssl/tasks/main.yml b/resources/roles/openssl/tasks/main.yml index 2dda0e33..42efbeb4 100644 --- a/resources/roles/openssl/tasks/main.yml +++ b/resources/roles/openssl/tasks/main.yml @@ -52,3 +52,10 @@ # ?(?P<aes_128_cbc_256_bytes>\d+\.\w+)\s+ # ?(?P<aes_128_cbc_1024_bytes>\d+\.\w+)\s+ # ?(?P<aes_128_cbc_8192_bytes>\d+\.\w+)$ + +- name: create SSL report + template: + src: ssl-metrics.j2 + dest: "{{ qtip_results }}/{{ inventory_hostname }}/ssl-metrics" + delegate_to: localhost + tags: [report] diff --git a/resources/roles/openssl/templates/ssl-metrics.j2 b/resources/roles/openssl/templates/ssl-metrics.j2 new file mode 100644 index 00000000..8dedf352 --- /dev/null +++ b/resources/roles/openssl/templates/ssl-metrics.j2 @@ -0,0 +1,3 @@ +SSL +=== + diff --git a/resources/roles/qtip-workspace/files/copy/run.yml b/resources/roles/qtip-workspace/files/copy/run.yml index ddac875c..ed87b6a4 100644 --- a/resources/roles/qtip-workspace/files/copy/run.yml +++ b/resources/roles/qtip-workspace/files/copy/run.yml @@ -22,13 +22,6 @@ roles: - development-tools - post_tasks: - - name: create dumping directories - file: - path: "{{ qtip_dump }}/{{ inventory_hostname }}" - state: directory - delegate_to: localhost - tags: [setup] @@ -50,7 +43,7 @@ spec: "{{ qtip_resources }}/QPI/compute.yaml" register: qpi_result delegate_to: localhost - tags: [calculate] + tags: [qpi] - hosts: localhost @@ -61,31 +54,10 @@ aggregate: group: compute register: pod_result + tags: [pod] # Generate and publish report - - name: create report folder - file: - path: "{{ qtip_reports }}" - state: directory - - - name: create system information report - template: - src: "{{ qtip_resources }}/template/system-info.j2" - dest: "{{ qtip_reports }}/system-info" - - - name: create qpi report - template: - src: "{{ qtip_resources }}/template/qpi-report.j2" - dest: "{{ qtip_reports }}/qpi-report" - tags: [report] - - - name: create dpi metrics report - template: - src: "{{ qtip_resources }}/template/dpi-metrics.j2" - dest: "{{ qtip_reports }}/dpi-metrics" - tags: [report, dpi] - - name: push result to testapi uri: url: "{{ testapi_url }}/results" diff --git a/resources/roles/qtip-workspace/files/copy/setup.yml b/resources/roles/qtip-workspace/files/copy/setup.yml index 88cdb1d2..0923ba52 100644 --- a/resources/roles/qtip-workspace/files/copy/setup.yml +++ b/resources/roles/qtip-workspace/files/copy/setup.yml @@ -48,7 +48,7 @@ state: directory with_items: - "{{ qtip_cache }}" - - "{{ qtip_reports }}" + - "{{ qtip_results }}" # Initialize testapi database - hosts: localhost diff --git a/resources/roles/qtip-workspace/files/render/group_vars/all.yml b/resources/roles/qtip-workspace/files/render/group_vars/all.yml index c00e72a4..af7f756b 100644 --- a/resources/roles/qtip-workspace/files/render/group_vars/all.yml +++ b/resources/roles/qtip-workspace/files/render/group_vars/all.yml @@ -8,7 +8,7 @@ ############################################################################## qtip_resources: "{{ qtip_package }}/resources" -qtip_reports: reports +qtip_results: results qtip_fixtures: fixtures qtip_dump: dump qtip_cache: .cache diff --git a/resources/roles/ramspeed/tasks/main.yml b/resources/roles/ramspeed/tasks/main.yml index 6473d576..73df35de 100644 --- a/resources/roles/ramspeed/tasks/main.yml +++ b/resources/roles/ramspeed/tasks/main.yml @@ -45,11 +45,11 @@ collect: string: "{{ ramsmp_intmem_out.stdout }}" patterns: - - '^INTEGER\s+BatchRun\s+Copy:\s+?(?P<integer_copy>\d+\.\d+)\sMB/s$' - - '^INTEGER\s+BatchRun\s+Scale:\s+?(?P<integer_scale>\d+\.\d+)\sMB/s$' - - '^INTEGER\s+BatchRun\s+Add:\s+?(?P<integer_add>\d+\.\d+)\sMB/s$' - - '^INTEGER\s+BatchRun\s+Triad:\s+?(?P<integer_triad>\d+\.\d+)\sMB/s$' - - '^INTEGER\s+BatchRun\s+AVERAGE:\s+?(?P<integer_average>\d+\.\d+)\sMB/s$' + - '^INTEGER\s+BatchRun\s+Copy:\s+?(?P<copy>\d+\.\d+)\sMB/s$' + - '^INTEGER\s+BatchRun\s+Scale:\s+?(?P<scale>\d+\.\d+)\sMB/s$' + - '^INTEGER\s+BatchRun\s+Add:\s+?(?P<add>\d+\.\d+)\sMB/s$' + - '^INTEGER\s+BatchRun\s+Triad:\s+?(?P<triad>\d+\.\d+)\sMB/s$' + - '^INTEGER\s+BatchRun\s+AVERAGE:\s+?(?P<average>\d+\.\d+)\sMB/s$' dump: 'ramsmp-intmem.log' register: intmem_metrics tags: [collect] @@ -58,18 +58,18 @@ collect: string: "{{ ramsmp_floatmem_out.stdout }}" patterns: - - '^FL-POINT\s+BatchRun\s+Copy:\s+?(?P<float_copy>\d+\.\d+)\sMB/s$' - - '^FL-POINT\s+BatchRun\s+Scale:\s+?(?P<float_scale>\d+\.\d+)\sMB/s$' - - '^FL-POINT\s+BatchRun\s+Add:\s+?(?P<float_add>\d+\.\d+)\sMB/s$' - - '^FL-POINT\s+BatchRun\s+Triad:\s+?(?P<float_triad>\d+\.\d+)\sMB/s$' - - '^FL-POINT\s+BatchRun\s+AVERAGE:\s+?(?P<float_average>\d+\.\d+)\sMB/s$' + - '^FL-POINT\s+BatchRun\s+Copy:\s+?(?P<copy>\d+\.\d+)\sMB/s$' + - '^FL-POINT\s+BatchRun\s+Scale:\s+?(?P<scale>\d+\.\d+)\sMB/s$' + - '^FL-POINT\s+BatchRun\s+Add:\s+?(?P<add>\d+\.\d+)\sMB/s$' + - '^FL-POINT\s+BatchRun\s+Triad:\s+?(?P<triad>\d+\.\d+)\sMB/s$' + - '^FL-POINT\s+BatchRun\s+AVERAGE:\s+?(?P<average>\d+\.\d+)\sMB/s$' dump: 'ramsmp-floatmem.log' register: floatmem_metrics tags: [collect] - name: create memory metrics report template: - src: "{{ qtip_resources }}/template/mem-metrics.j2" - dest: "{{ qtip_reports }}/mem-metrics" + src: "memory-metrics.j2" + dest: "{{ qtip_results }}/{{ inventory_hostname }}/memory-metrics" delegate_to: localhost tags: [report] diff --git a/resources/roles/ramspeed/templates/memory-metrics.j2 b/resources/roles/ramspeed/templates/memory-metrics.j2 new file mode 100644 index 00000000..4f5a8e80 --- /dev/null +++ b/resources/roles/ramspeed/templates/memory-metrics.j2 @@ -0,0 +1,16 @@ +Memory +====== + +INTEGER +^^^^^^^ +{{ ('Copy', intmem_metrics['copy'][0])|justify }} +{{ ('Scale', intmem_metrics['scale'][0])|justify }} +{{ ('Add', intmem_metrics['add'][0])|justify }} +{{ ('Triad', intmem_metrics['triad'][0])|justify }} + +FL-POINT +^^^^^^^^ +{{ ('Copy', floatmem_metrics['copy'][0])|justify }} +{{ ('Scale', floatmem_metrics['copy'][0])|justify }} +{{ ('Add', floatmem_metrics['copy'][0])|justify }} +{{ ('Triad', floatmem_metrics['copy'][0])|justify }} diff --git a/resources/roles/unixbench/tasks/main.yml b/resources/roles/unixbench/tasks/main.yml index d9d5c8f7..9d4ae833 100644 --- a/resources/roles/unixbench/tasks/main.yml +++ b/resources/roles/unixbench/tasks/main.yml @@ -32,5 +32,15 @@ synchronize: mode: pull src: "{{ cwd }}/byte-unixbench-5.1.3/UnixBench/results" - dest: "{{ qtip_dump }}/{{ inventory_hostname }}/unixbench" + dest: "{{ qtip_results }}/{{ inventory_hostname }}/unixbench" use_ssh_args: yes + +- name: create integer and floating point report + template: + src: "{{ item }}.j2" + dest: "{{ qtip_results }}/{{ inventory_hostname }}/{{ item }}" + with_items: + - floating-point + - integer + delegate_to: localhost + tags: [report] diff --git a/resources/roles/unixbench/templates/floating-point.j2 b/resources/roles/unixbench/templates/floating-point.j2 new file mode 100644 index 00000000..5989d77c --- /dev/null +++ b/resources/roles/unixbench/templates/floating-point.j2 @@ -0,0 +1,2 @@ +Floating Point +==============
\ No newline at end of file diff --git a/resources/roles/unixbench/templates/integer.j2 b/resources/roles/unixbench/templates/integer.j2 new file mode 100644 index 00000000..b494515f --- /dev/null +++ b/resources/roles/unixbench/templates/integer.j2 @@ -0,0 +1,2 @@ +Integer +=======
\ No newline at end of file diff --git a/resources/template/dpi-metrics.j2 b/resources/template/dpi-metrics.j2 deleted file mode 100644 index 4de200b6..00000000 --- a/resources/template/dpi-metrics.j2 +++ /dev/null @@ -1,7 +0,0 @@ -nDPI throughput -=============== - -{% for host in groups['compute'] %} -{% set dpi_metrics=hostvars[host].dpi_metrics %} -{{ (hostvars[host].ansible_hostname, "{} / {}".format(dpi_metrics.dpi_pps[0], dpi_metrics.dpi_bps[0]))|justify }} -{% endfor %} diff --git a/resources/template/mem-metrics.j2 b/resources/template/mem-metrics.j2 deleted file mode 100644 index 6b1b6bd4..00000000 --- a/resources/template/mem-metrics.j2 +++ /dev/null @@ -1,24 +0,0 @@ -Memory -====== - -{% for host in groups['compute'] %} -{{ hostvars[host].ansible_hostname }} ------------------------------ - -INTEGER -^^^^^^^ -{% set metrics=hostvars[host].intmem_metrics %} -{{ ('Copy', metrics.integer_copy[0])|justify }} -{{ ('Scale', metrics.integer_scale[0])|justify }} -{{ ('Add', metrics.integer_add[0])|justify }} -{{ ('Triad', metrics.integer_triad[0])|justify }} - -FL-POINT -^^^^^^^^ -{% set metrics=hostvars[host].floatmem_metrics %} -{{ ('Copy', metrics.float_copy[0])|justify }} -{{ ('Scale', metrics.float_scale[0])|justify }} -{{ ('Add', metrics.float_add[0])|justify }} -{{ ('Triad', metrics.float_triad[0])|justify }} - -{% endfor %} |