From 4bef3e719ab26f4e730eee9334776b640c638a6e Mon Sep 17 00:00:00 2001 From: "wu.zhihui" Date: Wed, 8 Mar 2017 09:05:55 +0800 Subject: playbook for ramspeed These playbooks are successfully executed on Local. Change-Id: Ie22ecb9b66364e6edf6ae0f59d0524603c4d46a9 Signed-off-by: wu.zhihui --- qtip/driver/playbook/ramspeed/clean.yaml | 23 +++++++++++ qtip/driver/playbook/ramspeed/run.yaml | 44 ++++++++++++++++++++ qtip/driver/playbook/ramspeed/setup.yaml | 70 ++++++++++++++++++++++++++++++++ 3 files changed, 137 insertions(+) create mode 100644 qtip/driver/playbook/ramspeed/clean.yaml create mode 100644 qtip/driver/playbook/ramspeed/run.yaml create mode 100644 qtip/driver/playbook/ramspeed/setup.yaml diff --git a/qtip/driver/playbook/ramspeed/clean.yaml b/qtip/driver/playbook/ramspeed/clean.yaml new file mode 100644 index 00000000..f0188159 --- /dev/null +++ b/qtip/driver/playbook/ramspeed/clean.yaml @@ -0,0 +1,23 @@ +############################################################################## +# 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 +############################################################################## + +- hosts: hosts + become: yes + remote_user: root + + tasks: + - name: Cleaning ramspeed + file: + path: '{{ ansible_env.HOME }}/ramspeed' + state: absent + + - name: Cleaning qtip_result + file: + path: '{{ ansible_env.HOME }}/qtip_result' + state: absent diff --git a/qtip/driver/playbook/ramspeed/run.yaml b/qtip/driver/playbook/ramspeed/run.yaml new file mode 100644 index 00000000..33c9a6ef --- /dev/null +++ b/qtip/driver/playbook/ramspeed/run.yaml @@ -0,0 +1,44 @@ +############################################################################## +# 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 +############################################################################## + +- hosts: hosts + become: yes + remote_user: root + + tasks: + - name: Get current timestamp + set_fact: + timestamp: "{{ lookup('pipe', 'date +%Y-%m-%d-%H-%M') }}" + + - name: Make some directories needed + file: + path: '{{ ansible_env.HOME }}/qtip_result/{{ timestamp }}/{{ ansible_hostname }}' + state: directory + + - include: ../inxi.yaml + vars: + dest_path: '{{ ansible_env.HOME }}/qtip_result/{{ timestamp }}/{{ ansible_hostname }}/' + + - include: ../top.yaml + vars: + dest_path: '{{ ansible_env.HOME }}/qtip_result/{{ timestamp }}/{{ ansible_hostname }}/' + + - name: Benchmarking IntMem Bandwidth and FloatMem Bandwidth + shell: '{{ item }}' + with_items: + - ~/ramspeed/ramsmp-3.5.0/ramsmp -b 3 -l 5 -p 1 >> Intmem + - ~/ramspeed/ramsmp-3.5.0/ramsmp -b 6 -l 5 -p 1 >> Floatmem + args: + chdir: '{{ ansible_env.HOME }}/qtip_result/{{ timestamp }}/{{ ansible_hostname }}/' + + - name: Fetch result files to local manchine + synchronize: + mode: pull + src: '{{ ansible_env.HOME }}/qtip_result/' + dest: '{{ result_dir }}/ramspeed/logs/' diff --git a/qtip/driver/playbook/ramspeed/setup.yaml b/qtip/driver/playbook/ramspeed/setup.yaml new file mode 100644 index 00000000..60368605 --- /dev/null +++ b/qtip/driver/playbook/ramspeed/setup.yaml @@ -0,0 +1,70 @@ +############################################################################## +# 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 +############################################################################## + +- hosts: localhost + connection: local + gather_facts: no + + tasks: + - name: Making ramspeed directory + file: + path: '{{ result_dir }}/ramspeed/logs/' + state: directory + +- hosts: hosts + become: yes + remote_user: root + + tasks: + - name: Cleaning ramspeed directory + file: + path: '{{ ansible_env.HOME }}/ramspeed' + state: absent + + - name: Cleaning qtip_result directory + file: + path: '{{ ansible_env.HOME }}/qtip_result' + state: absent + + - include: ../prepare_env.yaml + + - name: Installing RAM_Speed dependencies if CentOS + yum: + name: '{{ item }}' + state: present + when: ansible_os_family == "RedHat" + with_items: + - gcc + - wget + + - name: Installing RAM_Speed dependencies if Ubuntu + apt: + name: '{{ item }}' + state: present + when: ansible_os_family == "Debian" + with_items: + - gcc + - wget + + - name: Making ramspeed temporary directory + file: + path: '{{ ansible_env.HOME }}/ramspeed' + state: directory + + - name: Fetch and untar ramspeed.tar.gz + unarchive: + # TODO: Need to upload this file to http://artifacts.opnfv.org/qtip/utilities + src: https://docs.google.com/uc?id=0B92Bp5LZTM7gRFctalZLMktTNDQ + dest: '{{ ansible_env.HOME }}/ramspeed/' + remote_src: True + + - name: Build ramsmp + shell: ./build.sh + args: + chdir: '{{ ansible_env.HOME }}/ramspeed/ramsmp-3.5.0' -- cgit 1.2.3-korg