X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=appc-provider%2Fappc-provider-model%2Fsrc%2Fmain%2Fyang%2Fappc-provider-lcm.yang;h=99de6c4d27e6005611ea1f393f604e6b2df4ae85;hb=e4c07d4c7eb3105bc6a20eee00fdca592f0cf59b;hp=2b8521a61529226f1189c8c732ba149d2562d3c4;hpb=2b284f1d97a2c97a92e7d32f47b46fcb50bae06b;p=appc.git 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..99de6c4d2 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 @@ -6,7 +6,7 @@ * ================================================================================ * Copyright (C) 2017 Amdocs * ================================================================================ - * Modifications Copyright (C) 2018-2019 Orange + * Modifications Copyright (C) 2018-2019 Orange Nokia * ============================================================================= * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -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,21 @@ 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"; + enum "ConfigScaleIn"; } description "The action to be taken by APP-C, e.g. Restart, Rebuild, Migrate"; } @@ -492,6 +506,10 @@ module appc-provider-lcm { output { uses common-header; uses status; + leaf payload { + type payload; + mandatory false; + } } } @@ -516,6 +534,10 @@ module appc-provider-lcm { output { uses common-header; uses status; + leaf payload { + type payload; + mandatory false; + } } } @@ -566,6 +588,10 @@ module appc-provider-lcm { output { uses common-header; uses status; + leaf payload { + type payload; + mandatory false; + } } } @@ -616,6 +642,10 @@ module appc-provider-lcm { output { uses common-header; uses status; + leaf payload { + type payload; + mandatory false; + } } } @@ -639,6 +669,10 @@ module appc-provider-lcm { output { uses common-header; uses status; + leaf payload { + type payload; + mandatory false; + } } } @@ -797,7 +831,7 @@ module appc-provider-lcm { uses action-identifiers; leaf payload { type payload; - mandatory true; + mandatory false; } } output { @@ -973,9 +1007,8 @@ module appc-provider-lcm { uses status; leaf payload { type payload; - mandatory true; - } - + mandatory false; + } } } @@ -1157,6 +1190,10 @@ module appc-provider-lcm { output { uses common-header; uses status; + leaf payload { + type payload; + mandatory false; + } } } @@ -1180,6 +1217,10 @@ module appc-provider-lcm { output { uses common-header; uses status; + leaf payload { + type payload; + mandatory false; + } } } @@ -1317,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 **********************************************************************************/ @@ -1363,8 +1458,331 @@ 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; + } + } + } - /********************************************************************************** - * Additional RPCs added here... - **********************************************************************************/ + /********************************************************************************** + * 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; + } + } + } + + /********************************************************************************** + * Define the VNF ConfigScaleIn service + **********************************************************************************/ + rpc config-scale-in { + description "An operation to Modify the configuration or other action to support + a ConfigScaleIn of a VNF."; + 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; + } + } + } + /********************************************************************************** + * Additional RPCs added here... + **********************************************************************************/ }