X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=rwlaunchpad%2Fplugins%2Fyang%2Frw-pkg-mgmt.yang;h=b863caf48a5d8df9cee4bddd818d6cc8116ae4e7;hb=520d12ba0c67a1f62e975cf3289999a301474592;hp=8370c1b96f47c87f4f760de5aa5a3278bb637988;hpb=07b439824b5eac4dc760ce56b52fbdcf5539db4c;p=osm%2FSO.git diff --git a/rwlaunchpad/plugins/yang/rw-pkg-mgmt.yang b/rwlaunchpad/plugins/yang/rw-pkg-mgmt.yang index 8370c1b9..b863caf4 100644 --- a/rwlaunchpad/plugins/yang/rw-pkg-mgmt.yang +++ b/rwlaunchpad/plugins/yang/rw-pkg-mgmt.yang @@ -53,6 +53,13 @@ module rw-pkg-mgmt prefix "manotypes"; } + import rw-vnfd { + prefix "rwvnfd"; + } + import rw-nsd { + prefix "rwnsd"; + } + revision 2016-06-01 { description "Initial revision."; @@ -69,6 +76,37 @@ module rw-pkg-mgmt } } + typedef package-file-type { + type enumeration { + enum ICONS; + enum CHARMS; + enum SCRIPTS; + enum IMAGES; + enum CLOUD_INIT; + enum README; + } + } + + typedef vnfd-file-type { + type enumeration { + enum ICONS; + enum CHARMS; + enum SCRIPTS; + enum IMAGES; + enum CLOUD_INIT; + enum README; + } + } + + typedef nsd-file-type { + type enumeration { + enum VNF_CONFIG; + enum NS_CONFIG; + enum ICONS; + enum SCRIPTS; + } + } + typedef export-schema { type enumeration { enum RIFT; @@ -175,6 +213,14 @@ module rw-pkg-mgmt } } + grouping copy-task-status { + leaf status { + description "The status of the copy task"; + type task-status; + default QUEUED; + } + } + container download-jobs { rwpb:msg-new DownloadJobs; description "Download jobs"; @@ -199,6 +245,24 @@ module rw-pkg-mgmt } } + container copy-jobs { + rwpb:msg-new CopyJobs; + description "Copy jobs"; + config false; + + list job { + rwpb:msg-new CopyJob; + key "transaction-id"; + + leaf transaction-id { + description "Unique UUID"; + type string; + } + + uses copy-task-status; + } + } + rpc get-package-endpoint { description "Retrieves the endpoint for the descriptor"; @@ -214,6 +278,28 @@ module rw-pkg-mgmt } } + rpc package-copy { + description "Copies the package specified in input and returns the copied package id"; + + input { + uses package-identifer; + + leaf package-name { + description "Name of destination package"; + type string; + } + } + + output { + leaf transaction-id { + description "Valid ID to track the status of the task"; + type string; + } + + uses package-identifer; + } + } + rpc get-package-schema { description "Retrieves the schema for the package type"; @@ -309,6 +395,23 @@ module rw-pkg-mgmt input { uses package-file-identifer; uses external-url-data; + + choice catalog-type { + mandatory true; + case VNFD { + leaf vnfd-file-type { + description "Type of vnfd file being added to the package"; + type vnfd-file-type; + } + } + case NSD { + leaf nsd-file-type { + description "Type of nsd file being added to the package"; + type nsd-file-type; + } + } + } + } output { @@ -324,6 +427,21 @@ module rw-pkg-mgmt input { uses package-file-identifer; + choice catalog-type { + case VNFD { + leaf vnfd-file-type { + description "Type of file being removed from the vnfd package"; + type vnfd-file-type; + } + } + case NSD { + leaf nsd-file-type { + description "Type of file being removed from the nsd package"; + type nsd-file-type; + } + } + } + } output { @@ -340,4 +458,4 @@ module rw-pkg-mgmt } } -} \ No newline at end of file +}