From 092189e83c4bd470b9232380dd1a33c63a035606 Mon Sep 17 00:00:00 2001 From: Herbert Eiselt Date: Wed, 3 Apr 2019 17:24:29 +0200 Subject: SDN-R read2docs Add docs folder and project with src Change-Id: I0299c5984c747a40a8dd1e3f79479b9e9d729d50 Issue-ID: SDNC-683 Signed-off-by: Herbert Eiselt --- docs/conf.py | 496 +++++++++++++++++++++++++++++++ docs/conf.pyc | Bin 0 -> 5831 bytes docs/guides/onap-user/ONAP-SDN-R.png | Bin 0 -> 210224 bytes docs/guides/onap-user/abbreviations.rst | 32 ++ docs/guides/onap-user/connect.rst | 48 +++ docs/guides/onap-user/faq.rst | 88 ++++++ docs/guides/onap-user/home.rst | 34 +++ docs/guides/onap-user/mwtnLog.rst | 10 + docs/guides/onap-user/mwtnTest.rst | 9 + docs/guides/onap-user/pnfConfig.rst | 26 ++ docs/guides/onap-user/pnfFault.rst | 59 ++++ docs/guides/onap-user/pnfInventory.rst | 35 +++ docs/guides/onap-user/pnfMaintenance.rst | 23 ++ docs/guides/onap-user/pnfMediator.rst | 11 + docs/guides/onap-user/pnfPerformance.rst | 20 ++ docs/guides/onap-user/sdnr.rst | 21 ++ docs/index.rst | 14 + sdnr/wt/readthedocs/README.md | 4 + sdnr/wt/readthedocs/convert.sh | 31 ++ sdnr/wt/readthedocs/src/home.rst | 34 +++ sdnr/wt/readthedocs/src/index.rst | 14 + 21 files changed, 1009 insertions(+) create mode 100755 docs/conf.py create mode 100644 docs/conf.pyc create mode 100644 docs/guides/onap-user/ONAP-SDN-R.png create mode 100644 docs/guides/onap-user/abbreviations.rst create mode 100644 docs/guides/onap-user/connect.rst create mode 100644 docs/guides/onap-user/faq.rst create mode 100644 docs/guides/onap-user/home.rst create mode 100644 docs/guides/onap-user/mwtnLog.rst create mode 100644 docs/guides/onap-user/mwtnTest.rst create mode 100644 docs/guides/onap-user/pnfConfig.rst create mode 100644 docs/guides/onap-user/pnfFault.rst create mode 100644 docs/guides/onap-user/pnfInventory.rst create mode 100644 docs/guides/onap-user/pnfMaintenance.rst create mode 100644 docs/guides/onap-user/pnfMediator.rst create mode 100644 docs/guides/onap-user/pnfPerformance.rst create mode 100644 docs/guides/onap-user/sdnr.rst create mode 100644 docs/index.rst create mode 100644 sdnr/wt/readthedocs/README.md create mode 100755 sdnr/wt/readthedocs/convert.sh create mode 100644 sdnr/wt/readthedocs/src/home.rst create mode 100644 sdnr/wt/readthedocs/src/index.rst diff --git a/docs/conf.py b/docs/conf.py new file mode 100755 index 000000000..5cab846ce --- /dev/null +++ b/docs/conf.py @@ -0,0 +1,496 @@ +# -*- coding: utf-8 -*- +# +# ONAP documentation build configuration file, created by +# sphinx-quickstart on Wed Jul 19 16:25:31 2017. +# +# This file is execfile()d with the current directory set to its +# containing dir. +# +# Note that not all possible configuration values are present in this +# autogenerated file. +# +# All configuration values have a default; values that are commented out +# serve to show the default. + +import sys +import os +import shlex +#import sphinx_bootstrap_theme + +# If extensions (or modules to document with autodoc) are in another directory, +# add these directories to sys.path here. If the directory is relative to the +# documentation root, use os.path.abspath to make it absolute, like shown here. +#sys.path.insert(0, os.path.abspath('.')) + +# -- General configuration ------------------------------------------------ + +# If your documentation needs a minimal Sphinx version, state it here. +needs_sphinx = '1.5.3' + +# Add any Sphinx extension module names here, as strings. They can be +# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom +# ones. +extensions = [ + 'sphinx.ext.autodoc', + 'sphinx.ext.doctest', + 'sphinx.ext.graphviz', + 'sphinx.ext.todo', + 'sphinx.ext.imgmath', + 'sphinx.ext.viewcode', + 'sphinxcontrib.blockdiag', + 'sphinxcontrib.needs', + 'sphinxcontrib.nwdiag', + 'sphinxcontrib.seqdiag', + 'sphinx.ext.ifconfig', + 'sphinx.ext.todo', + 'sphinxcontrib.plantuml', + 'sphinxcontrib.swaggerdoc' +] + +# Font path for seqdiag +seqdiag_fontpath = '/usr/share/fonts/truetype/dejavu/DejaVuSansCondensed.ttf' +nwdiag_fontpath = '/usr/share/fonts/truetype/dejavu/DejaVuSansCondensed.ttf' + +# Add any paths that contain templates here, relative to this directory. +templates_path = ['_templates'] + +# The suffix(es) of source filenames. +# You can specify multiple suffix as a list of string: +# source_suffix = ['.rst', '.md'] +source_suffix = '.rst' + +# The encoding of source files. +#source_encoding = 'utf-8-sig' + +# The master toctree document. +master_doc = 'index' + +# General information about the project. +project = u'' +copyright = u'2019 ONAP. Licensed under Creative Commons Attribution 4.0 International License' + + +author = u'Open Network Automation Platform' + +# The version info for the project you're documenting, acts as replacement for +# |version| and |release|, also used in various other places throughout the +# built documents. +# The short X.Y version. +version = 'master branch' +# The full version, including alpha/beta/rc tags. +release = 'master branch' + +# The language for content autogenerated by Sphinx. Refer to documentation +# for a list of supported languages. +# +# This is also used if you do content translation via gettext catalogs. +# Usually you set "language" from the command line for these cases. +language = None + +# There are two options for replacing |today|: either, you set today to some +# non-false value, then it is used: +#today = '' +# Else, today_fmt is used as the format for a strftime call. +#today_fmt = '%B %d, %Y' + +# List of patterns, relative to source directory, that match files and +# directories to ignore when looking for source files. +exclude_patterns = [ + '_build' + ] + +# The reST default role (used for this markup: `text`) to use for all +# documents. +#default_role = None + +# If true, '()' will be appended to :func: etc. cross-reference text. +#add_function_parentheses = True + +# If true, the current module name will be prepended to all description +# unit titles (such as .. function::). +#add_module_names = True + +# If true, sectionauthor and moduleauthor directives will be shown in the +# output. They are ignored by default. +#show_authors = False + +# The name of the Pygments (syntax highlighting) style to use. +pygments_style = 'sphinx' + +# A list of ignored prefixes for module index sorting. +#modindex_common_prefix = [] + +# If true, keep warnings as "system message" paragraphs in the built documents. +#keep_warnings = False + +# If true, `todo` and `todoList` produce output, else they produce nothing. +todo_include_todos = True + + +# -- Options for HTML output ---------------------------------------------- + +# The theme to use for HTML and HTML Help pages. See the documentation for +# a list of builtin themes. +#html_theme = 'classic' +html_theme = 'sphinx_rtd_theme' + +# Theme options are theme-specific and customize the look and feel of a theme +# further. For a list of options available for each theme, see the +# documentation. +html_theme_options = { + 'style_nav_header_background': 'white', + 'sticky_navigation': False + } + +# Add any paths that contain custom themes here, relative to this directory. +#html_theme_path = sphinx_bootstrap_theme.get_html_theme_path() + +# The name for this set of Sphinx documents. If None, it defaults to +# " v documentation". +#html_title = None + +# A shorter title for the navigation bar. Default is the same as html_title. +#html_short_title = None + +# The name of an image file (relative to this directory) to place at the top +# of the sidebar. +html_logo = '_static/logo_onap_2017.png' + +# The name of an image file (within the static path) to use as favicon of the +# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 +# pixels large. +html_favicon = '_static/favicon.ico' + +# Add any paths that contain custom static files (such as style sheets) here, +# relative to this directory. They are copied after the builtin static files, +# so a file named "default.css" will overwrite the builtin "default.css". +html_static_path = ['_static'] + +# Add any extra paths that contain custom files (such as robots.txt or +# .htaccess) here, relative to this directory. These files are copied +# directly to the root of the documentation. +#html_extra_path = [] + +# If not '', a 'Last updated on:' timestamp is inserted at every page bottom, +# using the given strftime format. +html_last_updated_fmt = '%d-%b-%y %H:%M' + +# If true, SmartyPants will be used to convert quotes and dashes to +# typographically correct entities. +#html_use_smartypants = True + +# Custom sidebar templates, maps document names to template names. +#html_sidebars = {} + +# Additional templates that should be rendered to pages, maps page names to +# template names. +#html_additional_pages = {} + +# If false, no module index is generated. +#html_domain_indices = True + +# If false, no index is generated. +#html_use_index = True + +# If true, the index is split into individual pages for each letter. +#html_split_index = False + +# If true, links to the reST sources are added to the pages. +#html_show_sourcelink = True + +# If true, "Created using Sphinx" is shown in the HTML footer. Default is True. +html_show_sphinx = False + +# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True. +#html_show_copyright = True + +# If true, an OpenSearch description file will be output, and all pages will +# contain a tag referring to it. The value of this option must be the +# base URL from which the finished HTML is served. +#html_use_opensearch = '' + +# This is the file name suffix for HTML files (e.g. ".xhtml"). +#html_file_suffix = None + +# Language to be used for generating the HTML full-text search index. +# Sphinx supports the following languages: +# 'da', 'de', 'en', 'es', 'fi', 'fr', 'hu', 'it', 'ja' +# 'nl', 'no', 'pt', 'ro', 'ru', 'sv', 'tr' +#html_search_language = 'en' + +# A dictionary with options for the search language support, empty by default. +# Now only 'ja' uses this config value +#html_search_options = {'type': 'default'} + +# The name of a javascript file (relative to the configuration directory) that +# implements a search results scorer. If empty, the default will be used. +#html_search_scorer = 'scorer.js' + +# Output file base name for HTML help builder. +htmlhelp_basename = 'ONAPdoc' + +# -- Options for LaTeX output --------------------------------------------- + +latex_elements = { +# The paper size ('letterpaper' or 'a4paper'). +#'papersize': 'letterpaper', + +# The font size ('10pt', '11pt' or '12pt'). +#'pointsize': '10pt', + +# Additional stuff for the LaTeX preamble. +#'preamble': '', + +# Latex figure (float) alignment +#'figure_align': 'htbp', +} + +# Grouping the document tree into LaTeX files. List of tuples +# (source start file, target name, title, +# author, documentclass [howto, manual, or own class]). +latex_documents = [ + (master_doc, 'ONAP.tex', u'ONAP Documentation', + u'ONAP Contributors', 'manual'), +] + +# The name of an image file (relative to this directory) to place at the top of +# the title page. +#latex_logo = None + +# For "manual" documents, if this is true, then toplevel headings are parts, +# not chapters. +#latex_use_parts = False + +# If true, show page references after internal links. +#latex_show_pagerefs = False + +# If true, show URL addresses after external links. +#latex_show_urls = False + +# Documents to append as an appendix to all manuals. +#latex_appendices = [] + +# If false, no module index is generated. +#latex_domain_indices = True + + +# -- Options for manual page output --------------------------------------- + +# One entry per manual page. List of tuples +# (source start file, name, description, authors, manual section). +man_pages = [ + (master_doc, 'onap', u'ONAP Documentation', + [author], 1) +] + +# If true, show URL addresses after external links. +#man_show_urls = False + + +# -- Options for Texinfo output ------------------------------------------- + +# Grouping the document tree into Texinfo files. List of tuples +# (source start file, target name, title, author, +# dir menu entry, description, category) +texinfo_documents = [ + (master_doc, 'ONAP', u'ONAP Documentation', + author, 'ONAP', 'Open Network Automation Platform', + 'Platform'), +] + +# Documents to append as an appendix to all manuals. +#texinfo_appendices = [] + +# If false, no module index is generated. +#texinfo_domain_indices = True + +# How to display URL addresses: 'footnote', 'no', or 'inline'. +#texinfo_show_urls = 'footnote' + +# If true, do not generate a @detailmenu in the "Top" node's menu. +#texinfo_no_detailmenu = False + + +# -- Options for Epub output ---------------------------------------------- + +# Bibliographic Dublin Core info. +epub_title = project +epub_author = author +epub_publisher = author +epub_copyright = copyright + +# The basename for the epub file. It defaults to the project name. +#epub_basename = project + +# The HTML theme for the epub output. Since the default themes are not optimized +# for small screen space, using the same theme for HTML and epub output is +# usually not wise. This defaults to 'epub', a theme designed to save visual +# space. +#epub_theme = 'epub' + +# The language of the text. It defaults to the language option +# or 'en' if the language is not set. +#epub_language = '' + +# The scheme of the identifier. Typical schemes are ISBN or URL. +#epub_scheme = '' + +# The unique identifier of the text. This can be a ISBN number +# or the project homepage. +#epub_identifier = '' + +# A unique identification for the text. +#epub_uid = '' + +# A tuple containing the cover image and cover page html template filenames. +#epub_cover = () + +# A sequence of (type, uri, title) tuples for the guide element of content.opf. +#epub_guide = () + +# HTML files that should be inserted before the pages created by sphinx. +# The format is a list of tuples containing the path and title. +#epub_pre_files = [] + +# HTML files shat should be inserted after the pages created by sphinx. +# The format is a list of tuples containing the path and title. +#epub_post_files = [] + +# A list of files that should not be packed into the epub file. +epub_exclude_files = ['search.html'] + +# The depth of the table of contents in toc.ncx. +#epub_tocdepth = 3 + +# Allow duplicate toc entries. +#epub_tocdup = True + +# Choose between 'default' and 'includehidden'. +#epub_tocscope = 'default' + +# Fix unsupported image types using the Pillow. +#epub_fix_images = False + +# Scale large images. +#epub_max_image_width = 0 + +# How to display URL addresses: 'footnote', 'no', or 'inline'. +#epub_show_urls = 'inline' + +# If false, no index is generated. +#epub_use_index = True + +# Patterns to ignore in linkcheck builder +linkcheck_ignore = [ + r'http://$', + r'http:/$', + r'http://10\.', + r'http://127\.', + r'http://172\.[123]', + r'http://app_host:port/', + r'http://app-host:port/', + r'http://ESR_SERVICE_IP', + r'http://ESR_SERVER_IP', + r'http://hostIP:\d+/', + r'http://load-balanced-address:\d+/', + r'http://localhost', + r'http://\$msb_address/', + r'http://\$MSB_SERVER_IP:\d+/', + r'http://msb_docker_host_ip:\d+/', + r'http://MSB_IP:MSB_PORT/', + r'http://msb.onap.org', + r'http://MSB_SERVER_IP:\d+/', + r'http://org.openecomp.', + r'http://{PDP_URL}:\d+/', + r'http://servername.domain.com', + r'http://.*simpledemo.openecomp.org', + r'http://.*simpledemo.onap.org', + r'http://.*test.att.com:\d+/', + r'http://we-are-data-router.us', + r'http://we-are-message-router.us:\d+/' + r'http://www.\[host\]:\[port\]/', + r'http://yourhostname', + r'https://$', + r'https:/$', + r'https://10\.', + r'https://127\.', + r'https://172\.[123]', + r'https://aaf.onap.org', + r'https://\$CBAM_IP', + r'https://ESR_SERVICE_IP', + r'https://ESR_SERVER_IP', + r'https://msb.onap.org', + r'https://my-subscriber-app.dcae', + r'https://\$CBAM_IP:\d+/', + r'https://load-balanced-address:\d+/', + r'https://prov.datarouternew.com:8443', + r'https://.*simpledemo.openecomp.org', + r'https://.*simpledemo.onap.org', + r'https://.*test.att.com:\d+/', + r'https://we-are-data-router.us', + r'https://we-are-message-router.us:\d+/' + ] + +from docutils.parsers.rst import directives + +needs_extra_options = { + "target": directives.unchanged, + "keyword": directives.unchanged, + "introduced": directives.unchanged, + "updated": directives.unchanged, + "impacts": directives.unchanged, + "validation_mode": directives.unchanged, + "validated_by": directives.unchanged, + "test": directives.unchanged, + "test_case": directives.unchanged, + "test_file": directives.unchanged, + "notes": directives.unchanged, +} + +needs_id_regex = "^[A-Z0-9]+-[A-Z0-9]+" +needs_id_required = True +needs_title_optional = True + +needs_template_collapse = """ +.. _{{id}}: + +{% if hide == false -%} +.. role:: needs_tag +.. role:: needs_status +.. role:: needs_type +.. role:: needs_id +.. role:: needs_title + +.. rst-class:: need +.. rst-class:: need_{{type_name}} + +.. container:: need + + `{{id}}` - {{content|indent(4)}} + + .. container:: toggle + + .. container:: header + + Details + +{% if status and status|upper != "NONE" and not hide_status %} | status: :needs_status:`{{status}}`{% endif %} +{% if tags and not hide_tags %} | tags: :needs_tag:`{{tags|join("` :needs_tag:`")}}`{% endif %} +{% if keyword %} | keyword: `{{keyword}}` {% endif %} +{% if target %} | target: `{{target}}` {% endif %} +{% if introduced %} | introduced: `{{introduced}}` {% endif %} +{% if updated %} | updated: `{{updated}}` {% endif %} +{% if impacts %} | impacts: `{{impacts}}` {% endif %} +{% if validation_mode %} | validation mode: `{{validation_mode}}` {% endif %} +{% if validated_by %} | validated by: `{{validated_by}}` {% endif %} +{% if test %} | test: `{{test}}` {% endif %} +{% if test_case %} | test case: {{test_case}} {% endif %} +{% if test_file %} | test file: `{{test_file}}` {% endif %} +{% if notes %} | notes: `{{notes}}` {% endif %} + | children: :need_incoming:`{{id}}` + | parents: :need_outgoing:`{{id}}` +{% endif -%} +""" + +def setup(app): + app.add_stylesheet("css/ribbon.css") diff --git a/docs/conf.pyc b/docs/conf.pyc new file mode 100644 index 000000000..5fbd07b75 Binary files /dev/null and b/docs/conf.pyc differ diff --git a/docs/guides/onap-user/ONAP-SDN-R.png b/docs/guides/onap-user/ONAP-SDN-R.png new file mode 100644 index 000000000..cc7bd8a2a Binary files /dev/null and b/docs/guides/onap-user/ONAP-SDN-R.png differ diff --git a/docs/guides/onap-user/abbreviations.rst b/docs/guides/onap-user/abbreviations.rst new file mode 100644 index 000000000..3f4ab76d3 --- /dev/null +++ b/docs/guides/onap-user/abbreviations.rst @@ -0,0 +1,32 @@ +.. contents:: + :depth: 3 +.. + +Abbreviations +============= + ++--------------------+----------------------------------------------------------------------------------------------------------------+ +| **Abbreviation** | **Description** | ++====================+================================================================================================================+ +| A&AI | `Active and Available Inventory `__ | ++--------------------+----------------------------------------------------------------------------------------------------------------+ +| AAA | `Authentication, Authorization and Accounting `__ | ++--------------------+----------------------------------------------------------------------------------------------------------------+ +| DCAE | `Data Collection Analytics & Events `__ | ++--------------------+----------------------------------------------------------------------------------------------------------------+ +| GUI | `Graphical User Interface `__ | ++--------------------+----------------------------------------------------------------------------------------------------------------+ +| MSO | `Master Service Orchestrator `__ | ++--------------------+----------------------------------------------------------------------------------------------------------------+ +| ONAP | `Open Network Automation Platform `__ | ++--------------------+----------------------------------------------------------------------------------------------------------------+ +| SDN | `Software-defined networking `__ | ++--------------------+----------------------------------------------------------------------------------------------------------------+ +| SDN-C | `SDN-Controller `__ | ++--------------------+----------------------------------------------------------------------------------------------------------------+ +| SDN-R | `SDN-Radio `__ | ++--------------------+----------------------------------------------------------------------------------------------------------------+ +| UI | `User Interface `__ | ++--------------------+----------------------------------------------------------------------------------------------------------------+ +| UX | `User Experience `__ | ++--------------------+----------------------------------------------------------------------------------------------------------------+ diff --git a/docs/guides/onap-user/connect.rst b/docs/guides/onap-user/connect.rst new file mode 100644 index 000000000..9678dd6ff --- /dev/null +++ b/docs/guides/onap-user/connect.rst @@ -0,0 +1,48 @@ +.. contents:: + :depth: 3 +.. + +Connect +======= + +The 'Connect' application on OpenDaylight provides up-to-date +connectivity information about the wireless devices in the network. It +automatically displays new network elements and their connection status. +Despite the network elements usually automatically mount themselves, an +additional small window allows manually mounting devices/mediators. For +better understanding alarms and status, a connection status log lists +all the connection status changes of OpenDaylight mount points. + +Views +----- + +The graphical user interfaces is divided in three sections. + +Required Network Elements +~~~~~~~~~~~~~~~~~~~~~~~~~ + +Required Network Elements are physical network functions, which are +planned or expected in the network. This means the identifier, IP +addresses and its required configuration is well-known and available in +a planning database or in ONAP A&AI. + +This view also offer to manually configure/mount the device with the '+' +icon. The SDN controller will then start connecting the Netconf server. + +Unknown Network Elements +~~~~~~~~~~~~~~~~~~~~~~~~ + +Most of the physical network function support an automatic registration +procedure to the SDN controller. It may happen, that devices are +connected to the SDN Controller but not available in planning data. + +It might be a normal occurrence for very cheap devices, where an entire +planning process to too expensive. But is may also happen that the +identifier used in planning process differ from the identifier currently +configured in the device. + +Connection Status Log +~~~~~~~~~~~~~~~~~~~~~ + +The log lists the connections status changes between SDN Controller and +NetConf servers (devices). diff --git a/docs/guides/onap-user/faq.rst b/docs/guides/onap-user/faq.rst new file mode 100644 index 000000000..7c764ead2 --- /dev/null +++ b/docs/guides/onap-user/faq.rst @@ -0,0 +1,88 @@ +.. contents:: + :depth: 3 +.. + +Frequently asked questions +========================== + +Which browser should I use to operate Opendaylight SDN-R User interface? +------------------------------------------------------------------------ + +An actual version of `Google +Chromium `__ +or `Google +Chrome `__ +is recommended. + +-------------- + +How to enable detailed logs in karaf for SDN-R applications +----------------------------------------------------------- + +If you like to see more details in karaf logs for the NetConf +communication between ODL and NetConf servers (mediators/devices) please +invoke the following commands in the karaf console. + +:: + + # Logging settings (on) + log:set DEBUG org.opendaylight.mwtn + log:set TRACE org.opendaylight.netconf + log:set TRACE com.highstreet.technologies.odl.app + +Please note, setting the debug level to 'TRACE' may impact the +performance on the controller. In production environment make sure to +set back the debug level to 'INFO' as soon possible. + +:: + + # Logging settings (off) + log:set INFO org.opendaylight.mwtn + log:set INFO org.opendaylight.netconf + log:set INFO com.highstreet.technologies.odl.app + +-------------- + +Which commands should be used to analyse karaf logs? +---------------------------------------------------- + +:: + + cd $ODL_KARAF_HOME/data/log + rm *.txt + grep -anr --include=*.log* "| ERROR |" . | grep 2018 >> 01-error.txt + grep -anr --include=*.log* "RemoteDevice{" . | grep 2018 >> 02-devices.txt + grep -anr --include=*.log* "RemoteDevice{" . | grep "Unable to build schema context, unsatisfied imports" | grep 2018 >> 03-schema-issue.txt + grep -anr --include=*.log* "Matched request:" . | grep 2018 >> 04-matched-request.txt + grep -anr --include=*.log* "network-element" . | grep 2018 >> 05-network-element.txt + grep -anr --include=*.log* "urn:onf:params:xml:ns:yang:core-model" . | grep 2018 >> 06-core-module.txt + grep -anr --include=*.log* "PerformanceManagerTask" . | grep 2018 >> 07-pm-tick.txt + grep -anr --include=*.log* "Unable to read NE data for mountpoint" . | grep 2018 >> 08-unable-to-read.txt + grep -anr --include=*.log* "LKCYFL79Q01M01MSS801" . | grep 2018 >> 09-LKCYFL79Q01M01MSS801.txt + +How to report an odlux issue +---------------------------- + +If you would like to report an odlux issue which you have noticed in the +Graphical User Interface, please provide the following information: + +1. **Description**: In which application you have noticed the issue? + +2. **Environment**: + + - Which browser is used and the version of the browser. eg: *Google + chrome - version 71.0.3578.80 / Mozilla Firefox.* + - Which Operating system and version. eg: *Linux/ Windows 10 - + version 1803.* + - In which language you are using the application. + - The application URL which is available on the browser address bar. + eg: *http://hostname/odlux/index.html#/connectApp* + +3. **Expected Result**: What is the expected result you are looking for? + +4. **Actual Result**: What is the actual result you got? + +5. **Steps to reproduce**: Describe the steps to reproduce the scenario. + If possible, please provide the screenshots + +The above information helps us to analyze the problem quicker. diff --git a/docs/guides/onap-user/home.rst b/docs/guides/onap-user/home.rst new file mode 100644 index 000000000..cf8b19254 --- /dev/null +++ b/docs/guides/onap-user/home.rst @@ -0,0 +1,34 @@ + +.. contents:: + :depth: 3 +.. + +SDN controller for 'Radio' (SDN-R) +================================== + +SDN-R adds features and functionality to the OpenDaylight-based ONAP +controller 'SDN-C'. It is built on the Common Controller Framework to +control and manage wireless resources. Wireless resources are virtual +network functions (e.g. vBBU, vEPC) or physical network functions (e.g. +microwave and millimeter wave radios, eNodeB, RRH, DAS equipment). + +| SDN-R is integrated into ONAP. Therefore it is interfacing with PNFs + and VNFs and with other ONAP components, such as A&AI, DCAE and SO. +| `See abbreviations `__ + +.. figure:: ./ONAP-SDN-R.png + :alt: SDN-R in ONAP + + SDN-R in ONAP + + +.. toctree:: + :maxdepth: 1 + + connect + pnfFault + pnfMaintenance + pnfConfig + pnfPerformance + pnfInventory + pnfMediator diff --git a/docs/guides/onap-user/mwtnLog.rst b/docs/guides/onap-user/mwtnLog.rst new file mode 100644 index 000000000..dce9539bb --- /dev/null +++ b/docs/guides/onap-user/mwtnLog.rst @@ -0,0 +1,10 @@ +.. contents:: + :depth: 3 +.. + +Log +=== + +The application displays (UX) application logs. SDN-R offer a common log +server, so that PNFs or other ONAP/ECOMP components could log there data +in a common way. diff --git a/docs/guides/onap-user/mwtnTest.rst b/docs/guides/onap-user/mwtnTest.rst new file mode 100644 index 000000000..1c012fc0c --- /dev/null +++ b/docs/guides/onap-user/mwtnTest.rst @@ -0,0 +1,9 @@ +.. contents:: + :depth: 3 +.. + +Test +==== + +The view offers in a generic way data fetched from ONF-TR-532 devices +for test and debug purposes. diff --git a/docs/guides/onap-user/pnfConfig.rst b/docs/guides/onap-user/pnfConfig.rst new file mode 100644 index 000000000..f751255d4 --- /dev/null +++ b/docs/guides/onap-user/pnfConfig.rst @@ -0,0 +1,26 @@ +.. contents:: + :depth: 3 +.. + +Configuration +============= + +The application shows the actual values of all attributes of the +ONF-TR-532 for a selected physical network function (PNF). Each view of +a functional element is divide into capabilities, configuration, status, +current problem, current performance and history performance information +according to TR-532. + +A separate window is available for modifying the configuration. All +changes made are sent to the device in a single NetConf bulk request. +The operator is notified about successfully configuring the device. + +Implementation +-------------- + +The applications are implemented as OpenDaylight-DLUX web application +using the RestConf northbound interface of the SDN controller. The key +frameworks are: Maven, Angular.js, Bootstrap and UI-Grid. + +Connections status information are updated automatically due to a web +socket for notifications from OpenDaylight to the browser. diff --git a/docs/guides/onap-user/pnfFault.rst b/docs/guides/onap-user/pnfFault.rst new file mode 100644 index 000000000..ff3a1ac47 --- /dev/null +++ b/docs/guides/onap-user/pnfFault.rst @@ -0,0 +1,59 @@ +.. contents:: + :depth: 3 +.. + +Fault Management +================ + +To operate a network, it is important to get an overview about the +currently raised alarms. The application offers basic fault management +of devices supporting ONF-TR-532. The alarms are classified according to +the severity level (warning, minor, major, critical). + +Views +----- + +The graphical user interface is separated in three views. + +Current Alarms +~~~~~~~~~~~~~~ + +It list all current active faults in the network. In addition it also +list alarms sent by the SDN controller itself, which detects connections +losses to the NetConf server (connectionLossOAM) or which detects +connection loss to a devices via a mediator to a device +(connectionLossNeOAM). + +Alarm Notifications +~~~~~~~~~~~~~~~~~~~ + +As long as the view is open, it lists all alarm notification reached by +the SDN Controller. Please note that refreshing the view will start the +collection again. Previous alarm notification can be viewed in the alarm +log. + +Alarm Log +~~~~~~~~~ + +Next to the current active alarms an alarm log lists all alarm +notifications of the past. + +Implementation +-------------- + +The application has two parts. While the server is listening for NetConf +notifications to store them in the database the client retrieves the +information from the database and displays them in a grid view. + +The server synchronizes with the current alarm lists of the devices and +calculates based on raise and clear notifications the current alarm +status of the network. The current alarms are stored in a database. In +addition all Problem Notifications received by the SDN controller are +stored. There is no logic implemented on the client. + +An alarm status bar on top of each graphical user interface informs the +operator about the health status of the network. + +The OpenDaylight DLUX web application uses web sockets for updating the +graphical user interface in case of Problem Notification (devices) and +Connection Status Notifications (ODL). diff --git a/docs/guides/onap-user/pnfInventory.rst b/docs/guides/onap-user/pnfInventory.rst new file mode 100644 index 000000000..0a9bf16c7 --- /dev/null +++ b/docs/guides/onap-user/pnfInventory.rst @@ -0,0 +1,35 @@ +.. contents:: + :depth: 3 +.. + +Inventory +========= + +The application offers basic inventory management of devices supporting +ONF-TR-512. + +The view displays the inventory data of the network element - basically +serial-numbers and part-numbers are displaced according to the +containment of the equipment. + +Inventory Export: +----------------- + +As the default pagination size is set to 10, when you export the data +only first 10 rows or the first 10 filtered rows shown on the page will +be exported to a file. The inventory export allows the export of up to +1000 entries, when the pagination size is increased to 1000.  So, It is +recommended to change the pagination size 'Rows per page' to 1000 if you +want to export the complete Inventory data. + +To export the Inventory data: The behaviour is different depending on +the browser: + +a) Some browsers allows you to save the file with the predefined name + export.csv. In case your browser does not offer this function please + use 'Save as..' option and define the filename with extension csv. + +b) Some browsers saves the file automatically with the alphanumeric name + without an extension. In such case please go to the downloaded file + location and rename the file with the extension after the download. + (eg: export\_file.csv) diff --git a/docs/guides/onap-user/pnfMaintenance.rst b/docs/guides/onap-user/pnfMaintenance.rst new file mode 100644 index 000000000..9a0be0b00 --- /dev/null +++ b/docs/guides/onap-user/pnfMaintenance.rst @@ -0,0 +1,23 @@ +.. contents:: + :depth: 3 +.. + +Maintenance +=========== + +The 'Maintenance' application on the OpenDaylight provides the +information of the Network Elements which are set for Maintenance, +currently or in the future. User can manage devices to set the +maintenance mode so that no unnecessary alarms are created. When the +device is in Maintenace alarms are not forwarded to DCAE and when the +device maintenance is turned off the alarms will start flowing again. + +'Active' field in this application shows if the Network Element is in +maintenance mode currently or not. If it is 'active' it means the +Network Element is currently undergoing maintenance, If 'not active' it +means maintenance might have been set for future or maintenance is +already completed. + +Users have access to disable the Maintenance mode or change the +maintenance start and end dates at any point of time by using the +available options in actions column. diff --git a/docs/guides/onap-user/pnfMediator.rst b/docs/guides/onap-user/pnfMediator.rst new file mode 100644 index 000000000..43aefb9c0 --- /dev/null +++ b/docs/guides/onap-user/pnfMediator.rst @@ -0,0 +1,11 @@ +.. contents:: + :depth: 3 +.. + +Mediator +======== + +Some device vendors (Altiostar, CommScope, Dragonwave-X) uses the +`generic mediator +framework `__. Such mediator +offers an API to create, delete, start and stop mediator instances. diff --git a/docs/guides/onap-user/pnfPerformance.rst b/docs/guides/onap-user/pnfPerformance.rst new file mode 100644 index 000000000..9a1a8fcb5 --- /dev/null +++ b/docs/guides/onap-user/pnfPerformance.rst @@ -0,0 +1,20 @@ +.. contents:: + :depth: 3 +.. + +Performance +=========== + +Performance Monitoring values measured by the devices are necessary to +analyze and optimize the network. Therefore the application +automatically retrieves all historical performance values from the +devices and stores them in a database. The client part just retrieves +the values from the database and displays them in graphical user +interface. + +Performance history values +-------------------------- + +After selection of a connected PNF supporting ONF-TR-532 and an physical +interface, the application collects the received and centralized stored +performance values for this interface and displays them in table views. diff --git a/docs/guides/onap-user/sdnr.rst b/docs/guides/onap-user/sdnr.rst new file mode 100644 index 000000000..804556b16 --- /dev/null +++ b/docs/guides/onap-user/sdnr.rst @@ -0,0 +1,21 @@ +.. contents:: + :depth: 3 +.. + +SDN controller for 'Radio' (SDN-R) +================================== + +SDN-R adds features and functionality to the OpenDaylight-based ONAP +controller 'SDN-C'. It is built on the Common Controller Framework to +control and manage wireless resources. Wireless resources are virtual +network functions (e.g. vBBU, vEPC) or physical network functions (e.g. +microwave and millimeter wave radios, eNodeB, RRH, DAS equipment). + +| SDN-R is integrated into ONAP. Therefore it is interfacing with PNFs + and VNFs and with other ONAP components, such as A&AI, DCAE and SO. +| `See abbreviations `__ + +.. figure:: ./ONAP-SDN-R.png + :alt: SDN-R in ONAP + + SDN-R in ONAP diff --git a/docs/index.rst b/docs/index.rst new file mode 100644 index 000000000..78f6549f7 --- /dev/null +++ b/docs/index.rst @@ -0,0 +1,14 @@ +================= +SDN-R Online help +================= + +Below are the references for SDN-R User Documentation +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + + +.. toctree:: + :maxdepth: 1 + + guides/onap-user/home + guides/onap-user/faq + guides/onap-user/abbreviations diff --git a/sdnr/wt/readthedocs/README.md b/sdnr/wt/readthedocs/README.md new file mode 100644 index 000000000..9613eab0f --- /dev/null +++ b/sdnr/wt/readthedocs/README.md @@ -0,0 +1,4 @@ +SDNR/WT specific scripts to generate ReadTheDocs content + +docs - destination of documentation files to be placed in a SDNC repository +sdnr/wt/readthedocs - scripts and scr data for creation of documentation. Other sources are located in related implementation directory diff --git a/sdnr/wt/readthedocs/convert.sh b/sdnr/wt/readthedocs/convert.sh new file mode 100755 index 000000000..5ab3d7576 --- /dev/null +++ b/sdnr/wt/readthedocs/convert.sh @@ -0,0 +1,31 @@ +#!/bin/bash + +BASEDIR=$(dirname "$0")"/../../../" +PATH_HELPSERVER_RES=$BASEDIR"sdnr/wt/helpserver/provider/src/main/resources/help/" +PATH_DOC_DST=$BASEDIR"docs/" +PATH_DOC_USERDOC_DST=$PATH_DOC_DST"guides/onap-user/" + +echo "==================Find .md files in helpserver====================================" +markdown_files=$(find $PATH_HELPSERVER_RES"sdnr" -type f -iname "*.md") +echo "$markdown_files[@]" + +echo "=============Converting md to rst files==================================" +for file in ${markdown_files[@]}; do + append_name=`echo "$file" | awk -F"/" '{print $(NF-1)}'` + f="$(basename -- $file)" + if [ "${f,,}" = "readme.md" ]; then + rstfile=$append_name".rst" + else + rstfile=${f%.md}".rst" + fi + + echo "$file to $PATH_DOC_USERDOC_DST$rstfile" + pandoc -s --toc -f markdown -t rst $file > $PATH_DOC_USERDOC_DST"$rstfile" +done + +cp -r "$BASEDIR"sdnr/wt/readthedocs/src/home.rst "$BASEDIR"docs/guides/onap-user/ +cp -r "$BASEDIR"sdnr/wt/readthedocs/src/index.rst "$BASEDIR"docs/ + +echo "================Creating html==========================================" +/usr/local/bin/sphinx-build -b html $PATH_DOC_DST /home/jack/public_html/sdnr-trial/ + diff --git a/sdnr/wt/readthedocs/src/home.rst b/sdnr/wt/readthedocs/src/home.rst new file mode 100644 index 000000000..cf8b19254 --- /dev/null +++ b/sdnr/wt/readthedocs/src/home.rst @@ -0,0 +1,34 @@ + +.. contents:: + :depth: 3 +.. + +SDN controller for 'Radio' (SDN-R) +================================== + +SDN-R adds features and functionality to the OpenDaylight-based ONAP +controller 'SDN-C'. It is built on the Common Controller Framework to +control and manage wireless resources. Wireless resources are virtual +network functions (e.g. vBBU, vEPC) or physical network functions (e.g. +microwave and millimeter wave radios, eNodeB, RRH, DAS equipment). + +| SDN-R is integrated into ONAP. Therefore it is interfacing with PNFs + and VNFs and with other ONAP components, such as A&AI, DCAE and SO. +| `See abbreviations `__ + +.. figure:: ./ONAP-SDN-R.png + :alt: SDN-R in ONAP + + SDN-R in ONAP + + +.. toctree:: + :maxdepth: 1 + + connect + pnfFault + pnfMaintenance + pnfConfig + pnfPerformance + pnfInventory + pnfMediator diff --git a/sdnr/wt/readthedocs/src/index.rst b/sdnr/wt/readthedocs/src/index.rst new file mode 100644 index 000000000..78f6549f7 --- /dev/null +++ b/sdnr/wt/readthedocs/src/index.rst @@ -0,0 +1,14 @@ +================= +SDN-R Online help +================= + +Below are the references for SDN-R User Documentation +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + + +.. toctree:: + :maxdepth: 1 + + guides/onap-user/home + guides/onap-user/faq + guides/onap-user/abbreviations -- cgit 1.2.3-korg