Merge "Update CentOS7 robot nodes to the latest"
[releng/builder.git] / packer / provision / mininet-ovs-2.6.yaml
1 ---
2 - import_playbook: ../common-packer/provision/baseline.yaml
3
4 - hosts: all
5   become_user: root
6   become_method: sudo
7   vars:
8     ovs_version: 2.6.1
9     ovs_checksum: sha256:307b20aba6a179bf13e5da9ac242933c31349073762473a9d4782619c8c1cf0c
10
11   pre_tasks:
12     - include_role: name=lfit.system-update
13
14   tasks:
15     - name: 'Install OpenVSwitch {{ovs_version}}'
16       block:
17         - name: 'Install dependencies required for OpenVSwitch {{ovs_version}}'
18           apt:
19             name:
20               - dh-autoreconf
21               - debhelper
22               - autoconf
23               - automake
24               - libssl-dev
25               - pkg-config
26               - bzip2
27               - openssl
28               - python-all
29               - procps
30               - python-qt4
31               - python-zopeinterface
32               - python-twisted-conch
33             state: present
34           become: true
35         - name: Create OVS root
36           file:
37             path: /tmp/ovs
38             state: directory
39             mode: 0755
40         - name: 'Fetch OpenVSwitch {{ovs_version}} to /tmp'
41           get_url:
42             url: 'http://openvswitch.org/releases/openvswitch-2.6.1.tar.gz'
43             dest: '/tmp/openvswitch-2.6.1.tar.gz'
44             checksum: '{{ovs_checksum}}'
45         - name: 'Unarchive OpenVSwitch {{ovs_version}}'
46           unarchive:
47             src: '/tmp/openvswitch-{{ovs_version}}.tar.gz'
48             dest: /tmp/ovs
49             remote_src: true
50         - name: 'Build OpenVSwitch {{ovs_version}}'
51           shell: DEB_BUILD_OPTIONS='parallel=8 nocheck' fakeroot debian/rules binary
52           args:
53             chdir: '/tmp/ovs/openvswitch-{{ovs_version}}'
54         - name: 'Install OpenVSwitch {{ovs_version}}'
55           apt: 'deb={{item}}'
56           with_items:
57             - /tmp/ovs/openvswitch-common_2.6.1-1_amd64.deb
58             - /tmp/ovs/openvswitch-switch_2.6.1-1_amd64.deb
59             - /tmp/ovs/python-openvswitch_2.6.1-1_all.deb
60             - /tmp/ovs/openvswitch-vtep_2.6.1-1_amd64.deb
61           become: true
62         - name: Enable openvswitch-switch service
63           systemd:
64             name: openvswitch-switch
65             enabled: true
66             masked: false
67           become: true
68         - name: Enable openvswitch-vtep service
69           systemd:
70             name: openvswitch-vtep
71             enabled: true
72             masked: false
73           become: true
74
75     - name: Install Mininet
76       apt: name=mininet state=present
77       become: true
78
79     - name: Install exabgp
80       apt: name=exabgp state=present
81       become: true
82
83     - name: Install vlan for vlan based tests in VTN suites
84       apt: name=vlan state=present
85       become: true
86
87     - name: Install python-netaddr for custom mininet topologies
88       apt: name=python-netaddr state=present
89       become: true
90
91   post_tasks:
92     - name: System Reseal
93       script: ../common-packer/provision/system-reseal.sh
94       become: true