1515from ads .aqua .extension .utils import validate_function_parameters
1616from ads .aqua .model .entities import ImportModelDetails
1717from ads .aqua .ui import AquaUIApp
18- from ads .config import COMPARTMENT_OCID
18+ from ads .config import COMPARTMENT_OCID , IS_BYOR_ENABLED
1919
2020
2121@dataclass
@@ -82,6 +82,10 @@ def get(self, id=""):
8282 return self .is_bucket_versioned ()
8383 elif paths .startswith ("aqua/containers" ):
8484 return self .list_containers ()
85+ elif paths .startswith ("aqua/capacityreservations/enabled" ):
86+ return self .is_capacity_reservations_enabled ()
87+ elif paths .startswith ("aqua/capacityreservations" ):
88+ return self .list_capacity_reservations ()
8589 else :
8690 raise HTTPError (400 , f"The request { self .request .path } is invalid." )
8791
@@ -103,6 +107,19 @@ def list_log_groups(self, **kwargs):
103107 AquaUIApp ().list_log_groups (compartment_id = compartment_id , ** kwargs )
104108 )
105109
110+ def is_capacity_reservations_enabled (self ):
111+ """Checks if the tenant is whitelisted for BYOR (Bring your own reservation) feature."""
112+ return self .finish ({"status" : str (IS_BYOR_ENABLED ).strip ().lower () == "true" })
113+
114+ def list_capacity_reservations (self , ** kwargs ):
115+ """Lists users compute reservations in a specified compartment."""
116+ compartment_id = self .get_argument ("compartment_id" , default = COMPARTMENT_OCID )
117+ return self .finish (
118+ AquaUIApp ().list_capacity_reservations (
119+ compartment_id = compartment_id , ** kwargs
120+ )
121+ )
122+
106123 def list_logs (self , log_group_id : str , ** kwargs ):
107124 """Lists the specified log group's log objects."""
108125 return self .finish (AquaUIApp ().list_logs (log_group_id = log_group_id , ** kwargs ))
@@ -279,4 +296,5 @@ def post(self, *args, **kwargs):
279296 ("bucket/versioning/?([^/]*)" , AquaUIHandler ),
280297 ("containers/?([^/]*)" , AquaUIHandler ),
281298 ("cli/?([^/]*)" , AquaCLIHandler ),
299+ ("capacityreservations/?([^/]*)" , AquaUIHandler ),
282300]
0 commit comments