aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.readthedocs.yaml7
-rw-r--r--docs/_static/css/ribbon.css4
-rw-r--r--docs/apis/api.rst7
-rw-r--r--docs/apis/swagger.json6
-rw-r--r--docs/conf.py65
-rw-r--r--docs/installation.rst28
-rw-r--r--docs/release-notes.rst2
-rw-r--r--docs/requirements-docs.txt6
-rw-r--r--docs/security.rst2
-rw-r--r--docs/tox.ini30
10 files changed, 108 insertions, 49 deletions
diff --git a/.readthedocs.yaml b/.readthedocs.yaml
index 3797dc8..fa15a7c 100644
--- a/.readthedocs.yaml
+++ b/.readthedocs.yaml
@@ -2,12 +2,8 @@
# .readthedocs.yml
# Read the Docs configuration file
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details
-# Required
version: 2
-formats:
- - htmlzip
-
build:
image: latest
@@ -16,5 +12,8 @@ python:
install:
- requirements: docs/requirements-docs.txt
+submodules:
+ include: all
+
sphinx:
configuration: docs/conf.py
diff --git a/docs/_static/css/ribbon.css b/docs/_static/css/ribbon.css
index 6008cb1..7342cdc 100644
--- a/docs/_static/css/ribbon.css
+++ b/docs/_static/css/ribbon.css
@@ -59,5 +59,5 @@
/* fix width of the screen */
.wy-nav-content {
- max-width: none;
-}
+ max-width: 800px;
+} \ No newline at end of file
diff --git a/docs/apis/api.rst b/docs/apis/api.rst
index 7379556..ffd711e 100644
--- a/docs/apis/api.rst
+++ b/docs/apis/api.rst
@@ -28,7 +28,7 @@ Description
dcaeLocation. MR_Clients generally communicate to the
MR_Cluster at the same dcaeLocation. Replication of messages
between MR_Clusters is accomplished by MR Bridge, which is
- provioned by DMaaP Bus Controller based on Topic attributes.
+ provisioned by DMaaP Bus Controller based on Topic attributes.
Therefore, the role of DMaaP Bus Controller is to support other
DCAE infrastructure components to dynamically provision DMaaP
@@ -64,13 +64,12 @@ Base URL
~~~~~~~~
http://www.[host]:[port]/webapi
-https://www.[host]:[port]/webapi
BRIDGE
~~~~~~
-Endpoint for retreiving MR Bridge metrics
+Endpoint for retrieving MR Bridge metrics
@@ -4031,7 +4030,7 @@ TOPICS
~~~~~~
-Endpoint for retreiving MR Topics
+Endpoint for retrieving MR Topics
diff --git a/docs/apis/swagger.json b/docs/apis/swagger.json
index ceb041f..742006b 100644
--- a/docs/apis/swagger.json
+++ b/docs/apis/swagger.json
@@ -1,7 +1,7 @@
{
"swagger" : "2.0",
"info" : {
- "description" : "provides an API for OpenDCAE components which need to provision\n\t\t\t\t\t\t\t\t\tunderlying DMaaP technologies (Data Router and Message Router).\n\t\t\t\t\t\t\t\t\tPrimary clients for this API are anticipated to be the OpenDCAE\n\t\t\t\t\t\t\t\t\tController, OpenDCAE Orchestrator, OpenDCAE Inventory and the\n\t\t\t\t\t\t\t\t\tECOMP Portal.\n\n\t\t\t\t\t\t\t\t\tObjects managed by DMaaP are deployed in a dcaeLocation which is a\n\t\t\t\t\t\t\t\t\tunique identifier for an OpenStack tenant for a dcaeLayer,\n\t\t\t\t\t\t\t\t\topendcae-central (aka ecomp) or opendcae-local-ntc (aka edge).\n\n\t\t\t\t\t\t\t\t\tA dcaeEnvironment (e.g. FTL or prod) has a single DMaaP. A\n\t\t\t\t\t\t\t\t\tDMaaP is managed by a one or more stateless DMaaP Bus\n\t\t\t\t\t\t\t\t\tController(s), though Bus Controller relies on PGaaS for\n\t\t\t\t\t\t\t\t\tpersistence. Each DMaaP has a single instance of Data Router,\n\t\t\t\t\t\t\t\t\twhich has 1 or more DR_Nodes deployed at each dcaeLocation. DR\n\t\t\t\t\t\t\t\t\tClients of type DR_Pub generally publish to a DR_Node that is\n\t\t\t\t\t\t\t\t\tlocal to its dcaeLocation. Routing for a Feed is determined by\n\t\t\t\t\t\t\t\t\tthe dcaelocation of its DR_Sub clients.\n\n\t\t\t\t\t\t\t\t\tA DMaaP may have many Message Router instances. Each instance is\n\t\t\t\t\t\t\t\t\tdeployed as an MR_Cluster. One MR_Cluster is deployed at each\n\t\t\t\t\t\t\t\t\tdcaeLocation. MR_Clients generally communicate to the\n\t\t\t\t\t\t\t\t\tMR_Cluster at the same dcaeLocation. Replication of messages\n\t\t\t\t\t\t\t\t\tbetween MR_Clusters is accomplished by MR Bridge, which is\n\t\t\t\t\t\t\t\t\tprovioned by DMaaP Bus Controller based on Topic attributes.\n\n\t\t\t\t\t\t\t\t\tTherefore, the role of DMaaP Bus Controller is to support other\n\t\t\t\t\t\t\t\t\tDCAE infrastructure components to dynamically provision DMaaP\n\t\t\t\t\t\t\t\t\tservices on behalf of DMaaP clients, and to assist in any\n\t\t\t\t\t\t\t\t\tmanagement or discovery activity of its clients.\n\n\t\t\t\t\t\t\t\t\tA convention of this API is to return JSON responses per\n\t\t\t\t\t\t\t\t\tOpenStack style.",
+ "description" : "provides an API for OpenDCAE components which need to provision\n\t\t\t\t\t\t\t\t\tunderlying DMaaP technologies (Data Router and Message Router).\n\t\t\t\t\t\t\t\t\tPrimary clients for this API are anticipated to be the OpenDCAE\n\t\t\t\t\t\t\t\t\tController, OpenDCAE Orchestrator, OpenDCAE Inventory and the\n\t\t\t\t\t\t\t\t\tECOMP Portal.\n\n\t\t\t\t\t\t\t\t\tObjects managed by DMaaP are deployed in a dcaeLocation which is a\n\t\t\t\t\t\t\t\t\tunique identifier for an OpenStack tenant for a dcaeLayer,\n\t\t\t\t\t\t\t\t\topendcae-central (aka ecomp) or opendcae-local-ntc (aka edge).\n\n\t\t\t\t\t\t\t\t\tA dcaeEnvironment (e.g. FTL or prod) has a single DMaaP. A\n\t\t\t\t\t\t\t\t\tDMaaP is managed by a one or more stateless DMaaP Bus\n\t\t\t\t\t\t\t\t\tController(s), though Bus Controller relies on PGaaS for\n\t\t\t\t\t\t\t\t\tpersistence. Each DMaaP has a single instance of Data Router,\n\t\t\t\t\t\t\t\t\twhich has 1 or more DR_Nodes deployed at each dcaeLocation. DR\n\t\t\t\t\t\t\t\t\tClients of type DR_Pub generally publish to a DR_Node that is\n\t\t\t\t\t\t\t\t\tlocal to its dcaeLocation. Routing for a Feed is determined by\n\t\t\t\t\t\t\t\t\tthe dcaelocation of its DR_Sub clients.\n\n\t\t\t\t\t\t\t\t\tA DMaaP may have many Message Router instances. Each instance is\n\t\t\t\t\t\t\t\t\tdeployed as an MR_Cluster. One MR_Cluster is deployed at each\n\t\t\t\t\t\t\t\t\tdcaeLocation. MR_Clients generally communicate to the\n\t\t\t\t\t\t\t\t\tMR_Cluster at the same dcaeLocation. Replication of messages\n\t\t\t\t\t\t\t\t\tbetween MR_Clusters is accomplished by MR Bridge, which is\n\t\t\t\t\t\t\t\t\tprovisioned by DMaaP Bus Controller based on Topic attributes.\n\n\t\t\t\t\t\t\t\t\tTherefore, the role of DMaaP Bus Controller is to support other\n\t\t\t\t\t\t\t\t\tDCAE infrastructure components to dynamically provision DMaaP\n\t\t\t\t\t\t\t\t\tservices on behalf of DMaaP clients, and to assist in any\n\t\t\t\t\t\t\t\t\tmanagement or discovery activity of its clients.\n\n\t\t\t\t\t\t\t\t\tA convention of this API is to return JSON responses per\n\t\t\t\t\t\t\t\t\tOpenStack style.",
"version" : "1.1.0",
"title" : "DMaaP Bus Controller REST API",
"termsOfService" : "http://www.apache.org/licenses/LICENSE-2.0",
@@ -26,7 +26,7 @@
"description" : "Endpoint for a Message Router servers in a Cluster configuration"
}, {
"name" : "bridge",
- "description" : "Endpoint for retreiving MR Bridge metrics"
+ "description" : "Endpoint for retrieving MR Bridge metrics"
}, {
"name" : "dcaeLocations",
"description" : "an OpenStack tenant purposed for OpenDCAE (i.e. where OpenDCAE components might be deployed)"
@@ -47,7 +47,7 @@
"description" : "Endpoint for this instance of DBCL. Returns health info."
}, {
"name" : "topics",
- "description" : "Endpoint for retreiving MR Topics"
+ "description" : "Endpoint for retrieving MR Topics"
} ],
"schemes" : [ "http", "https" ],
"paths" : {
diff --git a/docs/conf.py b/docs/conf.py
index bd96005..cb0de84 100644
--- a/docs/conf.py
+++ b/docs/conf.py
@@ -1,27 +1,58 @@
-from docs_conf.conf import *
+project = "onap"
+release = "master"
+version = "master"
-master_doc = 'index'
+author = "Open Network Automation Platform"
+# yamllint disable-line rule:line-length
+copyright = "ONAP. Licensed under Creative Commons Attribution 4.0 International License"
-intersphinx_mapping = {}
+pygments_style = "sphinx"
+html_theme = "sphinx_rtd_theme"
+html_theme_options = {
+ "style_nav_header_background": "white",
+ "sticky_navigation": "False" }
+html_logo = "_static/logo_onap_2017.png"
+html_favicon = "_static/favicon.ico"
+html_static_path = ["_static"]
+html_show_sphinx = False
-linkcheck_ignore = [
- 'http://localhost',
- 'https://example.com',
- 'about:config',
- # this URL is not directly reachable and must be configured in the system hosts file.
- 'https://portal.api.simpledemo.onap.org:30225/ONAPPORTAL/login.htm',
- # anchor issues
- 'https://docs.onap.org/projects/onap-integration/en/latest/docs_usecases_release.html#.*',
- 'https://docs.linuxfoundation.org/docs/communitybridge/easycla/contributors/contribute-to-a-gerrit-project#.*',
- 'https://docs.onap.org/projects/onap-integration/en/latest/docs_robot.html#docs-robot',
- 'https://docs.onap.org/projects/onap-integration/en/latest/docs_usecases_release.html#docs-usecases-release',
- 'https://docs.onap.org/projects/onap-integration/en/latest/docs_usecases.html#docs-usecases',
- 'https://docs.onap.org/projects/onap-integration/en/latest/usecases/release_non_functional_requirements.html#release-non-functional-requirements',
+extensions = [
+ 'sphinx.ext.intersphinx',
+ 'sphinx.ext.graphviz',
+ 'sphinxcontrib.blockdiag',
+ 'sphinxcontrib.seqdiag',
+ 'sphinxcontrib.swaggerdoc',
+ 'sphinxcontrib.plantuml'
]
+#
+# Map to 'latest' if this file is used in 'latest' (master) 'doc' branch.
+# Change to {releasename} after you have created the new 'doc' branch.
+#
-html_last_updated_fmt = '%d-%b-%y %H:%M'
+branch = 'latest'
+
+intersphinx_mapping = {}
+doc_url = 'https://docs.onap.org/projects'
+master_doc = 'index'
+exclude_patterns = ['.tox']
+
+spelling_word_list_filename='spelling_wordlist.txt'
+spelling_lang = "en_GB"
+
+#
+# Example:
+# intersphinx_mapping['onap-aai-aai-common'] = ('{}/onap-aai-aai-common/en/%s'.format(doc_url) % branch, None)
+#
+
+html_last_updated_fmt = '%d-%b-%y %H:%M'
def setup(app):
app.add_css_file("css/ribbon.css")
+
+linkcheck_ignore = [
+ r'http://localhost:\d+/',
+ r'http://www\.\[host]:\[port]/webapi',
+ r'https://gerrit\.onap\.org/'
+] \ No newline at end of file
diff --git a/docs/installation.rst b/docs/installation.rst
index cee606c..df578e5 100644
--- a/docs/installation.rst
+++ b/docs/installation.rst
@@ -24,49 +24,69 @@ Customizing the Bus Controller configuration
The Bus Controller is highly configurable, but by default has settings that should work for a standard ONAP oom deployment.
However, if some customization is desired, there are places to change behavior:
-1) The --namespace argument of the helm install step is also refernced to compose the topic namespace used. i.e. the value is appended to org.onap.dmaap. Since Message Router uses org.onap.dmaap.mr by default, we also use --namespace=mr. But this can be changed to a value that matches a different deployment of MR.
+1) The --namespace argument of the helm install step is also referenced to compose the topic namespace used. i.e. the value is appended to org.onap.dmaap. Since Message Router uses org.onap.dmaap.mr by default, we also use --namespace=mr. But this can be changed to a value that matches a different deployment of MR.
2) oom/kubernetes/dmaap/charts/dmaap-bus-controller/values.yaml contains the set of tags used within the charts. These can be modified if necessary.
3) oom/kubernetes/dmaap/charts/dmaap-bus-controller/resources/config/buscontroller.env contains some environment settings for the container. These can be modified. For example, to indicate that AAF integration should be enabled, set USE_AAF=true in this file.
-4) oom/kubernetes/dmaap/charts/dmaap-bus-controller/resources/config/dmaapbc.properties contains many properties which can be modified. For example, if a differerent Postgresql instance needed to be used, the value could be specified here.
+4) oom/kubernetes/dmaap/charts/dmaap-bus-controller/resources/config/dmaapbc.properties contains many properties which can be modified. For example, if a different Postgresql instance needed to be used, the value could be specified here.
Steps for local development and test
------------------------------------
On Intel dev machine, in terminal (> indicates prompt) :
1) Build buscontroller images
+
> git clone https://gerrit.onap.org/r/dmaap/buscontroller
- anonymous http, can't push changes
+
> cd buscontroller
+
> mvn clean install -P docker
+
- builds dmaap-bc and dbc-client images
+
2) Run tests
+
> cd dmaap-bc/src/main/resources/
+
> cp docker-databus-controller.conf /var/tmp/
+
- set docker preferences/file sharing to access /var/tmp
+
- edit docker-compose.yml
- - remove "nexus3.onap.org:10001/" from dmaap-bc:image: and dbc-client:image: to
- use local images
+
+ - remove "nexus3.onap.org:10001/" from dmaap-bc:image: and dbc-client:image: to use local images
+
> docker-compose up -d
- create sample.txt file (as above)(content of file not important)
+
> curl http://localhost:30241/webapi/bridge
On Arm:
1) Build buscontroller images
+
> git clone https://gerrit.onap.org/r/dmaap/buscontroller
- anonymous http, can't push changes
+
> cd buscontroller
+
> mvn clean install -P docker -Ddocker.pull.registry=docker.io
- ensure we pull Arm version of base image
+
2) Run tests
+
> cd dmaap-bc/src/main/resources/
+
> cp docker-databus-controller.conf /var/tmp/
- set docker preferences/file sharing to access /var/tmp
+
- edit docker-compose.yml
- remove "nexus3.onap.org:10001/" from dmaap-bc:image: and dbc-client:image: to
use local images
- replace 'crunchydata/crunchy-postgres:centos7-10.4-2.0.0' with
multi-platform 'postgres:9.6-alpine' normative image
+
> docker-compose up -d
- create sample.txt file (as above)(content of file not important)
+
> curl http://localhost:30241/webapi/bridge
diff --git a/docs/release-notes.rst b/docs/release-notes.rst
index c689bdb..fff6cf7 100644
--- a/docs/release-notes.rst
+++ b/docs/release-notes.rst
@@ -275,7 +275,7 @@ Release Data
New features
------------
-* Updated log4j (Listed in "Known Vulternabilities" below) - DMAAP-1515
+* Updated log4j (Listed in "Known Vulnerabilities" below) - DMAAP-1515
* Update Project Lead details - DMAAP-1538
Known Limitations, Issues and Workarounds
diff --git a/docs/requirements-docs.txt b/docs/requirements-docs.txt
index 3b3441a..ba3e0ec 100644
--- a/docs/requirements-docs.txt
+++ b/docs/requirements-docs.txt
@@ -1,3 +1,7 @@
-lfdocs-conf
sphinx>=4.2.0 # BSD
sphinx-rtd-theme>=1.0.0 # MIT
+sphinxcontrib-blockdiag # BSD
+sphinxcontrib-seqdiag # BSD
+sphinxcontrib-swaggerdoc
+sphinxcontrib-spelling
+sphinxcontrib-plantuml \ No newline at end of file
diff --git a/docs/security.rst b/docs/security.rst
index aab2c3d..6c648cd 100644
--- a/docs/security.rst
+++ b/docs/security.rst
@@ -203,7 +203,7 @@ AAF configuration
-----------------
Usage of AAF can be turned on/off by setting ``UseAAF`` flag to ``true/false`` in the ``dmaapbc.properties`` file. By default AAF usage is turned on.
-Property ``cadi.properties`` points to absolute path of the property file generated by AAF for the DmaaP BC application (``dmaap-bc@dmaap-bc.onap.org`` user).
+Property ``cadi.properties`` points to absolute path of the property file generated by AAF for the DMaaP BC application (``dmaap-bc@dmaap-bc.onap.org`` user).
This file is one of the AAF configuration files enabling authentication and authorization for DMaaP BC REST API.
.. code-block:: bash
diff --git a/docs/tox.ini b/docs/tox.ini
index 49bbe01..e9a27f5 100644
--- a/docs/tox.ini
+++ b/docs/tox.ini
@@ -1,6 +1,6 @@
[tox]
minversion = 1.6
-envlist = docs,
+envlist = docs,docs-linkcheck,docs-spellcheck
skipsdist = true
[testenv:docs]
@@ -8,18 +8,24 @@ basepython = python3.8
deps =
-r{toxinidir}/requirements-docs.txt
-chttps://raw.githubusercontent.com/openstack/requirements/stable/yoga/upper-constraints.txt
- -chttps://git.onap.org/doc/plain/etc/upper-constraints.onap.txt
+ -chttps://git.onap.org/doc/plain/etc/upper-constraints.onap.txt?h=master
commands =
- sphinx-build -b html -n -d {envtmpdir}/doctrees ./ {toxinidir}/_build/html
- echo "Generated docs available in {toxinidir}/_build/html"
-whitelist_externals =
- echo
- git
- sh
+ sphinx-build -W -q -b html -n -d {envtmpdir}/doctrees {toxinidir} {toxinidir}/_build/html
[testenv:docs-linkcheck]
basepython = python3.8
-#deps = -r{toxinidir}/requirements-docs.txt
-commands = echo "Link Checking not enforced"
-#commands = sphinx-build -b linkcheck -d {envtmpdir}/doctrees ./ {toxinidir}/_build/linkcheck
-whitelist_externals = echo
+deps =
+ -r{toxinidir}/requirements-docs.txt
+ -chttps://raw.githubusercontent.com/openstack/requirements/stable/yoga/upper-constraints.txt
+ -chttps://git.onap.org/doc/plain/etc/upper-constraints.onap.txt?h=master
+commands =
+ sphinx-build -W -q -b linkcheck -d {envtmpdir}/doctrees {toxinidir} {toxinidir}/_build/linkcheck
+
+[testenv:docs-spellcheck]
+basepython = python3.8
+deps =
+ -r{toxinidir}/requirements-docs.txt
+ -chttps://raw.githubusercontent.com/openstack/requirements/stable/yoga/upper-constraints.txt
+ -chttps://git.onap.org/doc/plain/etc/upper-constraints.onap.txt?h=master
+commands =
+ sphinx-build -q -b spelling -d {envtmpdir}/doctrees {toxinidir} {toxinidir}/_build/spellcheck \ No newline at end of file