From 5b7590935559fe9e286a703dc662a60b47b7ed1a Mon Sep 17 00:00:00 2001 From: Kalpesh Chaniyara Date: Tue, 15 Aug 2017 23:40:34 +0530 Subject: Initial commit for Sequence Generator Added sequence generator for start and stop action with dependency model Removed java check style from json files from license maven plugin JIRA Issues : APPC-33,APPC-106 Issue-Id : APPC-106 Change-Id: I7f12d39b705d77d559790a10b914b8108f5faa5e Signed-off-by: Kalpesh Chaniyara --- .../src/main/yang/sequence-generator.yang | 223 +++++++++++++++++++++ 1 file changed, 223 insertions(+) create mode 100644 appc-sequence-generator/appc-sequence-generator-model/src/main/yang/sequence-generator.yang (limited to 'appc-sequence-generator/appc-sequence-generator-model/src') diff --git a/appc-sequence-generator/appc-sequence-generator-model/src/main/yang/sequence-generator.yang b/appc-sequence-generator/appc-sequence-generator-model/src/main/yang/sequence-generator.yang new file mode 100644 index 000000000..6777dad63 --- /dev/null +++ b/appc-sequence-generator/appc-sequence-generator-model/src/main/yang/sequence-generator.yang @@ -0,0 +1,223 @@ +module sequence-generator { + yang-version 1; + + namespace "org:openecomp:appc:sequencegenerator"; + prefix sequencegenerator; + + description + "Defines sequence generator api interface for App-C services"; + + revision "2017-07-06" { + description + "Initial draft"; + } + + grouping request-info { + container request-info{ + leaf action { + type enumeration { + enum "Start"; + enum "Stop"; + } + } + leaf action-level { + type enumeration { + enum "vm"; + enum "vnfc"; + enum "vnf"; + enum "vf-module"; + } + } + container action-identifier { + leaf vnf-id { + description "identifies the VNF to which this action is to be applied(vnf-id uniquely identifies the service-instance referred to)."; + type string; + } + leaf vnfc-name { + type string; + } + leaf vserver-id { + type string; + } + } + leaf payload { + description "An action-specific value opaque to the APPC handler. + The value can be any valid JSON type (primitive, object, collection of those two). + APPC will pass the value as raw JSON string"; + type string; + } + } + } + + grouping inventory-info { + container inventory-info { + container vnf-info { + leaf vnf-id { + type string; + } + leaf vnf-name { + type string; + } + leaf vnf-type { + type string; + } + list vm { + key "vserver-id"; + leaf vserver-id { + type string; + } + container vnfc { + leaf vnfc-type { + type string; + } + leaf vnfc-name { + type string; + } + } + } + } + } + } + + grouping dependency-info { + container dependency-info { + list vnfcs { + leaf vnfc-type { + type string; + } + leaf mandatory { + type boolean; + } + leaf resilience { + type string; + } + leaf-list parents { + type string; + } + } + } + } + + grouping tunable-parameters { + container tunable-parameters { + leaf strategy { + type enumeration { + enum "FORWARD"; + enum "REVERSE"; + } + } + leaf wait-time { + type uint16; + } + leaf retry-count { + type uint16; + } + } + } + + grouping capabilities { + container capabilities { + leaf-list vnf { + type string; + } + leaf-list vf-module { + type string; + } + leaf-list vm { + type string; + } + leaf-list vnfc { + type string; + } + } + } + + grouping response { + container status { + leaf code { + type uint16; + } + leaf message { + type string; + } + } + list transactions{ + key "transaction-id"; + leaf transaction-id{ + type uint16; + } + leaf action{ + type string; + } + leaf action-level{ + type string; + } + container action-identifier{ + leaf vserver-id { + type string; + } + leaf vnfc-name { + type string; + } + leaf vnf-id { + type string; + } + } + leaf payload{ + type string; + } + leaf precheck-operator{ + type string; + } + list precheck-options{ + leaf pre-transaction-id{ + type uint16; + } + leaf param-name{ + type string; + } + leaf param-value{ + type string; + } + leaf rule{ + type string; + } + } + list responses{ + leaf response-message{ + type string; + } + container response-action{ + leaf wait{ + type uint16; + } + leaf retry{ + type uint16; + } + leaf continue{ + type boolean; + } + leaf stop{ + type boolean; + } + leaf ignore{ + type boolean; + } + } + } + } + } + + rpc generate-sequence { + input{ + uses request-info; + uses inventory-info; + uses dependency-info; + uses tunable-parameters; + uses capabilities; + } + output{ + uses response; + } + } + } \ No newline at end of file -- cgit 1.2.3-korg