-
Story
-
Resolution: Done
-
Medium
-
None
For overview of usecase see https://wiki.onap.org/display/DW/CPS-390+Spike%3A+Define+and+Agree+DMI+Plugin+REST+Interface?preview=/103420488/103421835/DMI%20NCMP%20Model%20Sync.pptx
Implement Rest Endpoint on DMI PLugin as defined under #3 here: https://wiki.onap.org/display/DW/CPS-390+Spike%3A+Define+and+Agree+DMI+Plugin+REST+Interface#CPS390Spike:DefineandAgreeDMIPluginRESTInterface-DMIInventory,Model&DataSyncAPI
Output format follows output from RESTConf ODL interface and should be forward back to NCMP as is.
See https://jira.onap.org/browse/CPS-394 for details on how to use ODL Interface for this
The request will be made over HHTP to SDN-C controller see also https://jira.onap.org/browse/INT-1904
For code example on REST client follow this recent commit : https://gerrit.onap.org/r/c/cps/ncmp-dmi-plugin/+/122455
How best to connect to SDNC (secure or not, service name etc.) need some more investigation. Possible check with other application like Policy FWK
A/C
- EndPoint available in DMI_PLugin (defined Open API 3)
- Success 200 code and json from node
- Agree error scenarios (cannot connect, timeout etc.)
- SDN-C connectivity should be configurable using application.yml and env. variables
- Demo with HoneyComb Simulator
Expected output
{ "schemas": { "schema": [ { "identifier": "nc-notifications", "version": "2008-07-14", "format": "ietf-netconf-monitoring:yang", "namespace": "urn:ietf:params:xml:ns:netmod:notification", "location": [ "NETCONF" ] }, { "identifier": "ietf-tls-server", "version": "2016-11-02", "format": "ietf-netconf-monitoring:yang", "namespace": "urn:ietf:params:xml:ns:yang:ietf-tls-server", "location": [ "NETCONF" ] }, { "identifier": "ietf-ssh-server", "version": "2016-11-02", "format": "ietf-netconf-monitoring:yin", "namespace": "urn:ietf:params:xml:ns:yang:ietf-ssh-server", "location": [ "NETCONF" ] }, { "identifier": "turing-machine", "version": "2013-12-27", "format": "ietf-netconf-monitoring:yang", "namespace": "http://example.net/turing-machine", "location": [ "NETCONF" ] }, { "identifier": "ietf-yang-metadata", "version": "2016-08-05", "format": "ietf-netconf-monitoring:yin", "namespace": "urn:ietf:params:xml:ns:yang:ietf-yang-metadata", "location": [ "NETCONF" ] }, { "identifier": "iana-crypt-hash", "version": "2014-08-06", "format": "ietf-netconf-monitoring:yin", "namespace": "urn:ietf:params:xml:ns:yang:iana-crypt-hash", "location": [ "NETCONF" ] }, { "identifier": "ietf-datastores", "version": "2017-08-17", "format": "ietf-netconf-monitoring:yang", "namespace": "urn:ietf:params:xml:ns:yang:ietf-datastores", "location": [ "NETCONF" ] }, { "identifier": "ietf-keystore", "version": "2016-10-31", "format": "ietf-netconf-monitoring:yin", "namespace": "urn:ietf:params:xml:ns:yang:ietf-keystore", "location": [ "NETCONF" ] }, { "identifier": "ietf-x509-cert-to-name", "version": "2014-12-10", "format": "ietf-netconf-monitoring:yang", "namespace": "urn:ietf:params:xml:ns:yang:ietf-x509-cert-to-name", "location": [ "NETCONF" ] }, { "identifier": "ietf-netconf-with-defaults", "version": "2011-06-01", "format": "ietf-netconf-monitoring:yang", "namespace": "urn:ietf:params:xml:ns:yang:ietf-netconf-with-defaults", "location": [ "NETCONF" ] }, { "identifier": "ietf-netconf", "version": "2011-06-01", "format": "ietf-netconf-monitoring:yang", "namespace": "urn:ietf:params:xml:ns:netconf:base:1.0", "location": [ "NETCONF" ] }, { "identifier": "ietf-yang-metadata", "version": "2016-08-05", "format": "ietf-netconf-monitoring:yang", "namespace": "urn:ietf:params:xml:ns:yang:ietf-yang-metadata", "location": [ "NETCONF" ] }, { "identifier": "ietf-yang-library", "version": "2019-01-04", "format": "ietf-netconf-monitoring:yin", "namespace": "urn:ietf:params:xml:ns:yang:ietf-yang-library", "location": [ "NETCONF" ] }, { "identifier": "ietf-netconf-acm", "version": "2018-02-14", "format": "ietf-netconf-monitoring:yang", "namespace": "urn:ietf:params:xml:ns:yang:ietf-netconf-acm", "location": [ "NETCONF" ] }, { "identifier": "ietf-keystore", "version": "2016-10-31", "format": "ietf-netconf-monitoring:yang", "namespace": "urn:ietf:params:xml:ns:yang:ietf-keystore", "location": [ "NETCONF" ] }, { "identifier": "ietf-netconf-with-defaults", "version": "2011-06-01", "format": "ietf-netconf-monitoring:yin", "namespace": "urn:ietf:params:xml:ns:yang:ietf-netconf-with-defaults", "location": [ "NETCONF" ] }, { "identifier": "mynetconf", "version": "2019-03-01", "format": "ietf-netconf-monitoring:yang", "namespace": "urn:mynetconf:test", "location": [ "NETCONF" ] } ] } }