| sritharan | 2f577b1 | 2022-04-01 05:10:08 +0000 | [diff] [blame] | 1 | /* |
| sritharan | 874bafd | 2022-06-17 09:58:33 +0000 | [diff] [blame] | 2 | Copyright ETSI Contributors and Others |
| sritharan | 2f577b1 | 2022-04-01 05:10:08 +0000 | [diff] [blame] | 3 | |
| 4 | Licensed under the Apache License, Version 2.0 (the "License"); |
| 5 | you may not use this file except in compliance with the License. |
| 6 | You may obtain a copy of the License at |
| 7 | |
| 8 | http://www.apache.org/licenses/LICENSE-2.0 |
| 9 | |
| 10 | Unless required by applicable law or agreed to in writing, software |
| 11 | distributed under the License is distributed on an "AS IS" BASIS, |
| 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or |
| 13 | implied. |
| 14 | See the License for the specific language governing permissions and |
| 15 | limitations under the License. |
| 16 | */ |
| 17 | |
| 18 | module healing { |
| 19 | yang-version 1.1; |
| 20 | namespace "urn:etsi:osm:yang:augments:healing"; |
| 21 | prefix "healing"; |
| 22 | |
| 23 | import etsi-nfv-vnfd { |
| 24 | prefix vnfd; |
| 25 | } |
| 26 | |
| 27 | typedef recovery-actions { |
| 28 | type enumeration { |
| 29 | |
| 30 | enum REDEPLOY_ONLY { |
| 31 | value 1; |
| 32 | } |
| 33 | |
| 34 | enum REBOOT { |
| 35 | value 2; |
| 36 | } |
| 37 | |
| 38 | enum REBOOT_THEN_REDEPLOY { |
| 39 | value 3; |
| 40 | } |
| 41 | } |
| 42 | } |
| 43 | |
| 44 | |
| 45 | typedef recovery-type { |
| 46 | type enumeration { |
| 47 | |
| 48 | enum manual { |
| 49 | value 1; |
| 50 | } |
| 51 | |
| 52 | enum automatic { |
| 53 | value 2; |
| 54 | } |
| 55 | } |
| 56 | } |
| 57 | |
| 58 | grouping extended-healing { |
| 59 | list healing-aspect { |
| 60 | key "id"; |
| 61 | |
| 62 | description |
| 63 | "The healing aspects supported by this DF of the VNF. |
| 64 | healingAspect shall be present if the VNF supports |
| 65 | healing."; |
| 66 | |
| 67 | leaf id { |
| 68 | type string; |
| 69 | description |
| 70 | "Unique identifier of this aspect in the VNFD."; |
| 71 | } |
| 72 | |
| 73 | list healing-policy { |
| 74 | |
| 75 | key "vdu-id"; |
| 76 | |
| 77 | leaf vdu-id { |
| 78 | description |
| 79 | "Identifier of vdu"; |
| 80 | type string; |
| 81 | } |
| 82 | |
| 83 | leaf event-name { |
| 84 | description |
| 85 | "Describing the event name for healing"; |
| 86 | type string; |
| 87 | } |
| 88 | |
| 89 | leaf recovery-type { |
| 90 | description |
| 91 | "Type of healing recovery"; |
| 92 | type recovery-type; |
| 93 | } |
| 94 | |
| 95 | leaf action-on-recovery { |
| 96 | description |
| 97 | "Recovery actions for healing"; |
| 98 | type recovery-actions; |
| 99 | } |
| 100 | |
| 101 | leaf cooldown-time { |
| 102 | description |
| 103 | "The duration after a healing action has been |
| 104 | triggered, for which there will be no further optional"; |
| 105 | type uint32; |
| 106 | mandatory true; |
| 107 | } |
| 108 | |
| 109 | leaf day1 { |
| 110 | description |
| 111 | "Specifies if the day1 operations can be applied"; |
| 112 | type boolean; |
| 113 | default false; |
| 114 | } |
| 115 | } |
| 116 | } |
| 117 | |
| 118 | } |
| 119 | augment "/vnfd:vnfd/vnfd:df" { |
| 120 | uses extended-healing; |
| 121 | } |
| 122 | |
| 123 | } |