3 # ============LICENSE_START==========================================
5 # ===================================================================
6 # Copyright © 2018 AT&T Intellectual Property. All rights reserved.
7 # ===================================================================
8 # Licensed under the Apache License, Version 2.0 (the "License");
9 # you may not use this file except in compliance with the License.
10 # You may obtain a copy of the License at
12 # http://www.apache.org/licenses/LICENSE-2.0
14 # Unless required by applicable law or agreed to in writing, software
15 # distributed under the License is distributed on an "AS IS" BASIS,
16 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 # See the License for the specific language governing permissions and
18 # limitations under the License.
19 # ============LICENSE_END============================================
20 # ECOMP is a trademark and service mark of AT&T Intellectual Property.
24 DMaaP Bus Controller API
25 =======================
27 Data Movement as a Platform (DMaaP) Bus Controller provides an API for other ONAP infrastructure components to provision DMaaP resources.
28 A typical DMaaP resource is a Data Router Feed or a Message Router Topic, and their associated publishers and subscribers.
29 Other infrastucture resources such as DR Nodes and MR Clusters are also provisioned through this API.
31 ### Build Instructions for a Continuous Integration environment using Jenkins
33 When this component is included in a Continuous Integration environment, such as structured by the Linux Foundation, the artifacts can be created and deployed via Jenkins. The following maven targets are currently supported in the Build step:
39 ### Build Instructions for external developers
41 This project is organized as a mvn project for a jar package.
42 After cloning from this git repo:
51 We can utilize docker to build and register the buscontroller container in a local dev repository.
52 Note the Dockerfile follows ONAP convention of running app as root.
56 <assuming DOCKER_HOST is set appropriately for your environment>
58 $ mvn -P docker docker:build
66 Prior to starting container, place environment specific vars in /tmp/docker-databus-controller.conf on the Docker host,
67 and map that file to /opt/app/config/conf.
68 Run the container which will run the dmaapbc deploy command, which will update the container runtime properties appropriately, and start the Bus Controller.
70 For example, in ONAP Future Lab environment, /tmp/docker-databus-controller.conf looks like:
73 # DMaaP Bus Controller OpenSource environment vars
74 CONT_DOMAIN=demo.dmaap.onap.org
75 DMAAPBC_INSTANCE_NAME=ONAPfuture
78 # set to 0 if certificate is not ready
79 DMAAPBC_INT_HTTPS_PORT=0
81 DMAAPBC_KSTOREFILE=/opt/app/dcae-certificates
82 DMAAPBC_KSTOREPASS=foofoofoo
83 DMAAPBC_PVTKEYPASS=barbarbar
85 DMAAPBC_PG_ENABLED=true
86 DMAAPBC_PGHOST=zldciad1vipstg00.simpledemo.openecomp.org
87 DMAAPBC_PGCRED=test234-ftl
89 DMAAPBC_DRPROV_FQDN=zldciad1vidrps00.simpledemo.openecomp.org
91 DMAAPBC_AAF_URL=https://aafapi.${CONT_DOMAIN}:8095/proxy/
93 DMAAPBC_TOPICMGR_USER=m99751@dmaapBC.openecomp.org
94 DMAAPBC_TOPICMGR_PWD=enc:zyRL9zbI0py3rJAjMS0dFOnYfEw_mJhO
95 DMAAPBC_ADMIN_USER=m99501@dcae.openecomp.org
96 DMAAPBC_ADMIN_PWD=enc:YEaHwOJrwhDY8a6usetlhbB9mEjUq9m
98 DMAAPBC_PE_ENABLED=false
99 DMAAPBC_PE_AAF_ENV=TBD
101 Then the following steps could be used to pull and run the Bus Controller. (onap-nexus is just an example)
104 $ docker pull nexus3.onap.org:10003/onap/dmaap/buscontroller:latest
105 $ docker run -d -p 18080:8080 -p 18443:8443 -v /tmp/docker-databus-controller.conf:/opt/app/config/conf nexus3.onap.org:10003/onap/dmaap/buscontroller:latest