X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=README.md;h=9de48efdb8c76af32a00f69e302d7fd5844f8cb8;hb=3fb7ec331988d5e6208f83af7a218a67e8de4d91;hp=85880d5d1f7338e9615d3835c9921309cb0e7299;hpb=feedd42d6251ad95b6f4ddc2753478f26c5ed20f;p=dmaap%2Fbuscontroller.git diff --git a/README.md b/README.md index 85880d5..9de48ef 100644 --- a/README.md +++ b/README.md @@ -28,6 +28,12 @@ Data Movement as a Platform (DMaaP) Bus Controller provides an API for other ONA A typical DMaaP resource is a Data Router Feed or a Message Router Topic, and their associated publishers and subscribers. Other infrastucture resources such as DR Nodes and MR Clusters are also provisioned through this API. +### Sub-components + +This project produces the following mvn modules in their respective sub-directories: +- dmaap-bc is a docker image intended to be used to instantiate the DMaaP Bus Controller container +- dbc-client is a docker image intended to serve as a temporary http client of the Bus Controller API. It will be instantiated in a container that is a Helm hook (e.g. post-install hook) that knows how to invoke the Bus Controller API. + ### Build Instructions for a Continuous Integration environment using Jenkins 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: @@ -38,7 +44,7 @@ clean install ### Build Instructions for external developers -This project is organized as a mvn project for a jar package. +This project is organized as a mvn project for a docker image. After cloning from this git repo: ``` @@ -49,13 +55,12 @@ mvn clean install ### Docker Packaging We can utilize docker to build and register the buscontroller container in a local dev repository. -Note the Dockerfile follows ONAP convention of running app as root. ``` -$ mvn -P docker docker:build +$ mvn -P docker ``` @@ -106,7 +111,7 @@ DMAAPBC_PGCRED=test234-ftl DMAAPBC_DRPROV_FQDN=zldciad1vidrps00.simpledemo.openecomp.org -DMAAPBC_AAF_URL=https://aafapi.${CONT_DOMAIN}:8095/proxy/ +DMAAPBC_AAF_URL=https://aafapi.${CONT_DOMAIN}:8100/proxy/ DMAAPBC_TOPICMGR_USER=m99751@dmaapBC.openecomp.org DMAAPBC_TOPICMGR_PWD=enc:zyRL9zbI0py3rJAjMS0dFOnYfEw_mJhO @@ -119,8 +124,8 @@ DMAAPBC_PE_AAF_ENV=TBD Then the following steps could be used to pull and run the Bus Controller. (onap-nexus is just an example) ``` $ -$ docker pull nexus3.onap.org:10003/onap/dmaap/buscontroller:latest -$ 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 +$ docker pull nexus3.onap.org:10003/onap/dmaap/dmaap-bc:latest +$ 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/dmaap-bc:latest ``` ### Properties @@ -129,107 +134,8 @@ This section is intended to describe the behavior customization of Bus Controlle By default, this file is located in etc/dmaapbc.properties. However, a java argument -DConfigFile can be set to a different path. (Our kubernetes deployment relies on this and points to a configmap, for example.) -The table below lists all the settings, default values (if not set), and shows any explicit setting in ONAP oom kubernetes deployment. - -|-|-|-|-| -| Property | Description | Default | Kubernetes Setting | -|-|-|-|-| -|UseAAF | Flag for whether AAF authz API is to be used | false | false | -|-|-|-|-| -|csit | Flag for stubbing out many southbound calls in a CSIT environment | No | No | -|-|-|-|-| -|DR.provhost | FQDN of Data Router Provisioning Server (deprecated - now set via API) | notSet | dcae-drps.domain.not.set | -|-|-|-|-| -|ProvisioningURI | URI to retrieve dynamic DR configuration | /internal/prov | /internal/prov | -|-|-|-|-| -|Feed.deleteHandling | indicator for handling feed delete request | DeleteOnDR | SimulateDelete | -| | DeleteOnDR - means use the DR API to DELETE a feed. (default for backwards compatibility) | | | -| | SimulateDelete - means preserve the feed on DR (after cleaning it up), and mark as DELETED in DBCL. | | | -|-|-|-|-| -|UsePGSQL | flag indicates whether to retain data in Postgresql | false | true | -| | when false, objects will be kept in memory but will be | | | -| | lost on restart and not shared between instances | | | -|-|-|-|-| -|DB.host | FQDN or service name of Postresql host | dcae-pstg-write-ftl.domain.notset.com | dbc-pg-primary | -|-|-|-|-| -|DB.name | name of Postresql database | dmaap | | -|-|-|-|-| -|DB.schema | name of database schema | public | | -|-|-|-|-| -|DB.user | username for Postgresql access | dmaap_admin | | -|-|-|-|-| -|DB.cred | password for Postrgresql access | test234-ftl | onapdemodb | -|-|-|-|-| -|MR.multisite | Indicates if there can be multiple sites (locations) where MR is deployed | true | false | -|-|-|-|-| -|MR.CentralCname | FQDN or service name of MR (deployed in central if multilocation is true) | MRcname.not.set | message-router | -|-|-|-|-| -|MR ClientDeleteLevel | MR Client Delete thoroughness | 0 | 1 | -| | 0 = don't delete | | | -| | 1 = delete from persistent store (PG) | | | -| | 2 = delete from persistent store (PG) and authorization store (AAF) | | | -|-|-|-|-| -|MR.TopicFactoryNS | AAF namespace used to create perms for MR topics | MR.topicFactoryNS.not.set | org.onap.dmaap.mr.topicFactory | -|-|-|-|-| -|MR.TopicMgrRole | AAF Role used by Buscontroller to create topics on MR | MR.TopicMgrRole.not.set | org.onap.dmaap-bc-topic-mgr.client | -|-|-|-|-| -|MR.projectID | Value for some constructs of fully qualified topic names | 99999 | ONAP | -|-|-|-|-| -|cadi.properties | Path to CADI properties file | /opt/app/osaaf/local/org.onap.dmaap-bc.props | /opt/app/osaaf/lcoal/org.onap.dmaap-bc.props | -|-|-|-|-| -|aaf.URL | URL of the AAF server | https://authentication.domain.netset.com:8095/proxy/ | https://aaf-authz/ | -|-|-|-|-| -|aaf.TopicMgrUser | AAF Identity of Topic Mgr | noMechId@domain.netset.com | dmaap-bc-topic-mgr@dmaap-bc-topic-mgr.onap.org | -|-|-|-|-| -|aaf.TopicMgrPassword | AAF Credential for Topic Mgr | notSet | demo123456! | -|-|-|-|-| -|aaf.AdminUser | AAF Identity of user with Admin role for API namespace | noMechId@domain.netset.com | aaf_admin@people.osaaf.org | -|-|-|-|-| -|aaf.AdminPassword | AAF credential of AdminUser | notSet | demo123456! | -|-|-|-|-| -|aaf.NsOwnerIdentity | AAF Identity to be used as topic Namespace owner | notSet | aaf_admin@people.osaaf.org | -|-|-|-|-| -|CredentialCodeKeyfile | location of the codec keyfile used to decrypt passwords | LocalKey | etc/LocalKey | -| | in this properties file before they are passed to AAF | LocalKey | etc/LocalKey | -|-|-|-|-| -|AafDecryption.Class | Specifies the Class to be used for decryption | org.onap.dmaap.dbcapi.aaf.ClearDecrypt | | -|-|-|-|-| -|ApiNamespace | Root namespace for AAF perms related to dbcapi access | apiNamespace.not.set | org.onap.dmaap-bc.api | -|-|-|-|-| -|ApiPermission.Class | the Class that determines if a call to API is authorized| allow | | -|-|-|-|-| -|MM.ProvRole | AAF Role of client publishing MM prov cmds | notSet | org.onap.dmaap-bc-mm-prov.prov | -|-|-|-|-| -|MM.ProvUserMechId | AAF Identity when publishing to MM command topic | notSet | dmaap-bc-mm-prov@dmaap-bc-mm-prov.onap.org| -|-|-|-|-| -|MM.ProvUserPwd | AAF credenital for ProvUserMechId | notSet | demo123456! | -|-|-|-|-| -|MM.AgentRole | AAF Role of client susbcribing to MM command topic | notSet | org.onal.dmaap-bc-mm-prov.agent | -|-|-|-|-| -|HttpAllowed | flag indicating whether http is supported | false | true | -|-|-|-|-| -|IntHttpPort | Internal port for http service | 80 | 8080 | -|-|-|-|-| -|IntHttpsPort | Internal port for https service (0 if no cert is avail) | 443 | 8443 | -|-|-|-|-| -|ExtHttpsPort | Externally advertised port for https service (deprecated)| 443 | 443 | -|-|-|-|-| -|KeyStoreType | Format of Java keystore | jks | jks | -|-|-|-|-| -|KeyStoreFile | Path to java keystore | etc/keystore | etc/keystore | -|-|-|-|-| -|KeyStorePassword | Password for keystore | changeit | | -|-|-|-|-| -|KeyPassword | Password for private key in the https keystore | changeit | | -|-|-|-|-| -|TrustStoreType | Format of Trust Store file | jks | jks | -|-|-|-|-| -|TrustStoreFile | Path to Trust Store file | | etc/org.onap.dmaap-bc.trust.jks | -|-|-|-|-| -|TrustStorePassword | Password for Trust Store | | | -|-|-|-|-| -|QuiesceFile | Path to file which signals needs to queiesce | | etc/SHUTDOWN | -|-|-|-|-| +Refer to dbcapi/README.md for a table describing all the properties. + ### Environment Variables The following environment variables can be set in the container environment to further effect behavior: