1062cba2dSAnusha Dathatri*** Settings *** 2062cba2dSAnusha Dathatri 3062cba2dSAnusha DathatriDocumentation Resource file for event notification subscription. 4062cba2dSAnusha Dathatri 5062cba2dSAnusha Dathatri*** Keywords *** 6062cba2dSAnusha Dathatri 7062cba2dSAnusha DathatriDelete All Event Subscriptions 8062cba2dSAnusha Dathatri [Documentation] Delete all event subscriptions. 9062cba2dSAnusha Dathatri 10062cba2dSAnusha Dathatri ${subscriptions}= Redfish.Get Attribute /redfish/v1/EventService/Subscriptions Members 11062cba2dSAnusha Dathatri Return From Keyword If ${subscriptions} is None 12062cba2dSAnusha Dathatri FOR ${subscription} IN @{subscriptions} 13062cba2dSAnusha Dathatri Redfish.Delete ${subscription['@odata.id']} 14062cba2dSAnusha Dathatri END 15062cba2dSAnusha Dathatri 16062cba2dSAnusha DathatriGet Event Subscription IDs 17062cba2dSAnusha Dathatri [Documentation] Get event subscription IDs. 18062cba2dSAnusha Dathatri 19062cba2dSAnusha Dathatri ${subscription_ids}= Create List 20062cba2dSAnusha Dathatri ${subscriptions}= Redfish.Get Attribute /redfish/v1/EventService/Subscriptions Members 21062cba2dSAnusha Dathatri Log ${subscriptions} 22062cba2dSAnusha Dathatri FOR ${subscription} IN @{subscriptions} 23062cba2dSAnusha Dathatri Append To List ${subscription_ids} 24062cba2dSAnusha Dathatri ... ${subscription['@odata.id'].split("/redfish/v1/EventService/Subscriptions/")[-1]} 25062cba2dSAnusha Dathatri END 26*409df05dSGeorge Keishing RETURN ${subscription_ids} 27062cba2dSAnusha Dathatri 28d1c5fb1cSAnusha DathatriGet Destination IPs Of Event Subscriptions 29d1c5fb1cSAnusha Dathatri [Documentation] Get all subscribed server IPs as a list from event subscriptions. 30d1c5fb1cSAnusha Dathatri 31d1c5fb1cSAnusha Dathatri ${subscription_ids}= Get Event Subscription IDs 32d1c5fb1cSAnusha Dathatri 33d1c5fb1cSAnusha Dathatri ${server_ips}= Create List 34d1c5fb1cSAnusha Dathatri FOR ${id} IN @{subscription_ids} 35d1c5fb1cSAnusha Dathatri ${destination}= Redfish.Get Attribute /redfish/v1/EventService/Subscriptions/${id} Destination 36d1c5fb1cSAnusha Dathatri # E.g. https://xx.xx.xx.xx:xxxx/redfish/events 37d1c5fb1cSAnusha Dathatri ${dest_ip}= Get Regexp Matches ${destination} .*://(.*):.* 1 38d1c5fb1cSAnusha Dathatri ${server_ips}= Combine Lists ${server_ips} ${dest_ip} 39d1c5fb1cSAnusha Dathatri END 40*409df05dSGeorge Keishing RETURN ${server_ips} 41f854f8baSsrichn28 42f854f8baSsrichn28Delete Event Subscription Of Unpingable Destination IPs 43f854f8baSsrichn28 [Documentation] Delete event subscription with non-pinging destination IPs. 44f854f8baSsrichn28 45f854f8baSsrichn28 ${subscription_ids}= Get Event Subscription IDs 46f854f8baSsrichn28 47f854f8baSsrichn28 FOR ${id} IN @{subscription_ids} 48f854f8baSsrichn28 ${destination}= Redfish.Get Attribute /redfish/v1/EventService/Subscriptions/${id} Destination 49f854f8baSsrichn28 ${dest_ip}= Get Regexp Matches ${destination} .*://(.*):.* 1 50f854f8baSsrichn28 ${status}= Run Keyword And Return Status Ping Host ${dest_ip}[0] 51f854f8baSsrichn28 52f854f8baSsrichn28 IF ${status} == False 53f854f8baSsrichn28 Redfish.Delete /redfish/v1/EventService/Subscriptions/${id} 54f854f8baSsrichn28 END 55f854f8baSsrichn28 END 56