diff options
author | Marco Platania <platania@research.att.com> | 2019-04-18 18:02:47 -0400 |
---|---|---|
committer | Marco Platania <platania@research.att.com> | 2019-04-18 18:02:47 -0400 |
commit | 149a1664fcb40e1ad83f48878a13d2aff0f65b75 (patch) | |
tree | e4d788a6da45d66f7d5afa0f39feafa4e7fa5ae2 | |
parent | 0443998090eb195b1e2de897201843b8a90ae037 (diff) |
Update Honeycomb to Rel1810 for vFW
- Update Honeycomb version to 1810 to support ODL Fluorine
- Migrate existing stream-count plugin to 1810
- Update POM structure
- Update vPacketGen install file (including ARM64)
Change-Id: I2866c80876550cb149cdb5fee3193d453643639c
Issue-ID: INT-1035
Signed-off-by: Marco Platania <platania@research.att.com>
20 files changed, 195 insertions, 129 deletions
diff --git a/vnfs/honeycomb_plugin/parent-pom/pom.xml b/vnfs/honeycomb_plugin/parent-pom/pom.xml index eb841042..d331f68e 100644 --- a/vnfs/honeycomb_plugin/parent-pom/pom.xml +++ b/vnfs/honeycomb_plugin/parent-pom/pom.xml @@ -52,15 +52,15 @@ done <debug.parameters>-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005</debug.parameters> <guice.version>4.1.0</guice.version> <guice.config.version>1.2.0</guice.config.version> - <restconf.version>1.3.2-Beryllium-SR2</restconf.version> - <netconf.version>1.0.2-Beryllium-SR2</netconf.version> + <!--restconf.version>1.3.2-Beryllium-SR2</restconf.version--> + <!--netconf.version>1.0.2-Beryllium-SR2</netconf.version--> <jersey.version>1.19.1</jersey.version> <jetty.version>9.3.11.v20160721</jetty.version> <servlet.version>3.1.0</servlet.version> - <yangtools.version>0.8.2-Beryllium-SR2</yangtools.version> - <mdsal.version>1.3.2-Beryllium-SR2</mdsal.version> + <!--yangtools.version>0.8.2-Beryllium-SR2</yangtools.version--> + <!--mdsal.version>1.3.2-Beryllium-SR2</mdsal.version--> <!-- Used by mdsal as provided/runtime dependency--> - <osgi.core.version>5.0.0</osgi.core.version> + <!--osgi.core.version>5.0.0</osgi.core.version--> </properties> <modelVersion>4.0.0</modelVersion> @@ -69,11 +69,12 @@ done <!-- Generate executable shell script --> <modules> - <module>../sample_plugin/sample-plugin-api</module> - <module>../sample_plugin/sample-plugin-impl</module> + <!--module>../sample-plugin/sample-plugin-api</module--> + <!--module>../sample-plugin/sample-plugin-impl</module--> <module>../stream-count/stream-count-api</module> <module>../stream-count/stream-count-impl</module> - <module>../sample-distribution</module> + <module>../stream-count/stream-count-distribution</module> + <!--module>../sample-distribution</module--> </modules> <build> @@ -219,7 +220,7 @@ done <dependency> <groupId>io.fd.honeycomb.common</groupId> <artifactId>minimal-assembly-descriptor</artifactId> - <version>1.16.9</version> + <version>1.18.10</version> </dependency> </dependencies> <executions> diff --git a/vnfs/honeycomb_plugin/stream-count/asciidoc/Readme.adoc b/vnfs/honeycomb_plugin/stream-count/asciidoc/Readme.adoc new file mode 100644 index 00000000..648b59e3 --- /dev/null +++ b/vnfs/honeycomb_plugin/stream-count/asciidoc/Readme.adoc @@ -0,0 +1,3 @@ += stream-count-aggregator + +Overview of stream-count-aggregator
\ No newline at end of file diff --git a/vnfs/honeycomb_plugin/stream-count/pom.xml b/vnfs/honeycomb_plugin/stream-count/pom.xml index e8bdcb9c..8754dab5 100644 --- a/vnfs/honeycomb_plugin/stream-count/pom.xml +++ b/vnfs/honeycomb_plugin/stream-count/pom.xml @@ -12,27 +12,31 @@ 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. ---><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> +--> + +<!-- + Modifications copyright © 2019 AT&T Intellectual Property +--> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + + <groupId>org.onap.vnf.vfw</groupId> <parent> - <groupId>org.opendaylight.odlparent</groupId> - <artifactId>odlparent</artifactId> - <version>1.6.2-Beryllium-SR2</version> + <artifactId>honeycomb-aggregator</artifactId> + <groupId>io.fd.honeycomb</groupId> + <version>1.18.10.1-SNAPSHOT</version> </parent> - - <groupId>io.fd.honeycomb.lcmapi</groupId> <artifactId>stream-count-aggregator</artifactId> - <version>1.16.9-SNAPSHOT</version> + <version>1.18.10</version> <name>stream-count-aggregator</name> <packaging>pom</packaging> <modelVersion>4.0.0</modelVersion> - <prerequisites> - <maven>3.1.1</maven> - </prerequisites> <modules> <module>stream-count-api</module> <module>stream-count-impl</module> + <module>stream-count-distribution</module> </modules> <!-- DO NOT install or deploy the repo root pom as it's only needed to initiate a build --> diff --git a/vnfs/honeycomb_plugin/stream-count/stream-count-api/asciidoc/Readme.adoc b/vnfs/honeycomb_plugin/stream-count/stream-count-api/asciidoc/Readme.adoc new file mode 100644 index 00000000..dee2e71f --- /dev/null +++ b/vnfs/honeycomb_plugin/stream-count/stream-count-api/asciidoc/Readme.adoc @@ -0,0 +1,3 @@ += stream-count-api + +Overview of stream-count-api
\ No newline at end of file diff --git a/vnfs/honeycomb_plugin/stream-count/stream-count-api/pom.xml b/vnfs/honeycomb_plugin/stream-count/stream-count-api/pom.xml index 3bc79adc..75acf47e 100644 --- a/vnfs/honeycomb_plugin/stream-count/stream-count-api/pom.xml +++ b/vnfs/honeycomb_plugin/stream-count/stream-count-api/pom.xml @@ -16,27 +16,16 @@ <parent> <groupId>io.fd.honeycomb.common</groupId> <artifactId>api-parent</artifactId> - <version>1.16.9</version> + <version>1.18.10</version> </parent> <modelVersion>4.0.0</modelVersion> - <groupId>io.fd.honeycomb.lcmapi</groupId> + <groupId>org.onap.vnf.vfw</groupId> <artifactId>stream-count-api</artifactId> - <version>1.16.9</version> + <name>stream-count-api</name> + <version>1.18.10</version> <packaging>bundle</packaging> - <dependencyManagement> - <dependencies> - <dependency> - <groupId>org.opendaylight.mdsal.model</groupId> - <artifactId>mdsal-model-artifacts</artifactId> - <version>0.8.2-Beryllium-SR2</version> - <type>pom</type> - <scope>import</scope> - </dependency> - </dependencies> - </dependencyManagement> - <dependencies> <dependency> <groupId>org.opendaylight.mdsal.model</groupId> diff --git a/vnfs/honeycomb_plugin/stream-count/stream-count-distribution/asciidoc/Readme.adoc b/vnfs/honeycomb_plugin/stream-count/stream-count-distribution/asciidoc/Readme.adoc new file mode 100644 index 00000000..6479b112 --- /dev/null +++ b/vnfs/honeycomb_plugin/stream-count/stream-count-distribution/asciidoc/Readme.adoc @@ -0,0 +1,3 @@ += sample-distribution + +Overview of sample-distribution
\ No newline at end of file diff --git a/vnfs/honeycomb_plugin/stream-count/stream-count-distribution/pom.xml b/vnfs/honeycomb_plugin/stream-count/stream-count-distribution/pom.xml new file mode 100644 index 00000000..ac75a008 --- /dev/null +++ b/vnfs/honeycomb_plugin/stream-count/stream-count-distribution/pom.xml @@ -0,0 +1,100 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + Modifications copyright © 2019 AT&T Intellectual Property +--> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + + <!--parent> + <groupId>org.onap.demo.vnf</groupId> + <artifactId>hc-onap</artifactId> + <version>1.4.0-SNAPSHOT</version> + <relativePath>../parent-pom/pom.xml</relativePath> + </parent--> + + <parent> + <groupId>io.fd.honeycomb.common</groupId> + <artifactId>minimal-distribution-parent</artifactId> + <version>1.18.10</version> + </parent> + + <modelVersion>4.0.0</modelVersion> + <groupId>org.onap.vnf.vfw</groupId> + <artifactId>sample-distribution</artifactId> + <version>1.4.0-SNAPSHOT</version> + + <!--modelVersion>4.0.0</modelVersion> + <artifactId>sample-distribution</artifactId--> + + <properties> + <exec.parameters>-Xms256m -Xmx256m</exec.parameters> + <main.class>io.fd.honeycomb.infra.distro.Main</main.class> + <interfaces.mapping.version>1.18.10</interfaces.mapping.version> + <honeycomb.min.distro.version>1.18.10</honeycomb.min.distro.version> + <!-- + Defines list of specific modules provided by the distribution + (adds them to base modules like NetconfModule and RestconfModule). + + Module configuration is placed in 'modules' subdir of the target distro folder. + Modules can be disabled by commenting them out in the pom.xml + or modules configuration file. + --> + <distribution.modules> + org.onap.vnf.vfw.Module + </distribution.modules> + </properties> + + <build> + <plugins> + <plugin> + <artifactId>maven-compiler-plugin</artifactId> + </plugin> + <plugin> + <groupId>org.codehaus.gmaven</groupId> + <artifactId>groovy-maven-plugin</artifactId> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-jar-plugin</artifactId> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-dependency-plugin</artifactId> + </plugin> + <plugin> + <artifactId>maven-assembly-plugin</artifactId> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-deploy-plugin</artifactId> + <configuration> + <skip>false</skip> + </configuration> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-install-plugin</artifactId> + <configuration> + <skip>false</skip> + </configuration> + </plugin> + </plugins> + </build> + + <dependencies> + <!-- Dependency on sample plugin --> + <dependency> + <groupId>org.onap.vnf.vfw</groupId> + <artifactId>stream-count-impl</artifactId> + <version>${interfaces.mapping.version}</version> + </dependency> + <!-- Dependency on distribution base --> + <dependency> + <groupId>io.fd.honeycomb</groupId> + <artifactId>minimal-distribution</artifactId> + <version>${honeycomb.min.distro.version}</version> + </dependency> + + </dependencies> +</project> diff --git a/vnfs/honeycomb_plugin/stream-count/stream-count-impl/Readme.adoc b/vnfs/honeycomb_plugin/stream-count/stream-count-impl/Readme.adoc deleted file mode 100644 index 5e347d27..00000000 --- a/vnfs/honeycomb_plugin/stream-count/stream-count-impl/Readme.adoc +++ /dev/null @@ -1,3 +0,0 @@ ---Documentation for stream-count -- - -TODO Replace with general description whats the purpose of stream-count and how it works diff --git a/vnfs/honeycomb_plugin/stream-count/stream-count-impl/asciidoc/Readme.adoc b/vnfs/honeycomb_plugin/stream-count/stream-count-impl/asciidoc/Readme.adoc new file mode 100644 index 00000000..98561bb1 --- /dev/null +++ b/vnfs/honeycomb_plugin/stream-count/stream-count-impl/asciidoc/Readme.adoc @@ -0,0 +1,3 @@ += stream-count-impl + +Overview of stream-count-impl
\ No newline at end of file diff --git a/vnfs/honeycomb_plugin/stream-count/stream-count-impl/pom.xml b/vnfs/honeycomb_plugin/stream-count/stream-count-impl/pom.xml index 25d6d765..1ccd5c14 100644 --- a/vnfs/honeycomb_plugin/stream-count/stream-count-impl/pom.xml +++ b/vnfs/honeycomb_plugin/stream-count/stream-count-impl/pom.xml @@ -12,21 +12,28 @@ 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. ---><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> +--> + +<!-- + Modifications copyright © 2019 AT&T Intellectual Property +--> + +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <parent> <groupId>io.fd.honeycomb.common</groupId> <artifactId>impl-parent</artifactId> - <version>1.16.9</version> + <version>1.18.10</version> </parent> <modelVersion>4.0.0</modelVersion> - <groupId>io.fd.honeycomb.lcmapi</groupId> + <groupId>org.onap.vnf.vfw</groupId> <artifactId>stream-count-impl</artifactId> - <version>1.16.9</version> + <name>stream-count-impl</name> + <version>1.18.10</version> <packaging>bundle</packaging> <properties> - <honeycomb.infra.version>1.16.9</honeycomb.infra.version> + <honeycomb.infra.version>1.18.10</honeycomb.infra.version> </properties> <dependencies> @@ -59,21 +66,18 @@ <dependency> <groupId>com.google.inject</groupId> <artifactId>guice</artifactId> - <version>${guice.version}</version> </dependency> <dependency> <groupId>net.jmob</groupId> <artifactId>guice.conf</artifactId> - <version>${guice.config.version}</version> </dependency> <dependency> <groupId>com.google.inject.extensions</groupId> <artifactId>guice-multibindings</artifactId> - <version>${guice.version}</version> </dependency> </dependencies> - <build> + <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> diff --git a/vnfs/honeycomb_plugin/stream-count/stream-count-impl/src/main/java/io/fd/honeycomb/lcmapi/init/ConfigDataInitializer.java b/vnfs/honeycomb_plugin/stream-count/stream-count-impl/src/main/java/io/fd/honeycomb/lcmapi/init/ConfigDataInitializer.java deleted file mode 100644 index 16edd1bc..00000000 --- a/vnfs/honeycomb_plugin/stream-count/stream-count-impl/src/main/java/io/fd/honeycomb/lcmapi/init/ConfigDataInitializer.java +++ /dev/null @@ -1,54 +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. - */ - -/* - * Modifications copyright (c) 2019 AT&T Intellectual Property - */ - -package io.fd.honeycomb.lcmapi.init; - -import io.fd.honeycomb.data.init.AbstractDataTreeConverter; -import com.google.inject.Inject; -import com.google.inject.name.Named; -import javax.annotation.Nonnull; -import org.opendaylight.controller.md.sal.binding.api.DataBroker; -import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.stream.count.rev190118.StreamCount; -import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.stream.count.rev190118.StreamCountBuilder; -import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.stream.count.rev190118.StreamCountState; -import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; - -/** - * Initialize configuration data based on operational data. - * <p/> - * Very useful when a plugin is initiated but the underlying layer already contains some operation state. - * Deriving the configuration from existing operational state enables reconciliation in case when Honeycomb's persistence - * is not available to do the work for us. - */ -public final class ConfigDataInitializer extends AbstractDataTreeConverter<StreamCountState, StreamCount> { - - @Inject - public ConfigDataInitializer(@Named("honeycomb-initializer") @Nonnull final DataBroker bindingDataBroker) { - super(bindingDataBroker, InstanceIdentifier.create(StreamCountState.class), InstanceIdentifier.create(StreamCount.class)); - } - - @Override - public StreamCount convert(final StreamCountState operationalData) { - // Transfer all the operational data into configuration - return new StreamCountBuilder() - .setStreams(operationalData.getStreams()) - .build(); - } -} diff --git a/vnfs/honeycomb_plugin/stream-count/stream-count-impl/src/main/java/io/fd/honeycomb/lcmapi/CrudService.java b/vnfs/honeycomb_plugin/stream-count/stream-count-impl/src/main/java/org/onap/vnf/vfw/CrudService.java index b9d7f1bb..33b2e18f 100644 --- a/vnfs/honeycomb_plugin/stream-count/stream-count-impl/src/main/java/io/fd/honeycomb/lcmapi/CrudService.java +++ b/vnfs/honeycomb_plugin/stream-count/stream-count-impl/src/main/java/org/onap/vnf/vfw/CrudService.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.fd.honeycomb.lcmapi; +package org.onap.vnf.vfw; import io.fd.honeycomb.translate.read.ReadFailedException; import io.fd.honeycomb.translate.write.WriteFailedException; diff --git a/vnfs/honeycomb_plugin/stream-count/stream-count-impl/src/main/java/io/fd/honeycomb/lcmapi/ElementCrudService.java b/vnfs/honeycomb_plugin/stream-count/stream-count-impl/src/main/java/org/onap/vnf/vfw/ElementCrudService.java index fa6a31d5..945f992c 100644 --- a/vnfs/honeycomb_plugin/stream-count/stream-count-impl/src/main/java/io/fd/honeycomb/lcmapi/ElementCrudService.java +++ b/vnfs/honeycomb_plugin/stream-count/stream-count-impl/src/main/java/org/onap/vnf/vfw/ElementCrudService.java @@ -18,7 +18,7 @@ * Modifications copyright (c) 2019 AT&T Intellectual Property */ -package io.fd.honeycomb.lcmapi; +package org.onap.vnf.vfw; import io.fd.honeycomb.translate.read.ReadFailedException; import io.fd.honeycomb.translate.write.WriteFailedException; diff --git a/vnfs/honeycomb_plugin/stream-count/stream-count-impl/src/main/java/io/fd/honeycomb/lcmapi/Module.java b/vnfs/honeycomb_plugin/stream-count/stream-count-impl/src/main/java/org/onap/vnf/vfw/Module.java index 05109db3..31ba56e1 100644 --- a/vnfs/honeycomb_plugin/stream-count/stream-count-impl/src/main/java/io/fd/honeycomb/lcmapi/Module.java +++ b/vnfs/honeycomb_plugin/stream-count/stream-count-impl/src/main/java/org/onap/vnf/vfw/Module.java @@ -18,16 +18,15 @@ * Modifications copyright (c) 2019 AT&T Intellectual Property */ -package io.fd.honeycomb.lcmapi; +package org.onap.vnf.vfw; -import static io.fd.honeycomb.lcmapi.ModuleConfiguration.ELEMENT_SERVICE_NAME; +import static org.onap.vnf.vfw.ModuleConfiguration.ELEMENT_SERVICE_NAME; import com.google.inject.AbstractModule; import com.google.inject.TypeLiteral; import com.google.inject.multibindings.Multibinder; import com.google.inject.name.Names; -import io.fd.honeycomb.lcmapi.init.ConfigDataInitializer; -import io.fd.honeycomb.lcmapi.write.ModuleWriterFactory; +import org.onap.vnf.vfw.write.ModuleWriterFactory; import io.fd.honeycomb.data.init.DataTreeInitializer; import io.fd.honeycomb.translate.write.WriterFactory; import net.jmob.guice.conf.core.ConfigurationModule; @@ -60,11 +59,5 @@ public final class Module extends AbstractModule { // can hold multiple binding for separate yang modules final Multibinder<WriterFactory> writerFactoryBinder = Multibinder.newSetBinder(binder(), WriterFactory.class); writerFactoryBinder.addBinding().to(ModuleWriterFactory.class); - - // create initializer binding - // can hold multiple binding for separate yang modules - final Multibinder<DataTreeInitializer> initializerBinder = - Multibinder.newSetBinder(binder(), DataTreeInitializer.class); - initializerBinder.addBinding().to(ConfigDataInitializer.class); } } diff --git a/vnfs/honeycomb_plugin/stream-count/stream-count-impl/src/main/java/io/fd/honeycomb/lcmapi/ModuleConfiguration.java b/vnfs/honeycomb_plugin/stream-count/stream-count-impl/src/main/java/org/onap/vnf/vfw/ModuleConfiguration.java index c574b3ef..c229c5ad 100644 --- a/vnfs/honeycomb_plugin/stream-count/stream-count-impl/src/main/java/io/fd/honeycomb/lcmapi/ModuleConfiguration.java +++ b/vnfs/honeycomb_plugin/stream-count/stream-count-impl/src/main/java/org/onap/vnf/vfw/ModuleConfiguration.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.fd.honeycomb.lcmapi; +package org.onap.vnf.vfw; import net.jmob.guice.conf.core.BindConfig; import net.jmob.guice.conf.core.InjectConfig; diff --git a/vnfs/honeycomb_plugin/stream-count/stream-count-impl/src/main/java/io/fd/honeycomb/lcmapi/write/ElementCustomizer.java b/vnfs/honeycomb_plugin/stream-count/stream-count-impl/src/main/java/org/onap/vnf/vfw/write/ElementCustomizer.java index 740ffdf7..18329e84 100644 --- a/vnfs/honeycomb_plugin/stream-count/stream-count-impl/src/main/java/io/fd/honeycomb/lcmapi/write/ElementCustomizer.java +++ b/vnfs/honeycomb_plugin/stream-count/stream-count-impl/src/main/java/org/onap/vnf/vfw/write/ElementCustomizer.java @@ -18,26 +18,22 @@ * Modifications copyright (c) 2019 AT&T Intellectual Property */ -package io.fd.honeycomb.lcmapi.write; +package org.onap.vnf.vfw.write; -import io.fd.honeycomb.lcmapi.CrudService; +import org.onap.vnf.vfw.CrudService; import io.fd.honeycomb.translate.spi.write.WriterCustomizer; import io.fd.honeycomb.translate.write.WriteContext; import io.fd.honeycomb.translate.write.WriteFailedException; - -import java.io.IOException; - import javax.annotation.Nonnull; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.stream.count.rev190118.stream.count.params.Streams; import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; - +import java.io.IOException; import org.slf4j.Logger; import org.slf4j.LoggerFactory; /** * Writer for {@link Element} list node from our YANG model. */ - public final class ElementCustomizer implements WriterCustomizer<Streams> { private static final Logger LOG = LoggerFactory.getLogger(ElementCustomizer.class); @@ -92,9 +88,9 @@ public final class ElementCustomizer implements WriterCustomizer<Streams> { //Update the number of running streams running a custom script that uses the old vPacketGen REST APIs private void runScript(long streams) throws IOException { - String script = new String("bash /opt/update_running_streams.sh " + streams); + String script = new String("bash /opt/enable_disable_streams.sh " + streams); Runtime.getRuntime().exec(script); String message = "Number of running streams updated to " + streams; LOG.info(message); } -} +}
\ No newline at end of file diff --git a/vnfs/honeycomb_plugin/stream-count/stream-count-impl/src/main/java/io/fd/honeycomb/lcmapi/write/ModuleWriterFactory.java b/vnfs/honeycomb_plugin/stream-count/stream-count-impl/src/main/java/org/onap/vnf/vfw/write/ModuleWriterFactory.java index 1de39761..0bd7b8e1 100644 --- a/vnfs/honeycomb_plugin/stream-count/stream-count-impl/src/main/java/io/fd/honeycomb/lcmapi/write/ModuleWriterFactory.java +++ b/vnfs/honeycomb_plugin/stream-count/stream-count-impl/src/main/java/org/onap/vnf/vfw/write/ModuleWriterFactory.java @@ -18,13 +18,13 @@ * Modifications copyright (c) 2019 AT&T Intellectual Property */ -package io.fd.honeycomb.lcmapi.write; +package org.onap.vnf.vfw.write; -import static io.fd.honeycomb.lcmapi.ModuleConfiguration.ELEMENT_SERVICE_NAME; +import static org.onap.vnf.vfw.ModuleConfiguration.ELEMENT_SERVICE_NAME; import com.google.inject.Inject; import com.google.inject.name.Named; -import io.fd.honeycomb.lcmapi.CrudService; +import org.onap.vnf.vfw.CrudService; import io.fd.honeycomb.translate.impl.write.GenericWriter; import io.fd.honeycomb.translate.write.WriterFactory; import io.fd.honeycomb.translate.write.registry.ModifiableWriterRegistryBuilder; diff --git a/vnfs/vFW/scripts/enable_disable_streams.sh b/vnfs/vFW/scripts/enable_disable_streams.sh new file mode 100644 index 00000000..d2551552 --- /dev/null +++ b/vnfs/vFW/scripts/enable_disable_streams.sh @@ -0,0 +1,21 @@ +#!/bin/bash + +if [ -z $1 ]; then + echo "Missing number of streams to enable. Exit (1)" + exit +fi + +if [ "$1" -gt "10" ] || [ "$1" -lt "1" ]; then + echo "The number of streams to enable must be between 1 and 10. Exit(1)" + exit +fi + +STREAMS=$1 + +# Disable all the streams +vppctl packet-generator disable-stream + +# Enable streams based on client input +for((i=1; i <= $STREAMS; i++)); do + vppctl packet-generator enable-stream fw_udp$i +done
\ No newline at end of file diff --git a/vnfs/vFW/scripts/v_packetgen_install.sh b/vnfs/vFW/scripts/v_packetgen_install.sh index ba809898..a26d5dcc 100755 --- a/vnfs/vFW/scripts/v_packetgen_install.sh +++ b/vnfs/vFW/scripts/v_packetgen_install.sh @@ -61,7 +61,7 @@ cd /opt unzip -p -j /opt/vfw-scripts-$INSTALL_SCRIPT_VERSION.zip v_packetgen_init.sh > /opt/v_packetgen_init.sh unzip -p -j /opt/vfw-scripts-$INSTALL_SCRIPT_VERSION.zip vpacketgen.sh > /opt/vpacketgen.sh unzip -p -j /opt/vfw-scripts-$INSTALL_SCRIPT_VERSION.zip run_traffic_fw_demo.sh > /opt/run_traffic_fw_demo.sh -unzip -p -j /opt/vfw-scripts-$INSTALL_SCRIPT_VERSION.zip update_running_streams.sh > /opt/update_running_streams.sh +unzip -p -j /opt/vfw-scripts-$INSTALL_SCRIPT_VERSION.zip enable_disable_streams.sh > /opt/enable_disable_streams.sh wget -O sample-distribution-$DEMO_ARTIFACTS_VERSION-hc.tar.gz "${NEXUS_ARTIFACT_REPO}/service/local/artifact/maven/redirect?r=${REPO}&g=org.onap.demo.vnf&a=sample-distribution&c=hc&e=tar.gz&v=$DEMO_ARTIFACTS_VERSION" wget -O vfw_pg_streams-$DEMO_ARTIFACTS_VERSION-demo.tar.gz "${NEXUS_ARTIFACT_REPO}/service/local/artifact/maven/redirect?r=${REPO}&g=org.onap.demo.vnf.vfw&a=vfw_pg_streams&c=demo&e=tar.gz&v=$DEMO_ARTIFACTS_VERSION" @@ -69,12 +69,12 @@ tar -zmxvf sample-distribution-$DEMO_ARTIFACTS_VERSION-hc.tar.gz tar -zmxvf vfw_pg_streams-$DEMO_ARTIFACTS_VERSION-demo.tar.gz mv vfw_pg_streams-$DEMO_ARTIFACTS_VERSION pg_streams mv sample-distribution-$DEMO_ARTIFACTS_VERSION honeycomb -sed -i 's/"restconf-binding-address": "127.0.0.1",/"restconf-binding-address": "0.0.0.0",/g' honeycomb/sample-distribution-$DEMO_ARTIFACTS_VERSION/config/honeycomb.json +sed -i 's/"restconf-binding-address": "127.0.0.1",/"restconf-binding-address": "0.0.0.0",/g' honeycomb/sample-distribution-$DEMO_ARTIFACTS_VERSION/config/restconf.json rm *.tar.gz chmod +x v_packetgen_init.sh chmod +x vpacketgen.sh chmod +x run_traffic_fw_demo.sh -chmod +x update_running_streams.sh +chmod +x enable_disable_streams.sh # Install VPP export UBUNTU="trusty" diff --git a/vnfs/vFW/scripts/v_packetgen_install_arm64.sh b/vnfs/vFW/scripts/v_packetgen_install_arm64.sh index 8dee6977..929e5365 100755 --- a/vnfs/vFW/scripts/v_packetgen_install_arm64.sh +++ b/vnfs/vFW/scripts/v_packetgen_install_arm64.sh @@ -62,6 +62,7 @@ cd /opt unzip -p -j /opt/vfw-scripts-$INSTALL_SCRIPT_VERSION.zip v_packetgen_init_arm64.sh > /opt/v_packetgen_init.sh unzip -p -j /opt/vfw-scripts-$INSTALL_SCRIPT_VERSION.zip vpacketgen.sh > /opt/vpacketgen.sh unzip -p -j /opt/vfw-scripts-$INSTALL_SCRIPT_VERSION.zip run_traffic_fw_demo.sh > /opt/run_traffic_fw_demo.sh +unzip -p -j /opt/vfw-scripts-$INSTALL_SCRIPT_VERSION.zip enable_disable_streams.sh > /opt/enable_disable_streams.sh wget -O sample-distribution-$DEMO_ARTIFACTS_VERSION-hc.tar.gz "${NEXUS_ARTIFACT_REPO}/service/local/artifact/maven/redirect?r=${REPO}&g=org.onap.demo.vnf&a=sample-distribution&c=hc&e=tar.gz&v=$DEMO_ARTIFACTS_VERSION" wget -O vfw_pg_streams-$DEMO_ARTIFACTS_VERSION-demo.tar.gz "${NEXUS_ARTIFACT_REPO}/service/local/artifact/maven/redirect?r=${REPO}&g=org.onap.demo.vnf.vfw&a=vfw_pg_streams&c=demo&e=tar.gz&v=$DEMO_ARTIFACTS_VERSION" @@ -69,10 +70,12 @@ tar -zmxvf sample-distribution-$DEMO_ARTIFACTS_VERSION-hc.tar.gz tar -zmxvf vfw_pg_streams-$DEMO_ARTIFACTS_VERSION-demo.tar.gz mv vfw_pg_streams-$DEMO_ARTIFACTS_VERSION pg_streams mv sample-distribution-$DEMO_ARTIFACTS_VERSION honeycomb -sed -i 's/"restconf-binding-address": "127.0.0.1",/"restconf-binding-address": "0.0.0.0",/g' honeycomb/sample-distribution-$DEMO_ARTIFACTS_VERSION/config/honeycomb.json +sed -i 's/"restconf-binding-address": "127.0.0.1",/"restconf-binding-address": "0.0.0.0",/g' honeycomb/sample-distribution-$DEMO_ARTIFACTS_VERSION/config/restconf.json rm *.tar.gz chmod +x v_packetgen_init.sh chmod +x vpacketgen.sh +chmod +x run_traffic_fw_demo.sh +chmod +x enable_disable_streams.sh # Install VPP rm /etc/apt/sources.list.d/99fd.io.list |