From 33f12d921cc503055ff82361f672fac7516d89ee Mon Sep 17 00:00:00 2001 From: Marek Gradzki Date: Fri, 14 Jul 2017 09:31:18 +0200 Subject: HONEYCOMB-370: make bgp peers configuration optional Change-Id: I459425f4ee8f43d0bf196d2c762e741c58667907 Signed-off-by: Marek Gradzki --- .../honeycomb/infra/bgp/BgpNeighboursProvider.java | 8 +++- .../config/bgp-peers.json | 53 ---------------------- 2 files changed, 6 insertions(+), 55 deletions(-) delete mode 100644 infra/northbound/bgp/src/main/resources/honeycomb-minimal-resources/config/bgp-peers.json diff --git a/infra/northbound/bgp/src/main/java/io/fd/honeycomb/infra/bgp/BgpNeighboursProvider.java b/infra/northbound/bgp/src/main/java/io/fd/honeycomb/infra/bgp/BgpNeighboursProvider.java index 9356b32b4..f79afc9a2 100644 --- a/infra/northbound/bgp/src/main/java/io/fd/honeycomb/infra/bgp/BgpNeighboursProvider.java +++ b/infra/northbound/bgp/src/main/java/io/fd/honeycomb/infra/bgp/BgpNeighboursProvider.java @@ -17,7 +17,6 @@ package io.fd.honeycomb.infra.bgp; import static com.google.common.base.Preconditions.checkNotNull; -import static com.google.common.base.Preconditions.checkState; import static io.fd.honeycomb.translate.util.JsonUtils.readContainerEntryJson; import static org.opendaylight.protocol.bgp.openconfig.impl.util.OpenConfigUtil.APPLICATION_PEER_GROUP_NAME; import static org.opendaylight.yangtools.sal.binding.generator.impl.BindingSchemaContextUtils.findDataNodeContainer; @@ -26,6 +25,7 @@ import com.google.common.base.Optional; import com.google.inject.Inject; import io.fd.honeycomb.binding.init.ProviderTrait; import java.io.InputStream; +import java.util.Collections; import java.util.Map; import javax.annotation.Nonnull; import org.opendaylight.controller.md.sal.binding.impl.BindingToNormalizedNodeCodec; @@ -40,6 +40,7 @@ import org.opendaylight.yang.gen.v1.http.openconfig.net.yang.bgp.rev151009.BgpNe import org.opendaylight.yang.gen.v1.http.openconfig.net.yang.bgp.rev151009.bgp.neighbors.Neighbor; import org.opendaylight.yang.gen.v1.http.openconfig.net.yang.bgp.rev151009.bgp.top.Bgp; import org.opendaylight.yang.gen.v1.http.openconfig.net.yang.bgp.rev151009.bgp.top.bgp.Neighbors; +import org.opendaylight.yang.gen.v1.http.openconfig.net.yang.bgp.rev151009.bgp.top.bgp.NeighborsBuilder; import org.opendaylight.yang.gen.v1.http.openconfig.net.yang.network.instance.rev151018.network.instance.top.NetworkInstances; import org.opendaylight.yang.gen.v1.http.openconfig.net.yang.network.instance.rev151018.network.instance.top.network.instances.NetworkInstance; import org.opendaylight.yang.gen.v1.http.openconfig.net.yang.network.instance.rev151018.network.instance.top.network.instances.NetworkInstanceKey; @@ -94,7 +95,10 @@ final class BgpNeighboursProvider extends ProviderTrait { private Neighbors readNeighbours() { LOG.debug("Reading BGP neighbours from {}", PEERS_CFG); final InputStream resourceStream = this.getClass().getResourceAsStream(PEERS_CFG); - checkState(resourceStream != null, "Resource %s not found", PEERS_CFG); + if (resourceStream == null) { + LOG.warn("Unable to open {}. Skipping BGP neighbour configuration.", PEERS_CFG); + return new NeighborsBuilder().setNeighbor(Collections.emptyList()).build(); + } final InstanceIdentifier bgpII = InstanceIdentifier.create(NetworkInstances.class) .child(NetworkInstance.class, new NetworkInstanceKey("dummy-value")).child(Protocols.class) diff --git a/infra/northbound/bgp/src/main/resources/honeycomb-minimal-resources/config/bgp-peers.json b/infra/northbound/bgp/src/main/resources/honeycomb-minimal-resources/config/bgp-peers.json deleted file mode 100644 index 93405fba6..000000000 --- a/infra/northbound/bgp/src/main/resources/honeycomb-minimal-resources/config/bgp-peers.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "bgp-openconfig-extensions:neighbors": { - "neighbor": [ - { - "neighbor-address": "10.25.1.9", - "config": { - "peer-group": "application-peers" - }, - "afi-safis": { - "afi-safi": [ - { - "afi-safi-name": "openconfig-bgp-types:IPV4-UNICAST", - "receive": true, - "send-max": 0 - }, - { - "afi-safi-name": "openconfig-bgp-types:IPV4-LABELLED-UNICAST", - "receive": true, - "send-max": 0 - } - ] - } - }, - { - "neighbor-address": "127.0.0.2", - "config": { - "peer-type": "INTERNAL" - }, - "timers": { - "config": { - "connect-retry": 10, - "hold-time": 90 - } - }, - "transport": { - "config": { - "remote-port": 17900, - "passive-mode": false - } - }, - "afi-safis": { - "afi-safi": [ - { - "afi-safi-name": "openconfig-bgp-types:IPV4-UNICAST", - "receive": true, - "send-max": 0 - } - ] - } - } - ] - } -} \ No newline at end of file -- cgit 1.2.3-korg