--- - import_playbook: ../common-packer/provision/baseline.yaml - hosts: all become_user: root become_method: sudo vars: ovs_checksum: sha256:8d1c439e26d7044f0ec823c7fef1b00b7c6465da0b83a7d0cf3191ed1dc43893 ovs_version: 2.8.1 pre_tasks: - include_role: name=lfit.system-update tasks: - name: 'Install OpenVSwitch {{ovs_version}}' block: - name: Install OpenVSwitch dependencies apt: 'name={{item}} state=present' with_items: - autoconf - automake - bzip2 - debhelper - dh-autoreconf - libssl-dev - openssl - pkg-config - procps - python-all - python-qt4 - python-twisted-conch - python-zopeinterface become: true - name: 'Fetch OpenVSwitch {{ovs_version}}' get_url: url: 'http://openvswitch.org/releases/openvswitch-{{ovs_version}}.tar.gz' dest: '/tmp/openvswitch-{{ovs_version}}.tar.gz' checksum: '{{ovs_checksum}}' - name: Create /tmp/ovs directory file: path: /tmp/ovs state: directory mode: 0755 - name: 'Unarchive OpenVSwitch {{ovs_version}}' unarchive: src: '/tmp/openvswitch-{{ovs_version}}.tar.gz' dest: /tmp/ovs remote_src: true - name: 'Build OpenVSwitch {{ovs_version}}' shell: DEB_BUILD_OPTIONS='parallel=8 nocheck' fakeroot debian/rules binary args: chdir: '/tmp/ovs/openvswitch-{{ovs_version}}' - name: 'Install OpenVSwitch {{ovs_version}}' apt: 'deb={{item}}' with_items: - /tmp/ovs/libopenvswitch_2.8.1-1_amd64.deb - /tmp/ovs/openvswitch-common_2.8.1-1_amd64.deb - /tmp/ovs/openvswitch-switch_2.8.1-1_amd64.deb - /tmp/ovs/python-openvswitch_2.8.1-1_all.deb - /tmp/ovs/openvswitch-vtep_2.8.1-1_amd64.deb become: true - name: Enable openvswitch-switch service systemd: name: openvswitch-switch enabled: true masked: false become: true - name: Enable openvswitch-vtep service systemd: name: openvswitch-vtep enabled: true masked: false become: true - name: Install Mininet apt: name=mininet state=present become: true - name: Install mtcbench block: - name: Install mtcbench dependencies apt: 'name={{item}} state=present' with_items: - autoconf - automake - build-essential - libconfig-dev - libffi-dev - libpcap-dev - libsnmp-dev - libtool - libssl-doc - make - pkg-config - snmp - snmpd become: true - name: Fetch mtcbench git repo git: repo: https://github.com/intracom-telecom-sdn/mtcbench.git dest: /tmp/mtcbench - name: Run mtcbench/deploy/docker/provision.sh command: /tmp/mtcbench/deploy/docker/provision.sh become: true - name: Build mtcbench # TODO: remove workaround for build issue with mtcbench # when mtcbench dependency build correctly # https://github.com/intracom-telecom-sdn/mtcbench/issues/10 shell: /tmp/mtcbench/build_mtcbench.sh || true - name: Run make for cbench command: make args: chdir: /tmp/mtcbench/oflops/cbench - name: Install cbench to /usr/local/bin/cbench copy: src: /tmp/mtcbench/oflops/cbench/cbench dest: /usr/local/bin/cbench mode: 0755 owner: root remote_src: yes become: true - name: Install exabgp apt: name=exabgp state=present become: true - name: Install python-netaddr for custom mininet topologies apt: name=python-netaddr state=present become: true - name: Install vlan for vlan based tests in VTN suites apt: name=vlan state=present become: true - name: Install Quagga block: - name: Fetch Quagga git repo git: repo: https://github.com/6WIND/zrpcd.git dest: /tmp/build_quagga/zrpcd version: 20170731 - name: Set compile script executable file: path: /tmp/build_quagga/zrpcd/pkgsrc/dev_compile_script.sh mode: 0755 - name: Compile Quagga shell: /tmp/build_quagga/zrpcd/pkgsrc/dev_compile_script.sh -d -b -t args: chdir: /tmp/build_quagga/zrpcd executable: /bin/bash become: true post_tasks: - name: System Reseal script: ../common-packer/provision/system-reseal.sh become: true