diff options
Diffstat (limited to 'appc-provider/appc-provider-model')
-rw-r--r-- | appc-provider/appc-provider-model/src/main/yang/appc-provider-lcm.yang | 404 |
1 files changed, 397 insertions, 7 deletions
diff --git a/appc-provider/appc-provider-model/src/main/yang/appc-provider-lcm.yang b/appc-provider/appc-provider-model/src/main/yang/appc-provider-lcm.yang index 2b8521a61..c060582fa 100644 --- a/appc-provider/appc-provider-model/src/main/yang/appc-provider-lcm.yang +++ b/appc-provider/appc-provider-model/src/main/yang/appc-provider-lcm.yang @@ -73,7 +73,7 @@ module appc-provider-lcm { string) as follows yyyy-MM-ddTHH:mm:ss.SSSSSSSSZ"; type string { length "16..28"; - pattern "[0-9]{4}-[0-9]{1,2}-[0-9]{1,2}T[0-9]{1,2}:[0-9]{1,2}:[0-9]{1,2}.[0-9]{1,6}Z"; + pattern "[0-9]{4}-[0-9]{1,2}-[0-9]{1,2}T[0-9]{1,2}:[0-9]{1,2}:[0-9]{1,2}[.][0-9]{1,6}Z"; } } @@ -97,6 +97,7 @@ module appc-provider-lcm { enum "Terminate"; enum "SoftwareUpload"; enum "HealthCheck"; + enum "LicenseManagement"; enum "LiveUpgrade"; enum "Lock"; enum "Unlock"; @@ -123,8 +124,20 @@ module appc-provider-lcm { enum "Reboot"; enum "AttachVolume"; enum "DetachVolume"; + enum "PreConfigure"; + enum "GetConfig"; enum "DistributeTraffic"; enum "DistributeTrafficCheck"; + enum "PostRebuild"; + enum "PreRebuild"; + enum "PreEvacuate"; + enum "PostEvacuate"; + enum "PreMigrate"; + enum "PostMigrate"; + enum "Provisioning"; + enum "StartTraffic"; + enum "StatusTraffic"; + enum "StopTraffic"; } description "The action to be taken by APP-C, e.g. Restart, Rebuild, Migrate"; } @@ -492,6 +505,10 @@ module appc-provider-lcm { output { uses common-header; uses status; + leaf payload { + type payload; + mandatory false; + } } } @@ -516,6 +533,10 @@ module appc-provider-lcm { output { uses common-header; uses status; + leaf payload { + type payload; + mandatory false; + } } } @@ -566,6 +587,10 @@ module appc-provider-lcm { output { uses common-header; uses status; + leaf payload { + type payload; + mandatory false; + } } } @@ -616,6 +641,10 @@ module appc-provider-lcm { output { uses common-header; uses status; + leaf payload { + type payload; + mandatory false; + } } } @@ -639,6 +668,10 @@ module appc-provider-lcm { output { uses common-header; uses status; + leaf payload { + type payload; + mandatory false; + } } } @@ -797,7 +830,7 @@ module appc-provider-lcm { uses action-identifiers; leaf payload { type payload; - mandatory true; + mandatory false; } } output { @@ -973,9 +1006,8 @@ module appc-provider-lcm { uses status; leaf payload { type payload; - mandatory true; - } - + mandatory false; + } } } @@ -1157,6 +1189,10 @@ module appc-provider-lcm { output { uses common-header; uses status; + leaf payload { + type payload; + mandatory false; + } } } @@ -1180,6 +1216,10 @@ module appc-provider-lcm { output { uses common-header; uses status; + leaf payload { + type payload; + mandatory false; + } } } @@ -1318,6 +1358,60 @@ module appc-provider-lcm { } /********************************************************************************** + * Define the PreConfigure service + **********************************************************************************/ + rpc pre-configure { + description "An operation to retrieve the current config"; + input { + uses common-header; + leaf action { + type action; + mandatory true; + } + uses action-identifiers; + leaf payload { + type payload; + mandatory true; + } + } + output { + uses common-header; + uses status; + leaf payload { + type payload; + mandatory false; + } + } + } + + /********************************************************************************** + * Define the VNF GetConfig service + **********************************************************************************/ + rpc get-config { + description "An operation to retrieve the current running config"; + input { + uses common-header; + leaf action { + type action; + mandatory true; + } + uses action-identifiers; + leaf payload { + type payload; + mandatory true; + } + } + output { + uses common-header; + uses status; + leaf payload { + type payload; + mandatory false; + } + } + } + + /********************************************************************************** * Define the traffic distribution service **********************************************************************************/ rpc distribute-traffic { @@ -1363,8 +1457,304 @@ module appc-provider-lcm { } } + /********************************************************************************** + * Define the PreRebuild service + **********************************************************************************/ + rpc pre-rebuild { + description "An operation to perform prerequisite steps before a rebuild action"; + input { + uses common-header; + leaf action { + type action; + mandatory true; + } + uses action-identifiers; + leaf payload { + type payload; + mandatory true; + } + } + output { + uses common-header; + uses status; + leaf payload { + type payload; + mandatory false; + } + } + } + + /********************************************************************************** + * Define the PostRebuild service + **********************************************************************************/ + rpc post-rebuild { + description "An operation to perform subsequent steps after a rebuild action"; + input { + uses common-header; + leaf action { + type action; + mandatory true; + } + uses action-identifiers; + leaf payload { + type payload; + mandatory true; + } + } + output { + uses common-header; + uses status; + leaf payload { + type payload; + mandatory false; + } + } + } + + /********************************************************************************** + * Define the PreEvacuate service + **********************************************************************************/ + rpc pre-evacuate { + description "An operation to perform prerequisite steps before an evacuate action"; + input { + uses common-header; + leaf action { + type action; + mandatory true; + } + uses action-identifiers; + leaf payload { + type payload; + mandatory false; + } + } + output { + uses common-header; + uses status; + leaf payload { + type payload; + mandatory false; + } + } + } - /********************************************************************************** + /********************************************************************************** + * Define the PostEvacuate service + **********************************************************************************/ + rpc post-evacuate { + description "An operation to perform postevacuate on specified Ansible virtual machine (VM)"; + input { + uses common-header; + leaf action { + type action; + mandatory true; + } + uses action-identifiers; + leaf payload { + type payload; + mandatory false; + } + } + output { + uses common-header; + uses status; + leaf payload { + type payload; + mandatory false; + } + } + } + + /********************************************************************************** + * Define the PreMigrate service + **********************************************************************************/ + rpc pre-migrate { + description "An operation to perform premigrate on specified Ansible virtual machine (VM)"; + input { + uses common-header; + leaf action { + type action; + mandatory true; + } + uses action-identifiers; + leaf payload { + type payload; + mandatory false; + } + } + output { + uses common-header; + uses status; + leaf payload { + type payload; + mandatory false; + } + } + } + + /********************************************************************************** + * Define the PostMigrate service + **********************************************************************************/ + rpc post-migrate { + description "An operation to perform postmigrate on specified Ansible virtual machine (VM)"; + input { + uses common-header; + leaf action { + type action; + mandatory true; + } + uses action-identifiers; + leaf payload { + type payload; + mandatory false; + } + } + output { + uses common-header; + uses status; + leaf payload { + type payload; + mandatory false; + } + } + } + + /********************************************************************************** + * Define the StartTraffic service + **********************************************************************************/ + rpc start-traffic { + description "An operation to start a traffic action on specified Ansible virtual machine (VM)"; + input { + uses common-header; + leaf action { + type action; + mandatory true; + } + uses action-identifiers; + leaf payload { + type payload; + mandatory false; + } + } + output { + uses common-header; + uses status; + leaf payload { + type payload; + mandatory false; + } + } + } + + /********************************************************************************** + * Define the StatusTraffic service + **********************************************************************************/ + rpc status-traffic { + description "An operation to perform status-traffic on specified Ansible virtual machine (VM)"; + input { + uses common-header; + leaf action { + type action; + mandatory true; + } + uses action-identifiers; + leaf payload { + type payload; + mandatory false; + } + } + output { + uses common-header; + uses status; + leaf payload { + type payload; + mandatory false; + } + } + } + + /********************************************************************************** + * Define the StopTraffic service + **********************************************************************************/ + rpc stop-traffic { + description "An operation to stop an in-process traffic action"; + input { + uses common-header; + leaf action { + type action; + mandatory true; + } + uses action-identifiers; + leaf payload { + type payload; + mandatory false; + } + } + output { + uses common-header; + uses status; + leaf payload { + type payload; + mandatory false; + } + } + } + + /********************************************************************************** + * Define the VNF provisioning service + **********************************************************************************/ + rpc provisioning { + description "An vnf operation for provisioning"; + input { + uses common-header; + leaf action { + type action; + mandatory true; + } + uses action-identifiers; + leaf payload { + type payload; + mandatory true; + } + } + output { + uses common-header; + uses status; + leaf payload { + type payload; + mandatory false; + } + } + } + + /********************************************************************************** + * Define the VNF LicenseManagement service + **********************************************************************************/ + rpc license-management { + description "An vnf operation for provisioning"; + input { + uses common-header; + leaf action { + type action; + mandatory true; + } + uses action-identifiers; + leaf payload { + type payload; + mandatory true; + } + } + output { + uses common-header; + uses status; + leaf payload { + type payload; + mandatory false; + } + } + } + + /********************************************************************************** * Additional RPCs added here... - **********************************************************************************/ + **********************************************************************************/ } |