Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Added non-functional requirement JIRA

When: Web meetings

...

monthly on Friday at 10:00am (Eastern US)

Zoom Bridge: https://zoom.us/j/731954210

Calendar-Meeting-Invite.ics

Goal: Development and Documentation Go Hand-in-hand

...

For Proposal Please See:

View file
nameDeveloping ONAP API Documentation APR2020.pptx
height150


Non-Functional Requirement for Guilin: 
Jira
serverONAP JIRA
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyREQ-386

JIRA Epic: 

Jira
serverONAP JIRA
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyDOC-608

  1. All components should place externally facing (i.e. interfaces exposed by the ONAP component to either other ONAP components or components external to ONAP) API definitions (e.g. Swagger) in a common path within their Gerrit/Git 
    Suggested Path: <Component>/docs/api/swagger/
    Jira
    serverONAP JIRA
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keyDOC-609
  2. Apply ReDoc to Swagger and place HTML in Readthedocs for the release
    Jira
    serverONAP JIRA
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keyDOC-610
  3. Apply Minimum (Phase 1+) swagger guidelines

    Jira
    serverONAP JIRA
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId425b2b0a-557c-3c0c-b515-579789cceedb
    keyDOC-611

    1. See: Proposed Phase 1+ OpenAPI 2.0 / Swagger Style Guide
    2. Use the common insert for the info section (e.g., license info, contact info, etc): Swagger Insert Sample for Info Section

For Background Please See:

...

  • Style Guide for defining APIs in Swagger / OpenAPI 3.0

  • Use Swagger toolset to develop and publish Swagger / OpenAPI 3.0 API Specs (in JSON or YAML) (e.g., SwaggerHub)

  • Select a tool for generation of API Reference documentation directly from Swagger / OpenAPI files (using Redoc for example which creates a consistent standalone HTML file)

    • For an example of the HTML file generated by Redoc, See: SnackSwag.html

    • For best viewing: Download both the logo.png  file and the SnackSwag.html file to the same directory, then open locally.
  • Create common and uniform Conceptual API Documentation describing each API and provides quick start and usable TIFY(try it for yourself) samples

  • Select and work with a few ONAP projects to pilot the approach for Frankfurt (e.g., External API, SO, etc.)

...

Proposed Documentation Tooling Flow

Image RemovedImage Added

Reference Documentation Generation Tool Candidates

...


ONAP API Analysis

Note: Need to explore placing OpenAPI files (.json or .yaml) into a common directory in each project's Repo.

ONAP Project

API Name

Lines / EP Operations

Style Findings

Notes

Swagger Link

External API

Service Catalog

798 / 3

Easy to apply ONAP Style Guide. Still need examples

Based on TMF

[externalapi/nbi.git] / docs / offeredapis / api_serviceCatalog /

AAI

AAI

66685/ 1383

Very Large. Some examples. Lots of descriptions. Need to update generation functionality to support style.

Generated from OXM

[aai/aai-service.git] / aai-schema / src / main / resources / oxm /

AAI REST API Documentation - Frankfurt

SDC

Distribution & External

4684 / 22

Some missing descriptions. No examples

Lots of modeling work around SDC

[sdc.git] / docs / swagger /

SO

SO Regular

2303 / 53

No descriptions or examples


[so.git] / docs / api / swagger /

SO

SO Monitoring

467 / 6

No descriptions or examples. Small & easy to fix


[so.git] / docs / api / swagger /

SDN-C

Generic Resource

108809 / 1947

HUGE. Some descriptions. No examples

Made the linter choke. Needs modularization

[sdnc/northbound.git] / generic-resource-api / model / src / main / resources /

DCAE

VES Collector

928 / 20

No examples, very few descriptions

Interest from 3GPP

[dcaegen2/platform/inventory-api.git] /

DCAE

Inventory

697 / 9

Lots of descriptions, even in schema! No examples


[dcaegen2/collectors/ves.git] / 

Policy

Policy API

906 / 8

Lots of descriptions! No examples

Nice & modular

[policy/parent.git] / docs / api / swagger /