Merge "Add reference to OSA repo from main documentation page"
authorThomas Kulik <thomas.kulik@telekom.de>
Mon, 3 May 2021 06:57:12 +0000 (06:57 +0000)
committerGerrit Code Review <gerrit@onap.org>
Mon, 3 May 2021 06:57:12 +0000 (06:57 +0000)
15 files changed:
INFO.yaml
docs/conf.py
docs/conf.yaml
docs/guides/onap-developer/architecture/media/ONAP-architecture.png
docs/guides/onap-developer/architecture/media/ONAP-fncview.png [changed mode: 0644->0755]
docs/guides/onap-developer/architecture/onap-architecture.rst
docs/guides/onap-developer/developing/index.rst
docs/guides/onap-operator/settingup/index.rst
docs/release-notes.rst
docs/release/index.rst
docs/release/releaserepos.rst
tools/checkdocs.sh
tools/wiki_lifecycle_state_210409.txt [new file with mode: 0644]
tools/wiki_lifecycle_state_210410.txt [new file with mode: 0644]
tox.ini

index 5cf0706..1b30609 100644 (file)
--- a/INFO.yaml
+++ b/INFO.yaml
@@ -4,11 +4,11 @@ project_creation_date: '2017-06-14'
 lifecycle_state: 'Incubation'
 project_category: ''
 project_lead: &onap_doc_ptl
-    name: 'Sofia Wallin'
-    email: 'sofia.wallin@est.tech'
-    id: 'sofiawallin'
-    company: 'Ericsson Software Technology'
-    timezone: 'Europe/Stockholm'
+    name: 'Thomas Kulik'
+    email: 'thomas.kulik@telekom.de'
+    id: 'thmsdt'
+    company: 'Deutsche Telekom'
+    timezone: 'Europe/Berlin'
 primary_contact: *onap_doc_ptl
 issue_tracking:
     type: 'jira'
@@ -45,12 +45,12 @@ committers:
       email: 'andreas-geissler@telekom.de'
       company: 'Deutsche Telekom'
       id: 'andreasgeissler'
-      timezone: 'Germany/Cologne'
+      timezone: 'Germany/Berlin'
     - name: 'Thomas Kulik'
       email: 'thomas.kulik@telekom.de'
       company: 'Deutsche Telekom'
-      id: 'thomaskulik'
-      timezone: 'Germany/Cologne'
+      id: 'thmsdt'
+      timezone: 'Germany/Berlin'
 tsc:
     approval: 'https://lists.onap.org/pipermail/onap-tsc'
     changes:
index ed2c802..25749b3 100644 (file)
@@ -11,89 +11,97 @@ linkcheck_ignore = [
 
 intersphinx_mapping = {}
 
-intersphinx_mapping['onap-aaf-authz'] = ('{}/onap-aaf-authz/en/%s'.format(doc_url) % branch, None)
-intersphinx_mapping['onap-aaf-sms'] = ('{}/onap-aaf-sms/en/%s'.format(doc_url) % branch, None)
+# Latest (change to branch)
 intersphinx_mapping['onap-aai-aai-common'] = ('{}/onap-aai-aai-common/en/%s'.format(doc_url) % branch, None)
-intersphinx_mapping['onap-aai-event-client'] = ('{}/onap-aai-event-client/en/%s'.format(doc_url) % branch, None)
-intersphinx_mapping['onap-aai-esr-gui'] = ('{}/onap-aai-esr-gui/en/%s'.format(doc_url) % branch, None)
-intersphinx_mapping['onap-aai-esr-server'] = ('{}/onap-aai-esr-server/en/%s'.format(doc_url) % branch, None)
 intersphinx_mapping['onap-aai-sparky-be'] = ('{}/onap-aai-sparky-be/en/%s'.format(doc_url) % branch, None)
-intersphinx_mapping['onap-appc'] = ('{}/onap-appc/en/%s'.format(doc_url) % branch, None)
-intersphinx_mapping['onap-appc-deployment'] = ('{}/onap-appc-deployment/en/%s'.format(doc_url) % branch, None)
-intersphinx_mapping['onap-ccsdk-apps'] = ('{}/onap-ccsdk-apps/en/%s'.format(doc_url) % branch, None)
 intersphinx_mapping['onap-ccsdk-cds'] = ('{}/onap-ccsdk-cds/en/%s'.format(doc_url) % branch, None)
-intersphinx_mapping['onap-ccsdk-dashboard'] = ('{}/onap-ccsdk-dashboard/en/%s'.format(doc_url) % branch, None)
-intersphinx_mapping['onap-ccsdk-distribution'] = ('{}/onap-ccsdk-distribution/en/%s'.format(doc_url) % branch, None)
 intersphinx_mapping['onap-ccsdk-features'] = ('{}/onap-ccsdk-features/en/%s'.format(doc_url) % branch, None)
+intersphinx_mapping['onap-ccsdk-distribution'] = ('{}/onap-ccsdk-distribution/en/%s'.format(doc_url) % branch, None)
 intersphinx_mapping['onap-ccsdk-oran'] = ('{}/onap-ccsdk-oran/en/%s'.format(doc_url) % branch, None)
-intersphinx_mapping['onap-ccsdk-platform-plugins'] = (
-    '{}/onap-ccsdk-platform-plugins/en/%s'.format(doc_url) % branch, None)
 intersphinx_mapping['onap-cli'] = ('{}/onap-cli/en/%s'.format(doc_url) % branch, None)
 intersphinx_mapping['onap-cps'] = ('{}/onap-cps/en/%s'.format(doc_url) % branch, None)
 intersphinx_mapping['onap-dcaegen2'] = ('{}/onap-dcaegen2/en/%s'.format(doc_url) % branch, None)
-intersphinx_mapping['onap-dmaap-dbcapi'] = ('{}/onap-dmaap-dbcapi/en/%s'.format(doc_url) % branch, None)
-intersphinx_mapping['onap-dmaap-buscontroller'] = ('{}/onap-dmaap-buscontroller/en/%s'.format(doc_url) % branch, None)
-intersphinx_mapping['onap-dmaap-datarouter'] = ('{}/onap-dmaap-datarouter/en/%s'.format(doc_url) % branch, None)
 intersphinx_mapping['onap-dmaap-messagerouter-messageservice'] = (
     '{}/onap-dmaap-messagerouter-messageservice/en/%s'.format(doc_url) % branch, None)
+intersphinx_mapping['onap-dmaap-buscontroller'] = ('{}/onap-dmaap-buscontroller/en/%s'.format(doc_url) % branch, None)
+intersphinx_mapping['onap-dmaap-datarouter'] = ('{}/onap-dmaap-datarouter/en/%s'.format(doc_url) % branch, None)
+intersphinx_mapping['onap-dmaap-dbcapi'] = ('{}/onap-dmaap-dbcapi/en/%s'.format(doc_url) % branch, None)
 intersphinx_mapping['onap-externalapi-nbi'] = ('{}/onap-externalapi-nbi/en/%s'.format(doc_url) % branch, None)
 intersphinx_mapping['onap-holmes-engine-management'] = (
     '{}/onap-holmes-engine-management/en/%s'.format(doc_url) % branch, None)
 intersphinx_mapping['onap-holmes-rule-management'] = (
     '{}/onap-holmes-rule-management/en/%s'.format(doc_url) % branch, None)
 intersphinx_mapping['onap-integration'] = ('{}/onap-integration/en/%s'.format(doc_url) % branch, None)
-intersphinx_mapping['onap-logging-analytics'] = ('{}/onap-logging-analytics/en/%s'.format(doc_url) % branch, None)
-intersphinx_mapping['onap-logging-analytics-pomba-pomba-audit-common'] = (
-    '{}/onap-logging-analytics-pomba-pomba-audit-common/en/%s'.format(doc_url) % branch, None)
 intersphinx_mapping['onap-modeling-etsicatalog'] = ('{}/onap-modeling-etsicatalog/en/%s'.format(doc_url) % branch, None)
-intersphinx_mapping['onap-modeling-toscaparsers'] = (
-    '{}/onap-modeling-toscaparsers/en/%s'.format(doc_url) % branch, None)
 intersphinx_mapping['onap-modeling-modelspec'] = ('{}/onap-modeling-modelspec/en/%s'.format(doc_url) % branch, None)
-intersphinx_mapping['onap-msb-apigateway'] = ('{}/onap-msb-apigateway/en/%s'.format(doc_url) % branch, None)
-intersphinx_mapping['onap-msb-discovery'] = ('{}/onap-msb-discovery/en/%s'.format(doc_url) % branch, None)
-intersphinx_mapping['onap-msb-swagger-sdk'] = ('{}/onap-msb-swagger-sdk/en/%s'.format(doc_url) % branch, None)
-intersphinx_mapping['onap-msb-java-sdk'] = ('{}/onap-msb-java-sdk/en/%s'.format(doc_url) % branch, None)
-intersphinx_mapping['onap-multicloud-azure'] = ('{}/onap-multicloud-azure/en/%s'.format(doc_url) % branch, None)
 intersphinx_mapping['onap-multicloud-framework'] = ('{}/onap-multicloud-framework/en/%s'.format(doc_url) % branch, None)
-intersphinx_mapping['onap-multicloud-k8s'] = ('{}/onap-multicloud-k8s/en/%s'.format(doc_url) % branch, None)
-intersphinx_mapping['onap-music'] = ('{}/onap-music/en/%s'.format(doc_url) % branch, None)
-intersphinx_mapping['onap-music-distributed-kv-store'] = (
-    '{}/onap-music-distributed-kv-store/en/%s'.format(doc_url) % branch, None)
-intersphinx_mapping['onap-oom-offline-installer'] = (
-    '{}/onap-oom-offline-installer/en/%s'.format(doc_url) % branch, None)
+intersphinx_mapping['onap-msb-apigateway'] = ('{}/onap-msb-apigateway/en/%s'.format(doc_url) % branch, None)
 intersphinx_mapping['onap-oom'] = ('{}/onap-oom/en/%s'.format(doc_url) % branch, None)
+intersphinx_mapping['onap-oom-offline-installer'] = ('{}/onap-oom-offline-installer/en/%s'.format(doc_url) % branch, None)
 intersphinx_mapping['onap-oom-platform-cert-service'] = (
     '{}/onap-oom-platform-cert-service/en/%s'.format(doc_url) % branch, None)
-intersphinx_mapping['onap-oparent-cia'] = ('{}/onap-oparent-cia/en/%s'.format(doc_url) % branch, None)
 intersphinx_mapping['onap-optf-cmso'] = ('{}/onap-optf-cmso/en/%s'.format(doc_url) % branch, None)
-intersphinx_mapping['onap-optf-has'] = ('{}/onap-optf-has/en/%s'.format(doc_url) % branch, None)
 intersphinx_mapping['onap-optf-osdf'] = ('{}/onap-optf-osdf/en/%s'.format(doc_url) % branch, None)
-intersphinx_mapping['onap-osa'] = ('{}/onap-osa/en/%s'.format(doc_url) % branch, None)
+intersphinx_mapping['onap-optf-has'] = ('{}/onap-optf-has/en/%s'.format(doc_url) % branch, None)
 intersphinx_mapping['onap-policy-clamp'] = ('{}/onap-policy-clamp/en/%s'.format(doc_url) % branch, None)
 intersphinx_mapping['onap-policy-parent'] = ('{}/onap-policy-parent/en/%s'.format(doc_url) % branch, None)
-intersphinx_mapping['onap-portal'] = ('{}/onap-portal/en/%s'.format(doc_url) % branch, None)
 intersphinx_mapping['onap-sdc'] = ('{}/onap-sdc/en/%s'.format(doc_url) % branch, None)
-intersphinx_mapping['onap-sdc-sdc-distribution-client'] = (
-    '{}/onap-sdc-sdc-distribution-client/en/%s'.format(doc_url) % branch, None)
-intersphinx_mapping['onap-sdc-sdc-docker-base'] = ('{}/onap-sdc-sdc-docker-base/en/%s'.format(doc_url) % branch, None)
-intersphinx_mapping['onap-sdc-sdc-tosca'] = ('{}/onap-sdc-sdc-tosca/en/%s'.format(doc_url) % branch, None)
-intersphinx_mapping['onap-sdc-sdc-workflow-designer'] = (
-    '{}/onap-sdc-sdc-workflow-designer/en/%s'.format(doc_url) % branch, None)
 intersphinx_mapping['onap-sdnc-oam'] = ('{}/onap-sdnc-oam/en/%s'.format(doc_url) % branch, None)
 intersphinx_mapping['onap-so'] = ('{}/onap-so/en/%s'.format(doc_url) % branch, None)
-intersphinx_mapping['onap-so-libs'] = ('{}/onap-so-libs/en/%s'.format(doc_url) % branch, None)
 intersphinx_mapping['onap-usecase-ui'] = ('{}/onap-usecase-ui/en/%s'.format(doc_url) % branch, None)
 intersphinx_mapping['onap-vfc-nfvo-lcm'] = ('{}/onap-vfc-nfvo-lcm/en/%s'.format(doc_url) % branch, None)
-intersphinx_mapping['onap-vfc-nfvo-driver-vnfm-svnfm'] = (
-    '{}/onap-vfc-nfvo-driver-vnfm-svnfm/en/%s'.format(doc_url) % branch, None)
 intersphinx_mapping['onap-vid'] = ('{}/onap-vid/en/%s'.format(doc_url) % branch, None)
-intersphinx_mapping['onap-vnfrqts-requirements'] = ('{}/onap-vnfrqts-requirements/en/%s'.format(doc_url) % branch, None)
 intersphinx_mapping['onap-vnfrqts-guidelines'] = ('{}/onap-vnfrqts-guidelines/en/%s'.format(doc_url) % branch, None)
+intersphinx_mapping['onap-vnfrqts-requirements'] = ('{}/onap-vnfrqts-requirements/en/%s'.format(doc_url) % branch, None)
 intersphinx_mapping['onap-vnfrqts-testcases'] = ('{}/onap-vnfrqts-testcases/en/%s'.format(doc_url) % branch, None)
 intersphinx_mapping['onap-vnfrqts-usecases'] = ('{}/onap-vnfrqts-usecases/en/%s'.format(doc_url) % branch, None)
 intersphinx_mapping['onap-vnfsdk-model'] = ('{}/onap-vnfsdk-model/en/%s'.format(doc_url) % branch, None)
 intersphinx_mapping['onap-vvp-documentation'] = ('{}/onap-vvp-documentation/en/%s'.format(doc_url) % branch, None)
 
+# Guilin
+branch = 'guilin'
+intersphinx_mapping['onap-portal'] = ('{}/onap-portal/en/%s'.format(doc_url) % branch, None)
+
+# Frankfurt
+branch = 'frankfurt'
+intersphinx_mapping['onap-appc'] = ('{}/onap-appc/en/%s'.format(doc_url) % branch, None)
+intersphinx_mapping['onap-appc-deployment'] = ('{}/onap-appc-deployment/en/%s'.format(doc_url) % branch, None)
+intersphinx_mapping['onap-music'] = ('{}/onap-music/en/%s'.format(doc_url) % branch, None)
+
+# Latest
+branch = 'latest'
+intersphinx_mapping['onap-aaf-authz'] = ('{}/onap-aaf-authz/en/%s'.format(doc_url) % branch, None)
+intersphinx_mapping['onap-aaf-sms'] = ('{}/onap-aaf-sms/en/%s'.format(doc_url) % branch, None)
+intersphinx_mapping['onap-aai-event-client'] = ('{}/onap-aai-event-client/en/%s'.format(doc_url) % branch, None)
+intersphinx_mapping['onap-aai-esr-gui'] = ('{}/onap-aai-esr-gui/en/%s'.format(doc_url) % branch, None)
+intersphinx_mapping['onap-aai-esr-server'] = ('{}/onap-aai-esr-server/en/%s'.format(doc_url) % branch, None)
+intersphinx_mapping['onap-ccsdk-apps'] = ('{}/onap-ccsdk-apps/en/%s'.format(doc_url) % branch, None)
+intersphinx_mapping['onap-ccsdk-dashboard'] = ('{}/onap-ccsdk-dashboard/en/%s'.format(doc_url) % branch, None)
+intersphinx_mapping['onap-ccsdk-platform-plugins'] = (
+    '{}/onap-ccsdk-platform-plugins/en/%s'.format(doc_url) % branch, None)
+intersphinx_mapping['onap-logging-analytics'] = ('{}/onap-logging-analytics/en/%s'.format(doc_url) % branch, None)
+intersphinx_mapping['onap-logging-analytics-pomba-pomba-audit-common'] = (
+    '{}/onap-logging-analytics-pomba-pomba-audit-common/en/%s'.format(doc_url) % branch, None)
+intersphinx_mapping['onap-modeling-toscaparsers'] = (
+    '{}/onap-modeling-toscaparsers/en/%s'.format(doc_url) % branch, None)
+intersphinx_mapping['onap-msb-discovery'] = ('{}/onap-msb-discovery/en/%s'.format(doc_url) % branch, None)
+intersphinx_mapping['onap-msb-java-sdk'] = ('{}/onap-msb-java-sdk/en/%s'.format(doc_url) % branch, None)
+intersphinx_mapping['onap-msb-swagger-sdk'] = ('{}/onap-msb-swagger-sdk/en/%s'.format(doc_url) % branch, None)
+intersphinx_mapping['onap-multicloud-azure'] = ('{}/onap-multicloud-azure/en/%s'.format(doc_url) % branch, None)
+intersphinx_mapping['onap-multicloud-k8s'] = ('{}/onap-multicloud-k8s/en/%s'.format(doc_url) % branch, None)
+intersphinx_mapping['onap-music-distributed-kv-store'] = (
+    '{}/onap-music-distributed-kv-store/en/%s'.format(doc_url) % branch, None)
+intersphinx_mapping['onap-oparent-cia'] = ('{}/onap-oparent-cia/en/%s'.format(doc_url) % branch, None)
+intersphinx_mapping['onap-osa'] = ('{}/onap-osa/en/%s'.format(doc_url) % branch, None)
+intersphinx_mapping['onap-sdc-sdc-distribution-client'] = (
+    '{}/onap-sdc-sdc-distribution-client/en/%s'.format(doc_url) % branch, None)
+intersphinx_mapping['onap-sdc-sdc-workflow-designer'] = (
+    '{}/onap-sdc-sdc-workflow-designer/en/%s'.format(doc_url) % branch, None)
+intersphinx_mapping['onap-sdc-sdc-tosca'] = ('{}/onap-sdc-sdc-tosca/en/%s'.format(doc_url) % branch, None)
+intersphinx_mapping['onap-sdc-sdc-docker-base'] = ('{}/onap-sdc-sdc-docker-base/en/%s'.format(doc_url) % branch, None)
+intersphinx_mapping['onap-so-libs'] = ('{}/onap-so-libs/en/%s'.format(doc_url) % branch, None)
+intersphinx_mapping['onap-vfc-nfvo-driver-vnfm-svnfm'] = (
+    '{}/onap-vfc-nfvo-driver-vnfm-svnfm/en/%s'.format(doc_url) % branch, None)
 
 linkcheck_ignore = [
     'about:config',
index 5c06b7f..ab59281 100644 (file)
@@ -3,5 +3,5 @@ project_cfg: onap
 project: onap
 
 # Change this to ReleaseBranchName to modify the header
-default-version: frankfurt
+default-version: latest
 #
index a390fae..82a8a1b 100644 (file)
Binary files a/docs/guides/onap-developer/architecture/media/ONAP-architecture.png and b/docs/guides/onap-developer/architecture/media/ONAP-architecture.png differ
old mode 100644 (file)
new mode 100755 (executable)
index 570629d..5497edb
Binary files a/docs/guides/onap-developer/architecture/media/ONAP-fncview.png and b/docs/guides/onap-developer/architecture/media/ONAP-fncview.png differ
index d94e428..6ced443 100644 (file)
@@ -114,22 +114,27 @@ microservices-based platform components.**
 Figure 2 below, provides a simplified functional view of the architecture,
 which highlights the role of a few key components:
 
-#. Design time environment for onboarding services and resources into ONAP and
-   designing required services.
-#. External API provides northbound interoperability for the ONAP Platform and
-   Multi-VIM/Cloud provides cloud interoperability for the ONAP workloads.
+#. ONAP Design time environment provides onboarding services and resources
+   into ONAP and designing required services.
+#. External API provides northbound interoperability for the ONAP Platform.
+#. ONAP Runtime environment provides a model- and policy-driven orchestration
+   and conrol framework for an automated instantiation and configuration of
+   services and resources. Multi-VIM/Cloud provides cloud interoperability for
+   the ONAP workloads. Analytic framework that closely monitors the service
+   behavior handles close loop management for handling healing, scaling and
+   update dynamically.
 #. OOM provides the ability to manage cloud-native installation and deployments
    to Kubernetes-managed cloud environments.
 #. ONAP Shared Services provides shared capabilities for ONAP modules. The ONAP
    Optimization Framework (OOF) provides a declarative, policy-driven approach
    for creating and running optimization applications like Homing/Placement,
-   and Change Management Scheduling Optimization.
-#. ONAP shared utilities provide utilities for the support of the ONAP
-   components.
-#. Information Model and framework utilities continue to evolve to harmonize
-   the topology, workflow, and policy models from a number of SDOs including
-   ETSI NFV MANO, ETSI/3GPP, O-RAN, TM Forum SID, ONF Core, OASIS TOSCA, IETF,
-   and MEF.
+   and Change Management Scheduling Optimization. ONAP shared utilities provide
+   utilities for the support of the ONAP components.
+
+Information Model and framework utilities continue to evolve to harmonize
+the topology, workflow, and policy models from a number of SDOs including
+ETSI NFV MANO, ETSI/3GPP, O-RAN, TM Forum SID, ONF Core, OASIS TOSCA, IETF,
+and MEF.
 
 |image2|
 
@@ -414,18 +419,25 @@ capabilities with the introduction of adaptive policy execution.
 Shared Services
 ===============
 ONAP provides a set of operational services for all ONAP components including
-activity logging, reporting, common data layer, access control, secret and
-credential management, resiliency, and software lifecycle management.
+activity logging, reporting, common data layer, configuration, persistence, access control,
+secret and credential management, resiliency, and software lifecycle management.
 
 These services provide access management and security enforcement, data backup,
-restoration and recovery. They support standardized VNF interfaces and
-guidelines.
+configuration persistence, restoration and recovery. They support standardized
+VNF interfaces and guidelines.
 
 Operating in a virtualized environment introduces new security challenges and
 opportunities. ONAP provides increased security by embedding access controls in
 each ONAP platform component, augmented by analytics and policy components
 specifically designed for the detection and mitigation of security violations.
 
+Configuration Persistence Service (CPS)
+---------------------------------------
+The Configuration Persistence Service (CPS) provides storage for real-time run-time configuration
+and operational parameters that need to be used by ONAP.
+In R8, Honolulu, the CPS is a stand-alone component, and its details in
+:ref:`CPS - Configuration Persistence Service<onap-cps:architecture>`.
+
 ONAP Modeling
 =============
 ONAP provides models to assist with service design, the development of ONAP
index f692795..99fbb66 100644 (file)
@@ -48,7 +48,7 @@ AAF - Application Authorization Framework
 
    * - Document
      - Description
-   * - :ref:`AAF (Frankfurt)<onap-aaf-authz:master_index>`
+   * - :ref:`AAF (Latest)<onap-aaf-authz:master_index>`
      - (unmaintained) AAF Architecture, APIs and Guides
 
 AAI - Active and Available Inventory
@@ -313,8 +313,8 @@ PORTAL - Portal Platform
 
    * - Document
      - Description
-   * - :ref:`Portal<onap-portal:master_index>`
-     - ONAP Portal Platform Documentation
+   * - :ref:`Portal (Guilin)<onap-portal:master_index>`
+     - (unmaintained) ONAP Portal Platform Documentation
 
 SDC - Service Design & Creation
 -------------------------------
index 7fa4df5..9f27db7 100644 (file)
@@ -6,6 +6,7 @@
 .. Modifications Copyright 2018 Amdocs
 .. Modifications Copyright 2018 Huawei
 .. Modifications Copyright 2019 Orange
+.. Modifications Copyright 2021 Nokia
 
 Setting Up ONAP
 ===============
@@ -47,6 +48,14 @@ Creation of Kubernetes cluster is described here:
 
 :ref:`ONAP on HA Kubernetes Cluster<onap-oom:onap-on-kubernetes-with-rancher>`
 
+Some ONAP functionalities require optional PaaS components described here:
+
+.. toctree::
+   :maxdepth: 2
+   :titlesonly:
+
+:ref:`ONAP PaaS set-up (optional)<onap-oom:oom_setup_paas>`
+
 ONAP installation is described here:
 
 .. toctree::
index ef431a8..fab02ba 100644 (file)
@@ -12,45 +12,23 @@ Release Notes
 
 This document provides the release notes for the documentation project.
 
-Guilin Releases
-===============
+Honolulu Releases
+=================
 
-The following releases are available for Guilin:
-  - `Guilin Maintenance Release 7.0.1`_
-  - `Guilin Major Release 7.0.0`_
+The following releases are available for Honolulu:
+  - `Honolulu Major Release 8.0.0`_
 
-Guilin Maintenance Release 7.0.1
-================================
+Honolulu Major Release 8.0.0
+============================
 
 +--------------------------------------+--------------------------------------+
 | **Project**                          | Documentation Project                |
 |                                      |                                      |
 +--------------------------------------+--------------------------------------+
-| **Release name**                     | Guilin Maintenance Release           |
+| **Release name**                     | Honolulu                             |
 |                                      |                                      |
 +--------------------------------------+--------------------------------------+
-| **Release version**                  | 7.0.1                                |
-|                                      |                                      |
-+--------------------------------------+--------------------------------------+
-
-
-New features
-------------
-
-- Restructured the user guides section and added new tutorials
-
-
-Guilin Major Release 7.0.0
-==========================
-
-+--------------------------------------+--------------------------------------+
-| **Project**                          | Documentation Project                |
-|                                      |                                      |
-+--------------------------------------+--------------------------------------+
-| **Release name**                     | Guilin                               |
-|                                      |                                      |
-+--------------------------------------+--------------------------------------+
-| **Release version**                  | 7.0.0                                |
+| **Release version**                  | 8.0.0                                |
 |                                      |                                      |
 +--------------------------------------+--------------------------------------+
 
@@ -60,12 +38,11 @@ New features
 
 - Refined and improved parts of the documentation guide.
 - Continue with improving the user and admin documentation.
-- Minor corrections after the migration.
 - In addition the documentation project is continuously working with improving
   processes and tools for documentation. Enabling the community to as easy as
   possible document all the aspects of the ONAP platform.
 
-All JIRA tickets for the Guilin release can be found
+All JIRA tickets for the Honolulu release can be found
 `ONAP Documentation Jira`_
 
-.. _`ONAP Documentation Jira`: https://jira.onap.org/browse/DOC-674?jql=project%20%3D%20DOC%20AND%20fixVersion%20%3D%20%22Guilin%20Release%22
+.. _`ONAP Documentation Jira`: https://jira.onap.org/browse/DOC-730?jql=project%20%3D%20DOC%20AND%20fixVersion%20%3D%20%22Honolulu%20Release%22
index 9a3dff5..fe5d812 100644 (file)
@@ -4,10 +4,10 @@
 
 .. _onap-release-notes:
 
-Guilin Release Notes
-^^^^^^^^^^^^^^^^^^^^
+Honolulu Release Notes
+^^^^^^^^^^^^^^^^^^^^^^
 
-This page provides the release notes for the ONAP Guilin release. This
+This page provides the release notes for the ONAP Honolulu release. This
 includes details of software versions, known limitations, and outstanding
 trouble reports.
 
@@ -19,173 +19,144 @@ release notes and links to those release notes are provided below.
 Details on the specific items delivered in each release by each component is
 maintained in the component specific release notes.
 
-Guilin Releases
-===============
+Honolulu Releases
+=================
 
-The following releases are available for Guilin:
-  - `Guilin Maintenance Release 7.0.1`_
-  - `Guilin Major Release 7.0.0`_
+The following releases are available for Honolulu:
+  - `Honolulu Major Release 8.0.0`_
 
-Guilin Maintenance Release 7.0.1
-================================
+Honolulu Major Release 8.0.0
+============================
 
 +--------------------------------------+--------------------------------------+
 | **Project**                          | Open Network Automation Platform     |
 |                                      | (ONAP)                               |
 +--------------------------------------+--------------------------------------+
-| **Release name**                     | Guilin Maintenance Release           |
+| **Release name**                     | Honolulu                             |
 |                                      |                                      |
 +--------------------------------------+--------------------------------------+
-| **Release version**                  | 7.0.1                                |
+| **Release version**                  | 8.0.0                                |
 |                                      |                                      |
 +--------------------------------------+--------------------------------------+
-| **Release date**                     | March 11th 2021                      |
+| **Release date**                     | April xx  2021                       |
 |                                      |                                      |
 +--------------------------------------+--------------------------------------+
 
-New Features
-============
-
-Guilin Maintenance Release 7.0.1 delivered a number of fixes and updates
-across the following projects:
-
- - AAI         - bug fixes and certificate update
- - CCSDK       - bug fixes and certificate update
- - DCAEGEN2    - bug fixes
- - DMaaP       - bug fixes
- - DOC         - restructure user guides section and added tutorials
- - Integration - new docker for robot framework
- - Music       - certificate update
- - MSB         - bug fixes
- - OOM         - docker improvement
- - SDNC        - bug fixes
- - SO          - bug fixes
- - VID         - certificate update
-
-Details on the specific Jira tickets addressed by each project can be found in
-the component specific Release Notes: :ref:`release notes<doc-releaserepos>`
-
-
-Guilin Major Release 7.0.0
-==========================
-
-+--------------------------------------+--------------------------------------+
-| **Project**                          | Open Network Automation Platform     |
-|                                      | (ONAP)                               |
-+--------------------------------------+--------------------------------------+
-| **Release name**                     | Guilin                               |
-|                                      |                                      |
-+--------------------------------------+--------------------------------------+
-| **Release version**                  | 7.0.0                                |
-|                                      |                                      |
-+--------------------------------------+--------------------------------------+
-| **Release date**                     | December 3rd 2020                    |
-|                                      |                                      |
-+--------------------------------------+--------------------------------------+
+Honolulu Features
+=================
+ONAP Honolulu focusses on:
 
-Guilin Features
-===============
-ONAP Guilin focusses on:
-
-* 5G network automation and services such as network slicing through RAN, core
-  and transport
-* deepening O-RAN Software Community integration along with other leading SDOs
-* seamless orchestration of CNFs, VNFs and PNFs
-* and bringing several new ONAP Blueprint and docs updates.
-
-5G Network Slicing
-------------------
-In the industry evolution toward 5G networks, Guilin expands upon the
-end-to-end network slicing introduced with Frankfurt with the addition of RAN,
-core, and transport through Network Slice Subnet Management Function (NSSMF)
-which completes functionality with the Communication Service Management
-Function (CSMF) and Network Slice Management Function (NSMF) components. In
-addition to the NSSMF included in Guilin, ONAP supports an external RAN NSSMF.
-Next, the RAN domain also has initial support for a simple closed control loop
-and machine learning (ML) for intelligent slicing.
-
-ONAP/O-RAN Alignment
---------------------
-The release also marks greater ONAP + O-RAN Software Community harmonization by
-adding  support for the A1 interface (O-RAN A1-AP v1.1), adding to the existing
-O1 support. ONAP can now manage multiple A1 targets with different versions and
-includes a A1 Policy Management Service that interacts with the Near Real-Time
-RIC\19s policy instances and provides a transient cache for these policies.
-
-CNF, VNF and PNF integration
-----------------------------
-Guilin contains a large number of new features classified into design time,
-run time, and ONAP operations to optimize the self-serve control loop and
-dashboard, make it easier to reuse existing models, make xNF pre-onboarding and
-onboarding easier, speed up UI development, and more. For Documentation
-(Usability), ONAP documentation made improvements such as setting up ONAP,
-Platform Operations, Service Design and Deployment, and User Guides. Specific
-to cloud native, The Service Design & Creation (SDC) project, the unified
-design time tool, now supports Helm types to natively support Cloud Native
-Network Functions (CNF).
-
-Enhancements in ONAP Blueprints
--------------------------------
-Other enhancements to the ONAP Blueprints includes a new Standard Defined VNF
-Event Stream (VES) event for Fault Management (FM) / Performance Management
-(PM) Data Collection, the first use of Machine Learning in Self-Organizing
-Networks (SON), and greater support for 5G RAN Wireless Network Resource Model
-(NRM) with Service Modeling and Definition and Intent Based Network supporting
-intent-drive 5G slice creation. The Cross Domain and Cross Layer VPN (CC-VPN)
-includes transport slicing and the MDONS (Multi-Domain Optical Network Service
-) has been extended.
+* Cloud Native Function (CNF) support with  with seamless configuration of Helm
+  based CNFs and K8s resources
+* End-to-end 5G network slicing with three network slicing components for RAN,
+  core, and transport
+* Introducing a new component: Configuration Persistence Service (CPS) to store
+  persistent configuation data
+* Modularity to pick and choose the components needed for specific use case
+* Improving integration with many SDOs
 
 Functional Requirements
 -----------------------
-The following requirements have been introduced in the Guilin Release:
-
-xNF Integration
-...............
-
-- ONAP CNF orchestration - Enhancements
-- Extension of PNF Pre-onboarding/onboarding
-- Enhancements for PNF Plug & Play'
-- xNF License Management
 
-Lifecycle Management
-....................
-
-- Policy Based Filtering
-- CLAMP Deployment of Native policies
-- Bulk PM / PM Data Control Extension
-- Support xNF Software Upgrade in association to schema updates
-- Configuration & Persistency Service
-
-Security
-........
-
-- CMPv2 Enhancements
-
-Standard alignment
-..................
-
-- ETSI-Alignment for Guilin
-- ONAP/3GPP & O-RAN Alignment-Standards Defined Notifications over VES
-- Extend ORAN A1 Adapter and add A1 Policy Management
-
-NFV testing Automatic Platform
-...............................
-
-- Test Result Auto Analysis & Certification
-- Test Task Auto Execution
-- Test Environment Auto Deploy
-- Test Topology Auto Design
+Increased Cloud Native Functionality
+....................................
+The Honolulu release has important updates to support cloud native network
+functions (CNF). The functionality includes configuration of Helm based CNFs
+and seamless day 1, 2 operations. The Configuration API allows a user to
+create, modify and delete Kubernetes (K8s) resource templates and their base
+parameters and the Profile API allows for sophisticated day 0 configuration.
+The Query API gathers filtered status of the CNF and the HealthCheck API
+executes dedicated health check jobs to verify the status of a CNF. This new
+functionality is implemented in the Controller Design Studio (CDS) component
+using dedicated templates called Controller Blueprint Archives (CBA).
+In addition, there is Swagger documentation for the API of the K8s plugin
+component in the MutliCloud project.
+
+Deeper 5G Support
+.................
+There is a significant set of new functionality around end-to-end 5G network
+slicing in the Honolulu release. This release includes three internal Network
+Slice Subnet Management Function (NSSMF) components for RAN, core, and
+transport domains. External NSSMFs continue to be supported for RAN and core.
+Next, slice optimization continues to be an area of ongoing effort with closed
+loop automation and intelligent slicing testing. There are also enhancements in
+NST, NSI, and NSSI selection in the OOF project and A&AI includes schema
+changes to accommodate network and transport slicing.
+
+In addition, the ExtAPI project now included Enhanced Service Ordering for
+additional service types and the UUI graphical user interface has improved
+slicing support. The VID graphical user has support for PNF plug-and-play
+allowing operators to interact with PNFs via VID. In addition, there is better
+compliance to standards such as 3GPP TS28.540/541 5G NRM driven xNF models in
+ONAP. Finally the OOF SON functionality supports offline trained ML-models
+providing additional inputs for Physical Cell Identity (PCI) optimization.
+DCAE includes a new KPI microservice.
+
+Configuration Persistence Service
+.................................
+Another key 5G related initiative is the new Configuration Persistence Service
+(CPS) module that allows ONAP projects to store persistent state defined by
+YANG models, deploy YANG models at runtime, and share access to configuration
+management data.
+
+Further O-RAN Integration
+.........................
+A key enhancement in the Honolulu release was increased support for the O-RAN
+A1 standard that is implemented in the CCSDK and SDN-C projects. The O-RAN A1
+interface provides a flexible way for RAN operators to manage wide area RAN
+network optimization reducing capex investment needs. Both the enhanced A1
+interface controller and A1 policy capabilities are now usable in ONAP with a
+Near-Real-Time Radio Intelligent Controller (nRTRIC). This functionality is
+also used downstream in O-RAN-Source Community (OSC) Non-RealTime RIC
+(NONRTRIC) project, strengthening alignment between ONAP & OSC. In addition,
+the DCAE project includes VES 7.2 integration that improves integration with
+both O-RAN and 3GPP. Finally, there is a new CPS interface to query RAN
+configuration data.
+
+Expanded Modularity
+...................
+Modularity has been an important topic in ONAP to allow users to pick and
+choose the components they need for their specific use case and Honolulu
+continues to advance modularity. DCAE now simplifies microservice deployment
+via Helm charts.
+
+Service Design
+..............
+
+- Includes increased support for ETSI standards such as SOL001, SOL004, and
+  SOL007 and allows users to choose unlicensed or externally licensed xNFs.
+- Vendor License Model is now optional
+- SDC distribution status report enhanced
+
+Inventory
+.........
+
+- A&AI includes support for multi tenancy.
+- Model updates for CCVPN Transport Slicing and Network Slicing
+- GraphGraph POC enhanced for schema visualization and visual model generation
+- Sparky UI updates including Browse, Specialized Search, BYOQ, and BYOQ
+  Builder Views
+
+ONAP Operations Manager
+.......................
+
+- Portal-Cassandra image updated to Bitnami, supporting IPv4/IPv6 Dual Stack
+- CMPv2 external issuer implemented which extends Cert-Manager with ability to
+  enroll X.509 certificates from CMPv2 servers
+- New version for MariaDB Galera using Bitnami image, supporting IPv4/IPv6 Dual
+  Stack
+- Support of Helm v3.4 and Helm v3.5
 
 Non-Functional Requirements
 ---------------------------
-The following 'non-functional' requirements have been introduced in the Guilin
-Release:
+The following 'non-functional' requirements are followed in the
+Honolulu Release:
 
 Best Practice
 .............
 
 - ONAP shall use STDOUT for logs collection
-- IPv4/IPv6 dual stack support in ONAP (Guilin)
+- IPv4/IPv6 dual stack support in ONAP
 - Containers must crash properly when a failure occurs
 - Containers must have no more than one main process
 - Application config should be fully prepared before starting the
@@ -203,8 +174,8 @@ Code Quality
 Security
 ........
 
-- ONAP must complete update of the Python language (from 2.7 -> 3.8)
-- ONAP must complete update of the java language (from v8 -> v11)
+- Python language 3.8
+- Java language v11
 - All containers must run as non-root user
 - Continue hardcoded passwords removal
 - Flow management must be activated for ONAP.
@@ -214,13 +185,8 @@ Security
 Tests
 .....
 
-- More tests integrated in CI/CD but enhancements expected in Honolulu
-- ONAP shall increase the number of Docker Benchmark tests
-
-Others
-......
-
-- ONAP to support Multi - tenancy
+- New E2E tests
+- New IPv4/Ipv6 daily CI chain
 
 .. important::
    Some non-functional requirements are not fully finalized. Please, check details
@@ -239,8 +205,8 @@ are compatible with a major release are made available.
 
 Documentation
 =============
-ONAP Guilin Release provides a set selection of documents,
-see `ONAP Documentation <https://docs.onap.org/en/guilin/index.html>`_.
+ONAP Honolulu Release provides a set selection of documents,
+see :ref:`ONAP Documentation<master_index>`.
 
 The `developer wiki <http://wiki.onap.org>`_ remains a good source of
 information on meeting plans and notes from committees, project teams and
@@ -256,7 +222,7 @@ ONAP has adopted the `CII Best Practice Badge Program <https://bestpractices.cor
 - `Badging Requirements <https://github.com/coreinfrastructure/best-practices-badge>`_
 - `Badging Status for all ONAP projects <https://bestpractices.coreinfrastructure.org/en/projects?q=onap>`_
 
-In the Guilin release,
+In the Honolulu release,
 
 - 100% projects passed 90% of the CII badge
 - 85% projects passed the CII badge
@@ -269,14 +235,13 @@ each project.
 
 ONAP Maturity Testing Notes
 ===========================
-For the Guilin release, ONAP continues to improve in multiple areas of
+For the Honolulu release, ONAP continues to improve in multiple areas of
 Scalability, Security, Stability and Performance (S3P) metrics.
 
-In Guilin the Integration team focussed in
+In Honolulu the Integration team focussed in
 
 - Automating ONAP Testing to improve the overall quality
 - Adding security and E2E tests
-- Integrated new ONAP Python SDK in E2E testing
 
 More details in :ref:`ONAP Integration Project<onap-integration:master_index>`
 
index 52cdd0a..0dd7d60 100644 (file)
@@ -10,6 +10,9 @@
 Project Specific Release Notes
 ++++++++++++++++++++++++++++++
 
+Maintained Projects
+-------------------
+
 .. toctree::
    :maxdepth: 1
 
@@ -18,9 +21,9 @@ Project Specific Release Notes
 | :ref:`VNF Requirements<onap-vnfrqts-requirements:release_notes>`
 | :ref:`AAI - Active and Available Inventory<onap-aai-aai-common:release_notes>`
 | :ref:`CCSDK - Common Controller Software Development Kit<onap-ccsdk-distribution:release_notes>`
-| :ref:`CLAMP - Control Loop Automation Platform<onap-policy-clamp:release_notes>`
+| :ref:`CCSDK/ORAN - Open-RAN Support in ONAP<onap-ccsdk-oran:release_notes>`
 | :ref:`CLI - Command Line Interface<onap-cli:release_notes>`
-| :ref:`CPS - Configuration Persistance Service<onap-cps:release_notes>`
+| :ref:`CPS - Configuration Persistence Service<onap-cps:release_notes>`
 | :ref:`DCAE - Data Collection Analysis and Events<onap-dcaegen2:release_notes>`
 | :ref:`DMAAP - Message Router (MR)<onap-dmaap-messagerouter-messageservice:release_notes>`
 | :ref:`DMAAP - Data Router (DR)<onap-dmaap-datarouter:release_notes>`
@@ -29,12 +32,12 @@ Project Specific Release Notes
 | :ref:`EXTAPI - External API NorthBound Interface<onap-externalapi-nbi:release_notes>`
 | :ref:`HOLMES - Rule Management<onap-holmes-rule-management:release_notes>`
 | :ref:`MODELING - Modeling ETSI catalog<onap-modeling-etsicatalog:release_notes>`
+| :ref:`MSB - Microservices Bus<onap-msb-apigateway:release_notes>`
 | :ref:`MULTICLOUD - MultiCloud Framework<onap-multicloud-framework:release_notes>`
 | :ref:`OOF - Optimization Framework<onap-optf-osdf:release_notes>`
 | :ref:`OOM - ONAP Operations Manager<onap-oom:release_notes>`
 | :ref:`OOM - Certification Service<onap-oom-platform-cert-service:release_notes>`
 | :ref:`POLICY- Policy Framework<onap-policy-parent:release_notes>`
-| :ref:`PORTAL - Portal Platform<onap-portal:release_notes>`
 | :ref:`SDC - Service Design & Creation<onap-sdc:release_notes>`
 | :ref:`SDNC - Software Defined Network Controller<onap-sdnc-oam:release_notes>`
 | :ref:`SO - Service Orchestration<onap-so:release_notes>`
@@ -43,3 +46,23 @@ Project Specific Release Notes
 | :ref:`VID - Virtual Infrastructure Deployment<onap-vid:release_notes>`
 | :ref:`VNFSDK - VNF Software Development Kit<onap-vnfsdk-model:release_notes>`
 | :ref:`VVP - VNF Validation Project<onap-vvp-documentation:release_notes>`
+
+Migrated Projects
+-----------------
+
+.. toctree::
+   :maxdepth: 1
+
+| :ref:`CLAMP - Control Loop Automation Platform<onap-policy-clamp:release_notes>`
+
+Unmaintained Projects
+---------------------
+
+.. toctree::
+   :maxdepth: 1
+
+| :ref:`AAF - Application Authorization Framework<onap-aaf-authz:release_notes>`
+| :ref:`AAI/ESR - External System Registry<onap-aai-esr-server:master_index>`
+| :ref:`APPC - Application Controller<onap-appc:release_notes>`
+| :ref:`MUSIC - ONAP Multi-Site Integration<onap-music:release_notes>`
+| :ref:`PORTAL - Portal Platform<onap-portal:release_notes>`
\ No newline at end of file
index 4a798b3..66cbd4c 100755 (executable)
@@ -58,7 +58,7 @@
 ### SHORT: curl -s 'https://gerrit.onap.org/r/projects/?d' | awk '{if(NR>1)print}' | jq -c '.[] | {id, state}' | sed -r 's:%2F:/:g; s:["{}]::g; s:id\:::; s:,state\::|:; /All-Projects/d; /All-Users/d'
 ###
 
-script_version="1.6 (2021/03/30)"
+script_version="1.7 (2021-04-12)"
 
 # save command for the restart with logging enabled
 command=$0
@@ -106,6 +106,45 @@ function InterruptedScript {
   exit 0
 }
 
+# function to parse wiki (project) lifecycle state information
+# call:   getwikilifecyclestate "projectname"
+# result: $return_from_getwikilifecyclestate
+# because bash supports only returning numeric values a variable $return_from_getwikilifecyclestate is used
+
+function getwikilifecyclestate {
+
+  local requested=$1
+  local wikiline=""
+  local wikirepo=""
+  local wikistate=""
+
+  return_from_getwikilifecyclestate=""
+   
+  for wikiline in "${wikiplsarray[@]}"
+  do
+  
+     wikirepo=$(echo $wikiline | awk -F ";" '{print $1}');
+    wikistate=$(echo $wikiline | awk -F ";" '{print $2}');
+    
+    #echo "DBUG: getwikilifecyclestate  wikiline = \"${wikiline}\"";
+    #echo "DBUG: getwikilifecyclestate  wikirepo = \"${wikirepo}\""
+    #echo "DBUG: getwikilifecyclestate wikistate = \"${wikistate}\""
+
+    if [[ ${wikirepo} == ${requested} ]]; then
+      return_from_getwikilifecyclestate=${wikistate}
+      #echo "DBUG: getwikilifecyclestate     wikirepo = \"${wikirepo}\""
+      #echo "DBUG: getwikilifecyclestate    requested = \"${requested}\""
+      #echo "DBUG: return_from_getwikilifecyclestate  = \"${return_from_getwikilifecyclestate}\"";
+      return 0;
+    fi
+
+  done
+
+  #echo "DBUG: getwikilifecyclestate requested \"${requested}\" NOT FOUND in list"
+  return_from_getwikilifecyclestate=""
+
+}
+
 ###
 ### arguments handling
 ###
@@ -189,7 +228,40 @@ echo " "
 echo "checkdocs.sh Version ${script_version}"
 echo " "
 
+#
+# read in wiki (project) lifecycle state
+# always use the lastest available file (derived from date in filename e.g. wiki_lifecycle_state_210409.txt)
+# format is <reponame abbrev>;<state>;<reponame full>
+#
+
+wikiplsfile=$(ls | sed -nr '/wiki_lifecycle_state_[0-9]{6}.txt/Ip' | tail -1);
+
+if [[ $wikiplsfile == "" ]]; then
+  echo "ERROR: wiki_lifecycle_state_yymmdd.txt missing"
+  exit -1
+fi
+
+echo "Using \"${wikiplsfile}\" as the source for wiki (project) lifecycle state information."
+
+readarray -t wikiplsarray < ./${wikiplsfile};
+i=0
+((i++))
+for line in "${wikiplsarray[@]}"
+do
+   wikiplsrepo=$(echo $line | awk -F ";" '{print $1}');
+  wikiplsstate=$(echo $line | awk -F ";" '{print $2}');
+  #echo "DBUG: wikipls line=\"${line}\"";
+  #echo "DBUG: wikipls ${wikiplsrepo}=${wikiplsstate}"
+  ((i++))
+done
+unset i
+unset wikiplsrepo
+unset wikiplsstate
+
+#
 # curl must be installed
+#
+
 if ! command -v curl &> /dev/null
 then
   echo "ERROR: curl command could not be found"
@@ -202,9 +274,12 @@ unique=$(date +%s)
 
 echo "Retrieving a full list of ONAP repositories (master) from gerrit.onap.org."
 
+#
 # retrieve the full repolist from gerrit
 # workaround because of the (wrong?) response of gerrit.onap.org which makes jq command fail
 # "| awk '{if(NR>1)print}'" filters the first line of the response so that jq will work again (thx marek)
+#
+
 curl -s 'https://gerrit.onap.org/r/projects/?d' | awk '{if(NR>1)print}' | jq -c '.[] | {id, state}' | sed -r 's:%2F:/:g; s:["{}]::g; s:id\:::; s:,state\::|:; /All-Projects/d; /All-Users/d' >./$repolist
 
 # process the created repolist and try to clone the projects from the mirror
@@ -436,17 +511,43 @@ do
   unset errormsg
 
   #
-  # csv column #5: lifecycle state
-  # extracted from the INFO.yaml
+  # csv column #5: latest branch
+  #
+
+  readarray -t array < ./${repolist};
+  i=0
+  csv[i]="${csv[i]},latest branch"
+  ((i++))
+  for line in "${array[@]}"
+  do
+    reponame=$(echo $line | awk -F "|" '{print $1}');
+    latestbranch=$(git ls-remote -q --heads "${source}/${reponame}" | sed 's/^.*heads\///' | sed -nr '/^master$|^amsterdam$|^beijing$|^casablanca$|^dublin$|^elalto$|^frankfurt$|^guilin$|^honolulu$|^istanbul$/Ip' | tail -2 | head -1);
+    #echo "DBUG:     reponame=${reponame}"
+    #echo "DBUG: latestbranch=${latestbranch}"
+    echo "latest available branch for repo \"${reponame}\" is \"${latestbranch}\""
+    csv[i]="${csv[i]},${latestbranch}"
+    ((i++))
+  done
+  unset array
+  unset i
+  unset reponame
+  unset latestbranch
+  
+  #
+  # csv column #6: INFO.yaml LC state (project lifecycle state based on INFO.yaml / per repo)
+  # csv column #7: WIKI LC state (project lifecycle state based on ONAP Dev Wiki / per project)
+  # csv column #8: LC state match shows a "match" if both LC states match
   #
 
   readarray -t array < ./${repolist};
   i=0
-  csv[i]="${csv[i]},project lifecycle state"
+  csv[i]="${csv[i]},INFO.yaml LC state,WIKI LC state,LC state match"
   ((i++))
   for line in "${array[@]}"
   do
     reponame=$(echo $line | awk -F "|" '{print $1}');
+     project=$(echo $reponame | sed 's:/.*$::')
+
     if [ -f ./${reponame}/INFO.yaml ] ; then
       # check if repo/branch has a INFO.yaml
       lifecycleproject=$(grep '^project: ' ./${reponame}/INFO.yaml | awk -F ":" '{print $2}' | sed 's:^ ::' | sed "s:'::g" | tr '[:upper:]' '[:lower:]' | sed 's/\r$//')
@@ -460,19 +561,35 @@ do
     else
       lifecyclestate="INFO.yaml not found"
     fi
+      
+    getwikilifecyclestate ${project}
+    # returns value in ${return_from_getwikilifecyclestate}
+
     #echo "DBUG: working dir is ...";pwd
-    #echo "DBUG: lifecycleproject=${lifecycleproject}"
-    #echo "DBUG:   lifecyclestate=${lifecyclestate}"
-    csv[i]="${csv[i]},${lifecyclestate}"
+    #echo "DBUG:   lifecycleproject=${lifecycleproject}"
+    #echo "DBUG:     lifecyclestate=${lifecyclestate}"
+    #echo "DBUG: wikilifecyclestate=${return_from_getwikilifecyclestate}"
+
+    #check if YAML.info LC state is not empty _AND_ if WIKI LC state is not empty _AND_ if YAML.info LC state contains WIKI LC state
+    if [[ ${lifecyclestate} != "" ]] && [[ ${return_from_getwikilifecyclestate} != "" ]] && [[ ${lifecyclestate} == *"${return_from_getwikilifecyclestate}"* ]]; then
+      lcstatesmatch="match"
+    else
+      lcstatesmatch=""
+    fi 
+
+    csv[i]="${csv[i]},${lifecyclestate},${return_from_getwikilifecyclestate},${lcstatesmatch}"
     ((i++))
   done
   unset array
   unset i
+  unset reponame
+  unset project
   unset lifecycleproject
   unset lifecyclestate
+  unset lcstatesmatch
 
   #
-  # csv column #6: RELEASE component (yes|maybe|unknown)
+  # csv column #9: RELEASE component (yes|maybe|unknown)
   # to be filled with values of the planned release config file maintained by
   # the onap release manager
   #
@@ -516,10 +633,10 @@ do
   unset releasecomponent
 
   #
-  # csv column #7:  docs (at repo root directory only; no recursive search!)
-  # csv column #8:  conf.py
-  # csv column #9:  tox.ini
-  # csv column #10: index.rst
+  # csv column #10: docs (at repo root directory only; no recursive search!)
+  # csv column #11: conf.py
+  # csv column #12: tox.ini
+  # csv column #13: index.rst
   #
   # columns are filled with values from requested branch.
   # if data is not available values from master branch are used.
@@ -601,8 +718,8 @@ do
   unset docs
 
   #
-  # csv column #11: index.html@RTD accessibility check
-  # csv column #12: index.html url
+  # csv column #14: index.html@RTD accessibility check
+  # csv column #15: index.html url
   #
 
   readarray -t array < ./${branch}_repoclone.log;
@@ -715,7 +832,7 @@ do
   done
 
   #
-  # csv column #13: release notes
+  # csv column #16: release notes
   #
 
   readarray -t array < ../${repolist};
@@ -778,6 +895,7 @@ do
   datadir=${branch}_data
   mkdir $datadir
   cp $repolist $datadir
+  cp $wikiplsfile $datadir
   cp ${branch}_table.csv $datadir
   cp ${branch}_*.log $datadir
   zip -r ${datadir}.zip $datadir
diff --git a/tools/wiki_lifecycle_state_210409.txt b/tools/wiki_lifecycle_state_210409.txt
new file mode 100644 (file)
index 0000000..f35c5a9
--- /dev/null
@@ -0,0 +1,34 @@
+PROJECT;WIKI STATE;WIKI NAME
+aaf;unmaintained;Application Authorization Framework Project
+aai;mature;Active and Available Inventory Project
+appc;unmaintained;Application Controller Project
+ccsdk;mature;Common Controller SDK Project
+ci-management;incubation;CI-Management
+clamp;incubation;CLAMP Project
+cli;incubation;Command Line Interface Project
+cps;incubation;Configuration Persistence Service Project
+dcae;mature;Data Collection Analytics and Events Project
+dmaap;mature;Data Movement as a Platform Project
+doc;incubation;Documentation Project
+externalapi;mature;External API Framework Project
+holmes;incubation;Holmes Project
+integration;incubation;Integration Project
+logging-analytics;unmaintained;Logging Enhancements Project
+modeling;mature;Modeling Project
+msb;incubation;Microservices Bus Project
+multicloud;mature;Multi VIM/Cloud Project
+music;unmaintained;MUSIC Project
+oof;mature;Optimization Framework Project
+oom;incubation;ONAP Operations Manager Project
+policy;mature;Policy Framework Project
+portal;unmaintained;Portal Platform Project
+sdc;mature;Service Design & Creation Project
+sdnc;mature;Software Defined Network Controller Project
+so;mature;Service Orchestrator Project
+university;incubation;ONAP University Project
+uui;mature;Usecase UI Project
+vfc;mature;Virtual Function Controller Project
+vid;incubation;Virtual Infrastructure Deployment Project
+vnfrqts;incubation;VNF Requirements Project
+vnfsdk;incubation;VNF SDK Project
+vvp;incubation;VNF Validation Program Project
\ No newline at end of file
diff --git a/tools/wiki_lifecycle_state_210410.txt b/tools/wiki_lifecycle_state_210410.txt
new file mode 100644 (file)
index 0000000..96ea2e4
--- /dev/null
@@ -0,0 +1,34 @@
+PROJECT;WIKI STATE;WIKI NAME
+aaf;unmaintained;Application Authorization Framework Project
+aai;mature;Active and Available Inventory Project
+appc;unmaintained;Application Controller Project
+ccsdk;mature;Common Controller SDK Project
+ci-management;incubation;CI-Management
+clamp;incubation;CLAMP Project
+cli;incubation;Command Line Interface Project
+cps;incubation;Configuration Persistence Service Project
+dcaegen2;mature;Data Collection Analytics and Events Project
+dmaap;mature;Data Movement as a Platform Project
+doc;incubation;Documentation Project
+externalapi;mature;External API Framework Project
+holmes;incubation;Holmes Project
+integration;incubation;Integration Project
+logging-analytics;unmaintained;Logging Enhancements Project
+modeling;mature;Modeling Project
+msb;incubation;Microservices Bus Project
+multicloud;mature;Multi VIM/Cloud Project
+music;unmaintained;MUSIC Project
+optf;mature;Optimization Framework Project
+oom;incubation;ONAP Operations Manager Project
+policy;mature;Policy Framework Project
+portal;unmaintained;Portal Platform Project
+sdc;mature;Service Design & Creation Project
+sdnc;mature;Software Defined Network Controller Project
+so;mature;Service Orchestrator Project
+university;incubation;ONAP University Project
+usecase-ui;mature;Usecase UI Project
+vfc;mature;Virtual Function Controller Project
+vid;incubation;Virtual Infrastructure Deployment Project
+vnfrqts;incubation;VNF Requirements Project
+vnfsdk;incubation;VNF SDK Project
+vvp;incubation;VNF Validation Program Project
diff --git a/tox.ini b/tox.ini
index 5807a81..f3a4d0e 100644 (file)
--- a/tox.ini
+++ b/tox.ini
@@ -7,7 +7,7 @@ skipsdist = true
 basepython = python3
 deps = -r{toxinidir}/etc/requirements.txt
 commands =
-    sphinx-build -W -b html -n -d {envtmpdir}/doctrees ./docs/ {toxinidir}/docs/_build/html
+    sphinx-build -W -q -b html -n -d {envtmpdir}/doctrees ./docs/ {toxinidir}/docs/_build/html
     echo "Generated docs available in {toxinidir}/docs/_build/html"
 whitelist_externals =
     echo
@@ -19,7 +19,7 @@ basepython = python3
 deps = -r{toxinidir}/etc/requirements.txt
 commands =
     git submodule update --depth 100 --init
-    sphinx-build -b html -n -d {envtmpdir}/doctrees ./docs/ {toxinidir}/docs/_build/html
+    sphinx-build -q -b html -n -d {envtmpdir}/doctrees ./docs/ {toxinidir}/docs/_build/html
     echo "Generated docs available in {toxinidir}/docs/_build/html"
 whitelist_externals =
     echo
@@ -28,7 +28,7 @@ whitelist_externals =
 [testenv:docs-linkcheck]
 basepython = python3
 deps = -r{toxinidir}/etc/requirements.txt
-commands = sphinx-build -b linkcheck -d {envtmpdir}/doctrees ./docs/ {toxinidir}/docs/_build/linkcheck
+commands = sphinx-build -q -b linkcheck -d {envtmpdir}/doctrees ./docs/ {toxinidir}/docs/_build/linkcheck
 
 [testenv:spellcheck]
 basepython = python3