From 9222ecb462099f667d78494f4886d6c84f8a2310 Mon Sep 17 00:00:00 2001 From: Yujun Zhang Date: Thu, 20 Apr 2017 20:58:13 +0800 Subject: Reorganize benchmarking tasks into ansible roles which helps to - group task with related templates and variables - simplify the main playbook to improve readability See: http://docs.ansible.com/ansible/playbooks_roles.html Change-Id: I9d3180edaac83ee9dba85ce5ac14ff574af7a905 Signed-off-by: Yujun Zhang --- resources/roles/qtip-workspace/files/copy/run.yml | 109 ++++++++++++++++++++++ 1 file changed, 109 insertions(+) create mode 100644 resources/roles/qtip-workspace/files/copy/run.yml (limited to 'resources/roles/qtip-workspace/files/copy/run.yml') diff --git a/resources/roles/qtip-workspace/files/copy/run.yml b/resources/roles/qtip-workspace/files/copy/run.yml new file mode 100644 index 00000000..ddac875c --- /dev/null +++ b/resources/roles/qtip-workspace/files/copy/run.yml @@ -0,0 +1,109 @@ +############################################################################## +# Copyright (c) 2017 ZTE Corporation and others. +# +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 +############################################################################## + +--- +# Execute compute benchmark plan and collect data +# - system information +# - test condition +# - performance metrics + +- hosts: compute + + pre_tasks: + - name: check ssh connection + ping: + + roles: + - development-tools + + post_tasks: + - name: create dumping directories + file: + path: "{{ qtip_dump }}/{{ inventory_hostname }}" + state: directory + delegate_to: localhost + + tags: [setup] + + +- hosts: compute + + roles: + + - { role: inxi, tags: [inxi, sysinfo] } + - { role: unixbench, tags: [unixbench, float, int] } + - { role: openssl, tags: [openssl, ssl]} + - { role: nDPI, tags: [ndpi, dpi]} + - { role: ramspeed, tags: [ramspeed, mem]} + + post_tasks: + - name: calculate QPI of compute + calculate: + metrics: + ssl_rsa: "{{ openssl_rsa_metrics }}" + spec: "{{ qtip_resources }}/QPI/compute.yaml" + register: qpi_result + delegate_to: localhost + tags: [calculate] + + +- hosts: localhost + + tasks: + + - name: aggregate QPI results from all tested nodes + aggregate: + group: compute + register: pod_result + + # 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" + body: "{{ item|to_json }}" + method: POST + body_format: json + status_code: 200 + with_items: + - + project_name: "{{ project_name }}" + case_name: "{{ case_name }}" + pod_name: "{{ pod_name }}" + installer: "{{ installer }}" + version: "{{ version }}" + scenario: "{{ scenario }}" + start_date: "{{ ansible_date_time.date }}" + stop_date: "{{ ansible_date_time.date }}" + criteria: "" + details: "{{ pod_result }}" + + tags: [testapi] -- cgit 1.2.3-korg