From b006d0f5126103a5e9e22e15cab4ed50e29900e3 Mon Sep 17 00:00:00 2001 From: "wu.zhihui" Date: Mon, 6 Mar 2017 20:22:19 +0800 Subject: Refactor openssl playbook Local test is ok. Change-Id: I2800e364320697d436ed7b9202cc1baa3a893503 Signed-off-by: wu.zhihui --- qtip/driver/playbook/openssl/clean.yaml | 23 +++++++++ qtip/driver/playbook/openssl/run.yaml | 49 +++++++++++++++++++ qtip/driver/playbook/openssl/setup.yaml | 87 +++++++++++++++++++++++++++++++++ 3 files changed, 159 insertions(+) create mode 100644 qtip/driver/playbook/openssl/clean.yaml create mode 100644 qtip/driver/playbook/openssl/run.yaml create mode 100644 qtip/driver/playbook/openssl/setup.yaml diff --git a/qtip/driver/playbook/openssl/clean.yaml b/qtip/driver/playbook/openssl/clean.yaml new file mode 100644 index 00000000..0139ba54 --- /dev/null +++ b/qtip/driver/playbook/openssl/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 Open_SSL + file: + path: '{{ ansible_env.HOME }}/Open_SSL' + state: absent + + - name: Cleaning qtip_result + file: + path: '{{ ansible_env.HOME }}/qtip_result' + state: absent diff --git a/qtip/driver/playbook/openssl/run.yaml b/qtip/driver/playbook/openssl/run.yaml new file mode 100644 index 00000000..241cac61 --- /dev/null +++ b/qtip/driver/playbook/openssl/run.yaml @@ -0,0 +1,49 @@ +############################################################################## +# 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 RSA signatures and AES-128-cbc cipher encryption throughput + shell: '{{ item }}' + with_items: + - ./openssl speed rsa >> RSA_dump + - ./openssl speed -evp aes-128-cbc >> AES-128-CBC_dump + args: + chdir: '{{ ansible_env.HOME }}/Open_SSL/openssl-1.0.2f/apps' + + - name: Copying result to qtip result directory + shell: cp ~/Open_SSL/openssl-1.0.2f/apps/*_dump ./ + 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 }}/ssl/logs/' diff --git a/qtip/driver/playbook/openssl/setup.yaml b/qtip/driver/playbook/openssl/setup.yaml new file mode 100644 index 00000000..e93bfb8e --- /dev/null +++ b/qtip/driver/playbook/openssl/setup.yaml @@ -0,0 +1,87 @@ +############################################################################## +# 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 ssl directory + file: + path: '{{ result_dir }}/ssl/logs/' + state: directory + +- hosts: hosts + become: yes + remote_user: root + + tasks: + - name: Cleaning Open_SSL directory + file: + path: '{{ ansible_env.HOME }}/Open_SSL' + state: absent + + - name: Cleaning qtip_result directory + file: + path: '{{ ansible_env.HOME }}/qtip_result' + state: absent + + - include: ../prepare_env.yaml + + - name: Installing UnixBench dependencies if CentOS + yum: + name: '{{ item }}' + state: present + when: ansible_os_family == "RedHat" + with_items: + - git + - gcc + - patch + - perl-Time-HiRes + - wget + - autofconf + - automake + - libpcap-devel + - libtool + + - name: Installing UnixBench dependencies if Ubuntu + apt: + name: '{{ item }}' + state: present + when: ansible_os_family == "Debian" + with_items: + - git + - gcc + - patch + - perl + - wget + - autoconf + - automake + - libpcap-dev + - libtool + + - name: Make Open_SSL directory + file: + path: '{{ ansible_env.HOME }}/Open_SSL' + state: directory + + - name: Untar OpenSSL + unarchive: + src: http://artifacts.opnfv.org/qtip/utilities/openssl-1.0.2f.tar.gz + dest: '{{ ansible_env.HOME }}/Open_SSL/' + remote_src: True + + - name: Configure && Make && Install OpenSSL + shell: "{{ item }}" + with_items: + - ./config + - make + - make install + args: + chdir: '{{ ansible_env.HOME }}/Open_SSL/openssl-1.0.2f' \ No newline at end of file -- cgit 1.2.3-korg