LagopusでQoLを高める

OpenFlowコントローラ作るじゃない?

TravisでOvS動かんかった

ほかには?

LINC(Erlang)

Erlangで書かれている!

テスト書くにはうってつけかも!

Lagopus

はやい、キレイ、開発者が

私の席の隣りにいる。

LINC

Updating netlink from {git,"https://github.com/Feuerlabs/netlink",{tag,"1.0"}}
==> goldrush (compile)
ERROR: OTP release 18 does not match required regex R1[56]B|17
ERROR: compile failed while processing /home/shun159/play/openflow/LINC-Switch/deps/goldrush: rebar_abort
Makefile:13: ターゲット 'compile' のレシピで失敗しました
make: *** [compile] エラー 1
                                                                                                                                                                                                 
shun159@shun159-laptop ~/play/openflow/LINC-Switch                                                                                                                                    [13:34:21] 
> $ erl                                                                                                                                                                              [±master ✓]
Erlang/OTP 18 [erts-7.3] [source] [64-bit] [smp:4:4] [async-threads:10] [kernel-poll:false]

依存ライブラリふるい〜

LINCはもうメンテされてない

もうLagopus

だけがたより

スクリプト書く

#!/bin/bash
set -ev
rm -rf lagopus/
git clone --depth=1 -b v0.2.8 https://github.com/lagopus/lagopus.git
cd lagopus
./configure -q --disable-dpdk && make -s && sudo make install || true

travis.yml書く

sudo: required

install: "true"

compiler: gcc

before_install:
  - sudo apt-get -qq update
  - sudo apt-get install -y build-essential libexpat-dev libgmp-dev libssl-dev libpcap-dev byacc flex git python-dev python-pastedeploy python-paste python-twisted
  - wget https://s3.amazonaws.com/rebar3/rebar3
  - chmod +x rebar3
  - uname -a

script:
  - ./scripts/install-lagopus.sh
  - make travis
  - make coveralls
  Top 10 slowest tests:
    "get Lagopus aggregate stats"
    ofp13_switch_api_tests:switch_api_test_/0
      1.13 s       
    "get Lagopus table_stats"
    ofp13_switch_api_tests:switch_api_test_/0
      0.13 s       
    "put meter_mod"
    ofp13_switch_api_tests:switch_api_test_/0
      0.12 s       
    "put group_mod"
    ofp13_switch_api_tests:switch_api_test_/0
      0.12 s       
    "get Lagopus switch_desc"
    ofp13_switch_api_tests:switch_api_test_/0
      0.11 s       
    "put flow_mod and get Lagopus flows"
    ofp13_switch_api_tests:switch_api_test_/0
      0.09 s       
    "get Lagopus table features"
    ofp13_switch_api_tests:switch_api_test_/0
      0.08 s       
    "get Lagopus meter_features"
    ofp13_switch_api_tests:switch_api_test_/0
      0.04 s       
    "get Lagopus port stats"
    ofp13_switch_api_tests:switch_api_test_/0
      0.04 s       
    "get Lagopus features"
    ofp13_switch_api_tests:switch_api_test_/0
      0.04 s     

テストも通って、一家団欒

ありがたみ