Skip to content

Commit

Permalink
Server 1.0 + Some Lease 1.0 docs
Browse files Browse the repository at this point in the history
  • Loading branch information
JOUNAIDSoufiane committed Aug 1, 2024
1 parent 5697701 commit 395b510
Show file tree
Hide file tree
Showing 2 changed files with 198 additions and 67 deletions.
44 changes: 44 additions & 0 deletions chi/lease.py
Original file line number Diff line number Diff line change
Expand Up @@ -269,7 +269,19 @@ def add_node_reservation(self,
node_type: str = None,
node_name: str = None,
nodes: List[Node] = None):
"""
Add a node reservation to the lease.
Parameters:
- amount (int): The number of nodes to reserve.
- node_type (str): The type of nodes to reserve.
- node_name (str): The name of the node to reserve.
- nodes (List[Node]): A list of Node objects to reserve.
Raises:
- CHIValueError: If nodes are specified, no other arguments should be included.
"""
if nodes:
if any([amount, node_type, node_name]):
raise CHIValueError("When specifying nodes, no other arguments should be included")
Expand All @@ -283,13 +295,30 @@ def add_node_reservation(self,
node_name=node_name)

def add_fip_reservation(self, amount: int):
"""
Add a reservation for a floating IP address to the list of FIP reservations.
Args:
amount (int): The number of reservations to add.
Returns:
None
"""
add_fip_reservation(reservation_list=self.fip_reservations,
count=amount)

def add_network_reservation(self,
network_name: str,
usage_type: str = None,
stitch_provider: str = None):
"""
Add a network reservation to the list of network reservations.
Args:
network_name (str): The name of the network to be reserved.
usage_type (str, optional): The type of usage for the network reservation. Defaults to None.
stitch_provider (str, optional): The stitch provider for the network reservation. Defaults to None.
"""
add_network_reservation(reservation_list=self.network_reservations,
network_name=network_name,
usage_type=usage_type,
Expand All @@ -300,6 +329,21 @@ def submit(self,
wait_timeout: int = 300,
show: List[str] = ["widget", "text"],
idempotent: bool = False):
"""
Submits the lease for creation.
Args:
wait_for_active (bool, optional): Whether to wait for the lease to become active. Defaults to True.
wait_timeout (int, optional): The maximum time to wait for the lease to become active, in seconds. Defaults to 300.
show (List[str], optional): The types of lease information to display. Defaults to ["widget", "text"].
idempotent (bool, optional): Whether to create the lease only if it doesn't already exist. Defaults to False.
Raises:
ResourceError: If unable to create the lease.
Returns:
None
"""
if idempotent:
existing_lease = self._get_existing_lease()
if existing_lease:
Expand Down
Loading

0 comments on commit 395b510

Please sign in to comment.