blob: f2fccb65c9d826bc6a03f0c321a4fdbc90a69bb1 [file] [log] [blame]
bravof922c4172020-11-24 21:21:43 -03001# -*- coding: utf-8 -*-
2
3# Copyright 2020 Whitestack, LLC
4# *************************************************************
5#
6# This file is part of OSM Monitoring module
7# All Rights Reserved to Whitestack, LLC
8#
9# Licensed under the Apache License, Version 2.0 (the "License"); you may
10# not use this file except in compliance with the License. You may obtain
11# a copy of the License at
12#
13# http://www.apache.org/licenses/LICENSE-2.0
14#
15# Unless required by applicable law or agreed to in writing, software
16# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
17# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
18# License for the specific language governing permissions and limitations
19# under the License.
20#
21# For those usages not covered by the Apache License, Version 2.0 please
22# contact: fbravo@whitestack.com
23##
24
David Garciab4ebcd02021-10-28 02:00:43 +020025from osm_lcm.data_utils import list_utils
aktas5f75f102021-03-15 11:26:10 +030026from osm_lcm.lcm_utils import get_iterable
27
bravof922c4172020-11-24 21:21:43 -030028
29def get_vlds(nsr):
30 return nsr.get("vld", ())
aktas5f75f102021-03-15 11:26:10 +030031
32
33def get_deployed_kdu(nsr_deployed, kdu_name, member_vnf_index):
34 deployed_kdu = None
35 index = None
36 for index, deployed_kdu in enumerate(get_iterable(nsr_deployed, "K8s")):
37 if (
38 kdu_name == deployed_kdu["kdu-name"]
39 and deployed_kdu["member-vnf-index"] == member_vnf_index
40 ):
41 break
42 return deployed_kdu, index
David Garciab4ebcd02021-10-28 02:00:43 +020043
44
45def get_nsd(nsr):
46 return nsr.get("nsd", {})
47
48
49def get_deployed_vca_list(nsr):
50 return nsr.get("_admin", ()).get("deployed", ()).get("VCA", [])
51
52
53def get_deployed_vca(nsr, filter):
54 return list_utils.find_in_list(
55 get_deployed_vca_list(nsr),
56 lambda vca: all(vca[key] == value for key, value in filter.items()),
57 )