aboutsummaryrefslogtreecommitdiffstats
path: root/manifests/profile/base/vpp.pp
diff options
context:
space:
mode:
authorFeng Pan <fpan@redhat.com>2017-08-06 22:26:04 -0400
committerFeng Pan <fpan@redhat.com>2017-08-10 02:18:29 +0000
commitdcedc2b8d50c6ca5f5eb8da8955b57874a65b9a8 (patch)
treed184fbc8033efb2966200e0234b49b2f7c13c184 /manifests/profile/base/vpp.pp
parent798066086bb90b67136e6d42ab7812541ea85aa1 (diff)
Add support for odl-fdio-dvr scenarios
Change-Id: I2025e3157b97b376b63002003ca17c7206aba546 Signed-off-by: Feng Pan <fpan@redhat.com>
Diffstat (limited to 'manifests/profile/base/vpp.pp')
-rw-r--r--manifests/profile/base/vpp.pp15
1 files changed, 14 insertions, 1 deletions
diff --git a/manifests/profile/base/vpp.pp b/manifests/profile/base/vpp.pp
index 05f52f9..4eff434 100644
--- a/manifests/profile/base/vpp.pp
+++ b/manifests/profile/base/vpp.pp
@@ -24,9 +24,22 @@
# Defaults to hiera('step')
#
class tripleo::profile::base::vpp (
- $step = hiera('step'),
+ $step = hiera('step'),
+ $vpp_ctlplane_cidr = hiera('vpp_ctlplane_cidr', undef)
) {
if $step >= 1 {
include ::fdio
+
+ # Need to use the controller's real IP since we only support noha scenario
+ # If this is a ha scenario, we won't configure here.
+ $controllers = any2array(split(hiera('controller_node_ips'), ','))
+ if !empty($vpp_ctlplane_cidr) and size($controllers) == 1 {
+ exec { 'vpp admin interface config':
+ command => "ip link add vpp-admin type veth peer name veth-admin && ip li set dev veth-admin master br-ctlplane && ifconfig veth-admin up && vppctl create host-interface name vpp-admin && vppctl set int ip addr host-vpp-admin ${vpp_ctlplane_cidr} && vppctl set interface state host-vpp-admin up",
+ path => ['/bin', '/sbin'],
+ unless => 'ip link show veth-admin | grep br-ctlplane',
+ require => Class['fdio'],
+ }
+ }
}
}