############################################################################## # 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 ############################################################################## - name: install inxi - Command line system information script for console and IRC become: yes package: name: inxi state: present - name: check hardware information with inxi command: inxi -b -c0 -n register: inxi_out - name: saving output to log copy: content: "{{ inxi_out.stdout }}" dest: "{{ logfile }}" delegate_to: localhost # TODO(yujunz) normalize system information, test condition and performance metrics for future data mining # e.g. convert "2 Deca core Intel Xeon E5-2650 v3s (-HT-MCP-SMP-) speed/max: 1200/3000 MHz" to # --- # processor: # id: # vendor: Intel # product_family: Xeon # processor_number: E5-2650 v3s # number_of_cores: 2 # number_of_threads: None # set `None` when data is not available # base_frequency_mhz: 1200 # max_turbo_frequency_mhz: 3000 # cache_mb: None - name: collect system information from inxi collect: string: "{{ lookup('file', logfile) }}" patterns: - '.+\s+Host:\s+(?P.+)\sKernel' - '.+\sMemory:\s+(?P.+MB)\s' - '^CPU\(s\):\s+(?P.+)\sspeed' - '.+\sDistro:\s+(?P.+)' - '.+\sKernel:\s+(?P.+)\sConsole' - '.+\s+HDD Total Size:\s+(?P.+)\s' - '.+\sproduct:\s+(?P.+)\sv' dest: "{{ output }}/condition.json" register: system_info delegate_to: localhost tags: - collect - name: create system information report template: src: system-info.j2 dest: "{{ output }}/report" delegate_to: localhost tags: - report