summaryrefslogtreecommitdiffstats
path: root/infra/bgp-distribution
diff options
context:
space:
mode:
authorJan Srnicek <jsrnicek@cisco.com>2017-06-30 15:10:27 +0200
committerMarek Gradzki <mgradzki@cisco.com>2017-06-30 13:15:25 +0000
commita90863760d1ae1a92520ce29841aec600d25a83a (patch)
tree5bf9d20b61d2a14d6f44306ef021e754088d8abc /infra/bgp-distribution
parent62dd4d32fd270d3a6b7bb47c972bbcd5dc7b9f43 (diff)
HONEYCOMB-358 - Conditional module loading
Change-Id: Ic9b7182cc77bf2f73cf5edd3ee19f25f53711cda Signed-off-by: Jan Srnicek <jsrnicek@cisco.com>
Diffstat (limited to 'infra/bgp-distribution')
-rw-r--r--infra/bgp-distribution/pom.xml19
-rw-r--r--infra/bgp-distribution/src/main/resources/honeycomb-minimal-resources/config/activation.json3
-rw-r--r--infra/bgp-distribution/src/test/java/io/fd/honeycomb/infra/bgp/distro/BgpDistributionTest.java91
-rw-r--r--infra/bgp-distribution/src/test/resources/WEB-INF/web.xml74
-rw-r--r--infra/bgp-distribution/src/test/resources/activation.json3
-rw-r--r--infra/bgp-distribution/src/test/resources/base-distro-test-modules/base-modules14
-rw-r--r--infra/bgp-distribution/src/test/resources/bgp-peers.json90
-rw-r--r--infra/bgp-distribution/src/test/resources/bgp.json9
-rw-r--r--infra/bgp-distribution/src/test/resources/honeycomb-keystorebin2392 -> 0 bytes
-rw-r--r--infra/bgp-distribution/src/test/resources/honeycomb.json40
-rw-r--r--infra/bgp-distribution/src/test/resources/logback.xml31
11 files changed, 2 insertions, 372 deletions
diff --git a/infra/bgp-distribution/pom.xml b/infra/bgp-distribution/pom.xml
index 62bc95752..545885933 100644
--- a/infra/bgp-distribution/pom.xml
+++ b/infra/bgp-distribution/pom.xml
@@ -105,24 +105,5 @@
<groupId>org.opendaylight.bgpcep</groupId>
<artifactId>bgp-l3vpn</artifactId>
</dependency>
-
- <!-- test dependencies -->
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>com.mashape.unirest</groupId>
- <artifactId>unirest-java</artifactId>
- <version>1.4.9</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>com.jcraft</groupId>
- <artifactId>jsch</artifactId>
- <version>0.1.54</version>
- <scope>test</scope>
- </dependency>
</dependencies>
</project> \ No newline at end of file
diff --git a/infra/bgp-distribution/src/main/resources/honeycomb-minimal-resources/config/activation.json b/infra/bgp-distribution/src/main/resources/honeycomb-minimal-resources/config/activation.json
index 7b6f44a20..8dd168702 100644
--- a/infra/bgp-distribution/src/main/resources/honeycomb-minimal-resources/config/activation.json
+++ b/infra/bgp-distribution/src/main/resources/honeycomb-minimal-resources/config/activation.json
@@ -1,3 +1,4 @@
{
- "modules-resource-path": "../modules/"
+ "modules-resource-path": "../modules/",
+ "yang-modules-index-path": "../yang-mapping/"
} \ No newline at end of file
diff --git a/infra/bgp-distribution/src/test/java/io/fd/honeycomb/infra/bgp/distro/BgpDistributionTest.java b/infra/bgp-distribution/src/test/java/io/fd/honeycomb/infra/bgp/distro/BgpDistributionTest.java
deleted file mode 100644
index be927a64e..000000000
--- a/infra/bgp-distribution/src/test/java/io/fd/honeycomb/infra/bgp/distro/BgpDistributionTest.java
+++ /dev/null
@@ -1,91 +0,0 @@
-/*
- * Copyright (c) 2016 Cisco and/or its affiliates.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at:
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package io.fd.honeycomb.infra.bgp.distro;
-
-import com.google.common.io.ByteStreams;
-import com.mashape.unirest.http.Unirest;
-import java.io.IOException;
-import java.io.InputStream;
-import java.net.InetAddress;
-import java.net.Socket;
-import javax.net.ssl.SSLContext;
-import org.apache.http.conn.ssl.SSLConnectionSocketFactory;
-import org.apache.http.conn.ssl.TrustSelfSignedStrategy;
-import org.apache.http.impl.client.CloseableHttpClient;
-import org.apache.http.impl.client.HttpClients;
-import org.apache.http.ssl.SSLContexts;
-import org.junit.Assert;
-import org.junit.Before;
-import org.junit.Test;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-public class BgpDistributionTest {
-
- private static final Logger LOG = LoggerFactory.getLogger(BgpDistributionTest.class);
- private static final String CERT_PASSWORD = "testing";
- private static final int HELLO_WAIT = 2500;
-
- private static final int BGP_MSG_TYPE_OFFSET = 18; // 16 (MARKER) + 2 (LENGTH);
- private static final byte BGP_OPEN_MSG_TYPE = 1;
- private static final int BGP_PORT = 1790;
-
- @Before
- public void setUp() throws Exception {
- SSLContext sslcontext = SSLContexts.custom()
- .loadTrustMaterial(getClass().getResource("/honeycomb-keystore"),
- CERT_PASSWORD.toCharArray(), new TrustSelfSignedStrategy())
- .build();
-
- SSLConnectionSocketFactory sslsf = new SSLConnectionSocketFactory(sslcontext);
- CloseableHttpClient httpclient = HttpClients.custom()
- .setSSLSocketFactory(sslsf)
- .build();
- Unirest.setHttpClient(httpclient);
- }
-
- @Test(timeout = 120000)
- public void test() throws Exception {
- io.fd.honeycomb.infra.bgp.distro.Main.init();
- LOG.info("Testing Honeycomb BGP distribution");
- assertBgp();
- }
-
- private byte[] readMessage(final InputStream inputStream) throws IOException {
- final int available = inputStream.available();
- final byte[] msg = new byte[available];
- ByteStreams.read(inputStream, msg, 0, available);
- return msg;
- }
-
- private void assertBgp() throws Exception {
- // Wait until BGP server is started
- Thread.sleep(HELLO_WAIT);
- final InetAddress bgpHost = InetAddress.getByName("127.0.0.1");
- final InetAddress bgpPeerAddress = InetAddress.getByName("127.0.0.2");
- try (final Socket localhost = new Socket(bgpHost, BGP_PORT, bgpPeerAddress, 0);
- final InputStream inputStream = localhost.getInputStream()) {
- // Wait until bgp message is sent
- Thread.sleep(HELLO_WAIT);
-
- final byte[] msg = readMessage(inputStream);
- LOG.info("Received BGP message: {}", msg);
-
- Assert.assertEquals(BGP_OPEN_MSG_TYPE, msg[BGP_MSG_TYPE_OFFSET]);
- }
- }
-} \ No newline at end of file
diff --git a/infra/bgp-distribution/src/test/resources/WEB-INF/web.xml b/infra/bgp-distribution/src/test/resources/WEB-INF/web.xml
deleted file mode 100644
index 6cf487170..000000000
--- a/infra/bgp-distribution/src/test/resources/WEB-INF/web.xml
+++ /dev/null
@@ -1,74 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!--
- ~ Copyright (c) 2016 Cisco and/or its affiliates.
- ~
- ~ Licensed under the Apache License, Version 2.0 (the "License");
- ~ you may not use this file except in compliance with the License.
- ~ You may obtain a copy of the License at:
- ~
- ~ http://www.apache.org/licenses/LICENSE-2.0
- ~
- ~ Unless required by applicable law or agreed to in writing, software
- ~ distributed under the License is distributed on an "AS IS" BASIS,
- ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- ~ See the License for the specific language governing permissions and
- ~ limitations under the License.
- -->
-
-<web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
- version="3.0">
-
- <servlet>
- <servlet-name>JAXRSRestconf</servlet-name>
- <servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
- <init-param>
- <param-name>javax.ws.rs.Application</param-name>
- <param-value>org.opendaylight.netconf.sal.rest.impl.RestconfApplication</param-value>
- </init-param>
- <load-on-startup>1</load-on-startup>
- </servlet>
-
- <servlet-mapping>
- <servlet-name>JAXRSRestconf</servlet-name>
- <url-pattern>/*</url-pattern>
- </servlet-mapping>
- <filter>
- <filter-name>cross-origin-restconf</filter-name>
- <filter-class>org.eclipse.jetty.servlets.CrossOriginFilter</filter-class>
- <init-param>
- <param-name>allowedOrigins</param-name>
- <param-value>*</param-value>
- </init-param>
- <init-param>
- <param-name>allowedMethods</param-name>
- <param-value>GET,POST,OPTIONS,DELETE,PUT,HEAD</param-value>
- </init-param>
- <init-param>
- <param-name>allowedHeaders</param-name>
- <param-value>origin, content-type, accept, authorization</param-value>
- </init-param>
- <init-param>
- <param-name>exposedHeaders</param-name>
- <param-value>location</param-value>
- </init-param>
- </filter>
- <filter-mapping>
- <filter-name>cross-origin-restconf</filter-name>
- <url-pattern>/*</url-pattern>
- </filter-mapping>
-
- <security-constraint>
- <web-resource-collection>
- <web-resource-name>NB api</web-resource-name>
- <url-pattern>/*</url-pattern>
- <http-method>POST</http-method>
- <http-method>GET</http-method>
- <http-method>PUT</http-method>
- <http-method>PATCH</http-method>
- <http-method>DELETE</http-method>
- <http-method>HEAD</http-method>
- </web-resource-collection>
- </security-constraint>
-
-</web-app>
diff --git a/infra/bgp-distribution/src/test/resources/activation.json b/infra/bgp-distribution/src/test/resources/activation.json
deleted file mode 100644
index 7e2015123..000000000
--- a/infra/bgp-distribution/src/test/resources/activation.json
+++ /dev/null
@@ -1,3 +0,0 @@
-{
- "modules-resource-path": "base-distro-test-modules"
-} \ No newline at end of file
diff --git a/infra/bgp-distribution/src/test/resources/base-distro-test-modules/base-modules b/infra/bgp-distribution/src/test/resources/base-distro-test-modules/base-modules
deleted file mode 100644
index 18602a0ad..000000000
--- a/infra/bgp-distribution/src/test/resources/base-distro-test-modules/base-modules
+++ /dev/null
@@ -1,14 +0,0 @@
-io.fd.honeycomb.infra.bgp.BgpConfigurationModule
-io.fd.honeycomb.infra.bgp.BgpExtensionsModule
-io.fd.honeycomb.infra.bgp.BgpModule
-io.fd.honeycomb.infra.bgp.BgpReadersModule
-io.fd.honeycomb.infra.bgp.BgpWritersModule
-io.fd.honeycomb.infra.distro.cfgattrs.CfgAttrsModule
-io.fd.honeycomb.infra.distro.data.ConfigAndOperationalPipelineModule
-io.fd.honeycomb.infra.distro.data.context.ContextPipelineModule
-io.fd.honeycomb.infra.distro.initializer.InitializerPipelineModule
-io.fd.honeycomb.infra.distro.netconf.NetconfModule
-io.fd.honeycomb.infra.distro.netconf.NetconfReadersModule
-io.fd.honeycomb.infra.distro.restconf.RestconfModule
-io.fd.honeycomb.infra.distro.schema.SchemaModule
-io.fd.honeycomb.infra.distro.schema.YangBindingProviderModule \ No newline at end of file
diff --git a/infra/bgp-distribution/src/test/resources/bgp-peers.json b/infra/bgp-distribution/src/test/resources/bgp-peers.json
deleted file mode 100644
index 3a7e01060..000000000
--- a/infra/bgp-distribution/src/test/resources/bgp-peers.json
+++ /dev/null
@@ -1,90 +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
- }
- ]
- }
- },
- {
- "neighbor-address": "10.25.1.10",
- "config": {
- "peer-group": "application-peers"
- },
- "afi-safis": {
- "afi-safi": [
- {
- "afi-safi-name": "openconfig-bgp-types:IPV4-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
- }
- ]
- }
- },
- {
- "neighbor-address": "127.0.0.3",
- "config": {
- "peer-type": "EXTERNAL"
- },
- "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
diff --git a/infra/bgp-distribution/src/test/resources/bgp.json b/infra/bgp-distribution/src/test/resources/bgp.json
deleted file mode 100644
index 494b6a965..000000000
--- a/infra/bgp-distribution/src/test/resources/bgp.json
+++ /dev/null
@@ -1,9 +0,0 @@
- {
- "bgp-enabled": "true",
- "bgp-binding-address": "127.0.0.1",
- "bgp-port": 1790,
- "bgp-as-number": 65000,
- "bgp-receive-multiple-paths": "true",
- "bgp-send-max-paths": 0,
- "bgp-netty-threads": 2
-} \ No newline at end of file
diff --git a/infra/bgp-distribution/src/test/resources/honeycomb-keystore b/infra/bgp-distribution/src/test/resources/honeycomb-keystore
deleted file mode 100644
index 44093dc09..000000000
--- a/infra/bgp-distribution/src/test/resources/honeycomb-keystore
+++ /dev/null
Binary files differ
diff --git a/infra/bgp-distribution/src/test/resources/honeycomb.json b/infra/bgp-distribution/src/test/resources/honeycomb.json
deleted file mode 100644
index a0b2a633c..000000000
--- a/infra/bgp-distribution/src/test/resources/honeycomb.json
+++ /dev/null
@@ -1,40 +0,0 @@
- {
- "persisted-context-path": "/tmp/honeycomb/persist/context/data.json",
- "persisted-context-restoration-type": "Merge",
- "persisted-config-path": "/tmp/honeycomb/persist/config/data.json",
- "persisted-config-restoration-type": "Merge",
-
- "notification-service-queue-depth": 1,
-
- "restconf-http-enabled": "true",
- "restconf-root-path": "/restconf",
- "restconf-binding-address": "127.0.0.1",
- "restconf-port": 8182,
- "restconf-https-enabled": "true",
- "restconf-https-binding-address": "127.0.0.1",
- "restconf-https-port": 8444,
- "restconf-keystore": "/honeycomb-keystore",
- "restconf-keystore-password": "testing",
- "restconf-keystore-manager-password": "testing",
- "restconf-truststore": "/honeycomb-keystore",
- "restconf-truststore-password": "testing",
- "restconf-websocket-port": 7780,
- "restconf-pool-max-size": 10,
- "restconf-pool-min-size": 1,
- "restconf-acceptors-size": 1,
- "restconf-selectors-size": 1,
- "restconf-https-acceptors-size": 1,
- "restconf-https-selectors-size": 1,
-
- "netconf-netty-threads": 2,
- "netconf-tcp-enabled" : "true",
- "netconf-tcp-binding-address": "127.0.0.1",
- "netconf-tcp-binding-port": 7778,
- "netconf-ssh-enabled" : "true",
- "netconf-ssh-binding-address": "127.0.0.1",
- "netconf-ssh-binding-port": 2832,
- "netconf-notification-stream-name": "honeycomb",
-
- "username": "admin",
- "password": "admin"
-} \ No newline at end of file
diff --git a/infra/bgp-distribution/src/test/resources/logback.xml b/infra/bgp-distribution/src/test/resources/logback.xml
deleted file mode 100644
index 2ee89db4e..000000000
--- a/infra/bgp-distribution/src/test/resources/logback.xml
+++ /dev/null
@@ -1,31 +0,0 @@
- <!--
- ~ Copyright (c) 2016 Cisco and/or its affiliates.
- ~
- ~ Licensed under the Apache License, Version 2.0 (the "License");
- ~ you may not use this file except in compliance with the License.
- ~ You may obtain a copy of the License at:
- ~
- ~ http://www.apache.org/licenses/LICENSE-2.0
- ~
- ~ Unless required by applicable law or agreed to in writing, software
- ~ distributed under the License is distributed on an "AS IS" BASIS,
- ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- ~ See the License for the specific language governing permissions and
- ~ limitations under the License.
- -->
-
-<configuration scan="true">
-
- <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
- <encoder>
- <pattern>%date{"yyyy-MM-dd HH:mm:ss.SSS z"} [%thread] %-5level %logger{36} - %msg%n</pattern>
- </encoder>
- </appender>
-
- <root level="warn">
- <appender-ref ref="STDOUT" />
- </root>
-
- <logger name="org.opendaylight" level="INFO"/>
- <logger name="io.fd" level="INFO"/>
-</configuration>