Refactor openssl playbook 49/29849/6
authorwu.zhihui <wu.zhihui1@zte.com.cn>
Mon, 6 Mar 2017 12:22:19 +0000 (20:22 +0800)
committerwu.zhihui <wu.zhihui1@zte.com.cn>
Wed, 8 Mar 2017 09:59:27 +0000 (17:59 +0800)
Local test is ok.

Change-Id: I2800e364320697d436ed7b9202cc1baa3a893503
Signed-off-by: wu.zhihui <wu.zhihui1@zte.com.cn>
qtip/driver/playbook/openssl/clean.yaml [new file with mode: 0644]
qtip/driver/playbook/openssl/run.yaml [new file with mode: 0644]
qtip/driver/playbook/openssl/setup.yaml [new file with mode: 0644]

diff --git a/qtip/driver/playbook/openssl/clean.yaml b/qtip/driver/playbook/openssl/clean.yaml
new file mode 100644 (file)
index 0000000..0139ba5
--- /dev/null
@@ -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 (file)
index 0000000..241cac6
--- /dev/null
@@ -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 (file)
index 0000000..e93bfb8
--- /dev/null
@@ -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