############################################################################## # 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: prepare sample pcap file get_url: url: "http://artifacts.opnfv.org/qtip/utilities/test.pcap" dest: "{{ qtip_cache }}/{{ nDPI_file }}" # validate_certs: no # required when using proxy for https run_once: yes delegate_to: localhost - name: making nDPI temporary directory file: path: "{{ nDPI_cwd }}" state: directory - name: clone nDPI git: repo: https://github.com/ntop/nDPI.git dest: "{{ nDPI_cwd }}" depth: 1 update: no - name: build nDPI library command: '{{ item }}' with_items: - ./autogen.sh - ./configure - make args: chdir: "{{ nDPI_cwd }}" creates: example/ndpiReader - name: copy sample packet file copy: src: "{{ qtip_cache}}/{{ nDPI_file }}" dest: "{{ nDPI_cwd }}/example/{{ nDPI_file }}" - name: command: "./ndpiReader -i {{ nDPI_file }}" args: chdir: "{{ nDPI_cwd }}/example/" register: nDPI_out - name: collect DPI metrics from nDPI collect: string: "{{ nDPI_out.stdout }}" patterns: # nDPI throughput: 1.46 M pps / 13.69 Gb/sec # TODO(yujunz) convert "M pps" and "K pps" to number - 'nDPI throughput:\s+?(?P\d+.\d+.*) \/ (?P\d+.\d+.*)$' dump: 'nDPI.log' register: dpi_metrics - name: create dpi report template: src: dpi-metrics.j2 dest: "{{ qtip_results }}/dpi-metrics" delegate_to: localhost tags: [report]