Uploaded image for project: 'Configuration Persistence Service'
  1. Configuration Persistence Service
  2. CPS-483

Retrieve list of Yang Modules for an cm-Handle (DMI-Plugin impl)

XMLWordPrintable

    • Icon: Story Story
    • Resolution: Done
    • Icon: Medium Medium
    • Istanbul Release
    • None
    • DMI

      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

      1. EndPoint available in DMI_PLugin (defined Open API 3)
        1. Success 200 code and json from node
        2. Agree error scenarios (cannot connect, timeout etc.)
      2. SDN-C connectivity should be configurable using application.yml and env. variables
      3. 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"
              ]
            }
      
              ]
        }
      }
      
      
      

            tragait tragait
            ToineSiebelink Toine Siebelink
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: