summaryrefslogtreecommitdiffstats
path: root/qtip/driver/playbook/dpi/setup.yaml
blob: c1b45450647d6e79d1445e1e47afca11157f0ca2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
##############################################################################
# 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 Dpi directory
      file:
        path: '{{ result_dir }}/dpi/logs/'
        state: directory

- hosts: hosts
  become: yes
  remote_user: root

  tasks:
    - name: Cleaning tempD directory
      file:
        path: '{{ ansible_env.HOME }}/tempD'
        state: absent

    - name: Cleaning qtip_result directory
      file:
        path: '{{ ansible_env.HOME }}/qtip_result'
        state: absent

    - include: ../prepare_env.yaml

    - name: Installing nDPI dependencies if CentOS
      yum:
        name: '{{ item }}'
        state: present
      when: ansible_os_family == "RedHat"
      with_items:
        - git
        - gcc
        - patch
        - perl-Time-HiRes
        - autofconf
        - automake
        - libpcap-devel libtool

    - name: Installing nDPI dependencies if Ubuntu
      apt:
        name: '{{ item }}'
        state: present
      when: ansible_os_family == "Debian"
      with_items:
        - git
        - gcc
        - patch
        - autoconf
        - automake
        - libpcap-dev
        - libtool

    - name: Making nDPI temporary directory
      file:
        path: '{{ ansible_env.HOME }}/tempD'
        state: directory

    - name: Clone nDPI
      git:
        repo: https://github.com/ntop/nDPI.git
        dest: '{{ ansible_env.HOME }}/tempD/nDPI'

    - name: Run autogen && configure Dpi && make Dpi
      command: '{{ item }}'
      with_items:
        - ./autogen.sh
        - ./configure
        - make
      args:
        chdir: '{{ ansible_env.HOME }}/tempD/nDPI/'

    - name: Fetching Test_pcap file
      get_url:
        url: http://build.opnfv.org/artifacts.opnfv.org/qtip/utilities/test.pcap
        dest: '{{ ansible_env.HOME }}/tempD/nDPI/example/test.pcap'

    - name: Fetch Averaging script
      copy:
        src: ./dpi_average.sh
        dest: '{{ ansible_env.HOME }}/tempD/nDPI/example'
        mode: 777